Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- KREIRAJTE DATOTEKU temperature.txt i ispunite je podacima ovog formata:
- 15 6 8 13 24 2 1 5 1 6 2 6 2 56 2 1 3 5 2 -2,Sarajevo
- 63 75 92 18 29 47 -2 4 -12,Banja Luka
- 59 2 12 -21 5 24 125 53,Mostar
- */
- #include <stdio.h>
- struct Mjerenje {
- char grad[20];
- double temp[100];
- int br_temp;
- };
- int je_cifra(char znak)
- {
- if(znak>='0'&& znak<='9') return 1;
- return 0;
- }
- int ucitaj(struct Mjerenje* mjerenja,int kap)
- {
- int vel=0,j;
- char znak;
- FILE* ulaz;
- ulaz=fopen("temperature.txt","r");
- if(ulaz==NULL) return 0;
- while(vel<kap) {
- //unos temepratura
- j=0;
- while(fscanf(ulaz,"%lf",&mjerenja[vel].temp[j])==1) {
- j++;
- }
- mjerenja[vel].br_temp=j;
- //unos imena grada
- j=0;
- //zarez
- znak=fgetc(ulaz);
- znak=fgetc(ulaz);
- while(znak!='\n'&& znak!=EOF) {
- mjerenja[vel].grad[j]=znak;
- j++;
- znak=fgetc(ulaz);
- }
- mjerenja[vel].grad[j]='\0';
- vel++;
- if(znak==EOF) break;
- }
- fclose(ulaz);
- return vel;
- }
- void upisi(struct Mjerenje* mjerenja, int vel)
- {
- FILE* izlaz;
- int i,j;
- double suma=0, prosjek;
- izlaz=fopen("prosjeci.txt", "w");
- if(izlaz==NULL) {
- printf("Greska pri otvaranju!\n");
- return;
- }
- for(i=0; i<vel; i++) {
- suma=0;
- for(j=0; j<mjerenja[i].br_temp; j++) {
- suma+=mjerenja[i].temp[j];
- }
- prosjek=suma/j;
- fprintf(izlaz, "%.2lf°C - %s\n", prosjek, mjerenja[i].grad);
- }
- fclose(izlaz);
- }
- int main()
- {
- struct Mjerenje mjerenja[50];
- int vel = ucitaj(mjerenja,50),i,j;
- for(i=0; i<vel; i++) {
- printf("_%s_ ", mjerenja[i].grad);
- for(j=0; j<mjerenja[i].br_temp; j++) {
- printf("%g ",mjerenja[i].temp[j]);
- }
- printf("\n");
- }
- upisi(mjerenja,vel);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement