.


:




:

































 

 

 

 





void STUD::Input_txt(FILE *ft) { char s[80]; Zap z;

if(kol)delete []Mas; kol=0;

// :

While(fgets(s,80,ft)){// .

z=Sozd_ZAP(s); //

if(z.Bal[0]>0){ kol++; // -

// :

if(kol==1)Mas=(Zap*)malloc(sizeof(Zap));

else Mas=(Zap*)realloc(Mas,kol*sizeof(Zap));

z.SRED=0; Mas[kol-1]=z; //

} }

cout<<"\n Kol-vo zapisei="<<kol;

cout<<"\n Press any key...";getch(); }

Zap STUD::Sozd_ZAP(char* s){

STRING st(s); // STRING ( . )

Zap z; z.Bal[0]=-1; //

char *sl=0; int k=0;

// :

while(sl=st.Slovo(k+1)){ k++; //

switch(k){// :

case 2: strcpy(z.Fam,sl); break;

case 3:case 4:case 5:

z.Bal[k-3]=atoi(sl); break;

}

delete []sl;}

return z; }

void STUD::Input_con(int n){ Zap z;

if(n>kol){ if(kol) delete []Mas; kol=n; Mas=new Zap[n]; }

for(int i=0;i<n;i++){

printf("\n %d). Input FAM: ",i+1); cin>>z.Fam;

for(int j=0;j<3;j++){

printf(" Input BAL %d: ",j+1); cin>>z.Bal[j];

}

z.SRED=0; Mas[i]=z; } }

void STUD::Input_RND(int n){ Zap z; int i,j;

char st[]="QWERTYUIOPASDFGHJKLZXCVBNM";

int k,L=strlen(st);

if(n>kol){ if(kol) delete []Mas; kol=n; Mas=new Zap[n]; }

randomize();

for(i=0;i<n;i++){ k=random(7);

for(j=0;j<2+k;j++) z.Fam[j]=st[random(L)];

z.Fam[j]='\0';

for(j=0;j<3;j++)z.Bal[j]=1+random(5);

z.SRED=0; Mas[i]=z; } }

)

void STUD::Action(){ int i,j;

//--------------------------------

for(i=0;i<kol;i++){ Mas[i].SRED=0;

for(j=0;j<3;j++){ Mas[i].SRED+=Mas[i].Bal[j];

}

Mas[i].SRED/=3; }}

void STUD::Sort_Pole(int p) { int i,j,f,c; Zap z;

cout<<"\n Increasing (A-Z)? (1-Yes, 0-No): "; cin>>c;

for(i=0;i<kol;i++)for(j=i+1;j<kol;j++){ f=0;

switch(p){

case 1: if(strcmp(Mas[i].Fam,Mas[j].Fam)<0)f=1;break;

case 2: case 3: case 4:

if(Mas[i].Bal[p-2]<Mas[j].Bal[p-2])f=1;break;

case 5:if(Mas[i].SRED<Mas[j].SRED)f=1;

}

if(c)f=!f;

if(f){z=Mas[i];Mas[i]=Mas[j];Mas[j]=z;}

} }

void STUD::Print_Sort(){ int i,p;

do{ Print_table(stdout);

cout<<"\n Input nomer polya (1 - 5) for sorting (OR 0 - Exit): ";

cin>>p; if(p>0&&p<6)Sort_Pole(p);

}while(p); }

.

void STUD::Print_SR(){ int i,j; float SR[4]={0,0,0,0};

for(i=0;i<kol;i++){

for(j=0;j<3;j++)SR[j]+=Mas[i].Bal[j];

SR[3]+=Mas[i].SRED;

}

if(kol)for(j=0;j<4;j++)SR[j]/=kol;

printf("\n SREDNIE: ");

for(j=0;j<4;j++)printf(" %6.2f ",SR[j]);

printf("\n -------------------------------------------------");}

void STUD::Print_table(FILE* ft) {int i,j,k=0; clrscr();

fprintf(ft,"\n -------------------------------------------------");

fprintf(ft,"\n N Fam Bal1 Bal2 Bal3 SRED ");

fprintf(ft,"\n -------------------------------------------------");

for(i=0;i<kol;i++){ fprintf(ft,"\n %2d). %10s ",i+1,Mas[i].Fam);

for(j=0;j<3;j++)fprintf(ft," %5d ",Mas[i].Bal[j]);

if(Mas[i].SRED>0)fprintf(ft," %8.2f",Mas[i].SRED);

k++;

if(ft==stdout&&k==20&&i!=kol-1){cout<<"\n Press any key..."; getch();

k=0; clrscr();

fprintf(ft,"\n -------------------------------------------------");

fprintf(ft,"\n N Fam Bal1 Bal2 Bal3 SRED ");

fprintf(ft,"\n -------------------------------------------------");

} }

fprintf(ft,"\n -------------------------------------------------");

if(ft==stdout)Print_SR();

else {cout<<"\n File *.txt is ready! ";

cout<<"\n Press any key..."; getch(); } }

int STUD::Save(){ FILE* ft; int L; char NF[15];

cout<<"\n Save in File: 1 - txt, 2 - bin, 0 - Exit: ";cin>>L;

if(L>0){cout<<"\n Input File Name: ";cin>>NF;}

switch(L){

case 1:ft=fopen(NF,"wt"); Print_table(ft);fclose(ft);break;

case 2:ft=fopen(NF,"wb"); Write_bin(ft); fclose(ft);

}

return L; }

void STUD::Write_bin(FILE* f){ int i;

for(i=0;i<kol;i++)fwrite(Mas+i,sizeof(Zap),1,f);

cout<<"\n File *.bin is ready! "; getch();

}

)

void STUD::Punkt_B(PRED& A){ int i,k,k2,k5; float x;

for(i=0;i<A.N;i++){ k2=0; k5=0; x=0;

for(k=0;k<kol;k++){ x+=Mas[k].Bal[i];

if(Mas[k].Bal[i]==5)k5++;if(Mas[k].Bal[i]<=2)k2++;

}

if(kol){ A.P[i].PR[0]=x/kol;

A.P[i].PR[1]=100.*k5/kol;

A.P[i].PR[2]=100.*k2/kol; }

} }

//======== =====

void main() { clrscr();int k=0;

//==============================





:


: 2017-03-18; !; : 163 |


:

:

- , , .
==> ...

1771 - | 1557 -


© 2015-2024 lektsii.org - -

: 0.013 .