
#include<stdio.h>
#include<stdlib.h>

void initArrayOne ( int lim 
		, float *arr
		) {

	for ( int idx = 0 ; idx < lim ; idx ++ ) {

		arr [ idx ] = 1 ;

	}
}

void printArr ( int lim
		, float *arr
		) {

	for ( int idx = 0 ; idx < lim ; idx ++ ) {

		printf ( " arr [ %d ] = %f \n " 
				, idx
				, arr [ idx ]
				) ; 
	}
}

void addArr ( int lim
		, float *xaxis
		, float *yaxis
		, float *sumxy
	    ){

	for ( int idx = 0 ; idx < lim ; idx ++ ) {

		sumxy [ idx ]  = xaxis [ idx ] + yaxis [ idx ] ;

	}
}

void main () {

	printf ( "prog02\n" ) ;

	// int limit is e5 , e6 - seg fault
	// an int can only hold upto size 1e9 - 1e10 - buffer overflow
	int lim = 1e9 ; 

	float *xaxis 
	      , *yaxis 
	      , *sumxy 
	      ;

	xaxis = malloc ( lim * sizeof ( float ) ) ;
	yaxis = malloc ( lim * sizeof ( float ) ) ;
	sumxy = malloc ( lim * sizeof ( float ) ) ;
	
	initArrayOne ( lim , xaxis ) ;
	initArrayOne ( lim , yaxis ) ;
	initArrayOne ( lim , sumxy ) ;

	addArr ( lim , xaxis , yaxis , sumxy ) ;
	//printArr ( lim , xaxis ) ;

}



