Thursday, March 14, 2013

#3 Pisanje niza ocena u paran i neparan fajl


#include<stdio.h>
#include<conio.h>

 const int max=3;
 int ocene[max];

 FILE *fParan,*fNeparan;
 void ocene_unos(int koliko);
 void ocene_provera(int koliko);
 void ocene_ispis(int koliko);

void file_upis(FILE *file,int ocena);
void file_ispis(FILE *file);
   int ocena=0;
main(){
     
   printf("Molim vas unesite %d ocena u niz\n",max);
   ocene_unos(max);
   printf("ocene ispis iz niza\n");
   ocene_ispis(max);
   // otvarnaje fajlova
     fParan=fopen("paran.txt","w+");
     fNeparan=fopen("neparan.txt","w+");
     // provera ocena i pisanje u fajl
   ocene_provera(max);
   // ispis sadrzaja fajlova
   // ispis parnog
   printf("Ispis parnih ocena iz fajla\n");
   file_ispis(fParan);
   printf("Ispis neparnih ocena iz fajla\n");
   file_ispis(fNeparan);
 
    fclose(fParan);
    fclose(fNeparan);
 getch();    
}

// Funkcije za unos
 void ocene_unos(int koliko){
  for (int i=0;i<koliko;i++){
       printf("ocene[%d]=",i+1);
       scanf("%d",&ocene[i]);
      }  
 }
  void ocene_ispis(int koliko){
  for (int i=0;i<koliko;i++){
       printf("ocene[%d]=%d\n",i+1,ocene[i]);
      }  
 }
 // provera d ali je paran ili neparna sa upisom u fajl
  void ocene_provera(int koliko){
    for (int i=0;i<koliko;i++){
       if (ocene[i]%2==0) file_upis(fParan,ocene[i]);
       else file_upis(fNeparan,ocene[i]);
      }    
  }
 // rad sa fajlovima
  void file_upis(FILE *file,int ocena){
       if (file!=NULL){
          fprintf(file,"%d\n",ocena);                
          }  
      }  
   void file_ispis(FILE *file){
       if (file!=NULL){
          rewind(file);
          while(fscanf(file,"%d",&ocena)!=EOF){
          printf("%d\n",ocena);              
          }                
       }
     }