#define MAX_VALUE SIZE_TAB*SIZE_TAB
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <iostream>
using namespace std;
double *finish_Result;
int main_Tab[SIZE_TAB][SIZE_TAB];
int first_Values[MAX_VALUE];
bool is_First(int value)
{
int i,sum;
sum=0;
for(i=1;i<value+1;i++)
if(value%i==0)
++sum;
if(sum==2)
return true;
else
return false;
}
void init_Arrays()
{
int i,j,k;
i=0,j=2;
do
{
if(is_First(j))
{
first_Values[i]=j;
++i;
}
++j;
}while(i<MAX_VALUE);
for(i=0;i<SIZE_TAB;i++)
{
for(j=0;j<SIZE_TAB;j++)
{
k=rand()%MAX_VALUE;
main_Tab[i][j]=first_Values[k];
}
}
}
int min_Element(int *tab, int size)
{
int min_E,i;
min_E=tab[0];
for(i=1;i<size;i++)
if(min_E>tab[i])
min_E=tab[i];
return min_E;
}
int max_Element(int *tab, int size)
{
int max_E,i;
max_E=tab[0];
for(i=1;i<size;i++)
if(max_E<tab[i])
max_E=tab[i];
return max_E;
}
int sum_Array(int *tab, int size)
{
int i,sum;
sum=0;
for(i=0;i<size;i++)
sum+=tab[i];
return sum;
}
double aver_Array(int *tab, int size)
{
double aver;
aver=(1.0*sum_Array(tab,size))/(1.0*size);
return aver;
}
double func_A(int a, int b, int c, double d)
{
double func;
func=(c*1.0)-((1.0*a)+(1.0*b))*d;
return func;
}
struct info_Array
{
int a_Min;
int a_Max;
int a_Sum;
double a_Aver;
};
int main()
{
int i,j;
FILE *base_File,*result_File,*read_Date;
srand(time(NULL));
finish_Result=new double[SIZE_TAB];
struct info_Array *i_Array=new struct info_Array[SIZE_TAB];
struct info_Array *j_Array=new struct info_Array[SIZE_TAB];
init_Arrays();
for(i=0;i<SIZE_TAB;i++)
{
i_Array[i].a_Min=min_Element(main_Tab[i],SIZE_TAB);
i_Array[i].a_Max=max_Element(main_Tab[i],SIZE_TAB);
i_Array[i].a_Sum=sum_Array(main_Tab[i],SIZE_TAB);
i_Array[i].a_Aver=aver_Array(main_Tab[i],SIZE_TAB);
}
base_File=fopen("base.txt","w");
for(i=0;i<SIZE_TAB;i++)
{
for(j=0;j<SIZE_TAB;j++)
{
fprintf(base_File,"%d ",main_Tab[i][j]);
}
fprintf(base_File,"\n");
}
fclose(base_File);
result_File=fopen("result.txt","w");
for(i=0;i<SIZE_TAB;i++)
{
fprintf(result_File,"%d %d %d %f ",i_Array[i].a_Min,i_Array[i].a_Max,
i_Array[i].a_Sum,i_Array[i].a_Aver);
fprintf(result_File,"\n");
}
fclose(result_File);
read_Date=fopen("result.txt","r");
for(i=0;i<SIZE_TAB;i++)
{
fscanf(read_Date,"%d %d %d %f ",&j_Array[i].a_Min,&j_Array[i].a_Max,
&j_Array[i].a_Sum,&j_Array[i].a_Aver);
}
fclose(read_Date);
for(i=0;i<SIZE_TAB;i++)
{
finish_Result[i]=func_A(j_Array[i].a_Min,j_Array[i].a_Max,j_Array[i].a_Sum,
j_Array[i].a_Aver);
}
for(i=0;i<SIZE_TAB;i++)
{
cout<<i+1<<") "<<finish_Result[i]<<endl;
}
delete i_Array;
delete j_Array;
delete finish_Result;
getch();
return 0;
}
Brak komentarzy:
Prześlij komentarz