/* Inspektoriaus uzdavinys */ /*----------------------------*/ /*Sauliaus Nevo pakoreguotas Vilijos Pranckevicienes namu darbas*/ //#include #include #include #include #include /*------------------------------------*/ #define MaxDuom 10 #define ResultsFile "rezult.h" /*------------------------------------*/ struct ADuom { char name[21]; float p; /*tikimybe susekti plote i*/ float q; /*tikimybe nusauti briedi plote i*/ float g; /*briedzio svoris*/ } miskas[MaxDuom]; float v[10][10]; float u[10][10]; int m; /*--- Duomenu skaitymas ------------------------------*/ int ReadMiskoData(int * m) { FILE * stream; int i=0; float xxx; char fn[80]="miskas.dat"; printf("\n\nDuomenu failo vardas:"); scanf("%s",&fn); stream = fopen(fn, "r"); if (stream==NULL) { printf("Duomenu failas %s neatidarytas",fn); return 1; } fgets(fn,80,stream); while (!feof(stream)) { fscanf(stream,"%20s ", miskas[i].name); fscanf(stream,"\t%f",&xxx); miskas[i].p=xxx; fscanf(stream,"\t%f",&xxx); miskas[i].g=xxx; fscanf(stream,"\t%f",&xxx); miskas[i].q=xxx; fscanf(stream,"\n"); i++; } *m=i; fclose(stream); return 0; } /*--- Duomenu spausdinimas ekrane -----------------------------*/ int PrintMiskoData(FILE * stream, int m) { int i; if (stream==NULL) { printf("Duomenu failas neatidarytas"); return 1; } fprintf(stream,"\n%i misku duomenys:",m); fprintf(stream,"\nmiskai \tp \tg \tq"); for (i=0;i=0) fprintf(stream,"+%f y%d -1 U1 +1 U2 = 0 ;\n",u[i-1][i-1],i); else fprintf(stream,"%f y%d -1 U1 +1 U2 = 0 ;\n",u[i-1][i-1],i); } for(j=1;j<=m;j++) { for(i=1;i<=m;i++) { if(v[i-1][j-1]>=0){ fprintf(stream,"+%f x%d ",v[i-1][j-1],i);} else {fprintf(stream,"%f x%d ",v[i-1][j-1],i);} } fprintf(stream,"-1 V1 +1 V2 = 0 ;\n"); } fprintf(stream,"x1 "); for(i=2;i<=m;i++) { fprintf(stream,"+ x%d ",i);} fprintf(stream,"= 1;\n"); fprintf(stream,"y1 "); for(i=2;i<=m;i++) { fprintf(stream,"+ y%d ",i);} fprintf(stream,"= 1;\n"); return 0; } /*------PAGRINDINE PROGRAMA-------------------------*/ int main(void) { if (ReadMiskoData(&m)) exit(1); PrintMiskoData(stdout, m); if(SkaicU_V(stdout,m)) exit(1); printf("\n\nRezultatu failas %s suformuotas.\nPabaiga!", ResultsFile); }