Facebook
From Walloping Monkey, 7 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 301
  1. #include <stdio.h>
  2.  
  3.  
  4.  
  5. int main(void)
  6. {
  7.        
  8.  FILE *odczyt= fopen("bmi.dat","rb");
  9.  if(odczyt==NULL)
  10.  {printf("Blad otwarcia\n"); return -1;}
  11.  
  12.  FILE *zapis=fopen("bmi.txt", "w");
  13.  FILE *nied=fopen("niedowaga.txt", "w");
  14.  FILE *norm=fopen("norma.txt", "w");
  15.  FILE *nadw=fopen("nadwaga.txt", "w");
  16.  
  17.  
  18. float x, ile = 0;
  19.  int licznik=0, plec,wzrost;
  20.  float masa, bmi,wzrostmetr;;
  21.  char pl;
  22.  int ilek=0, ilem=0;
  23.  float sumak =0, sumam=0,sredniak, sredniam;
  24.  int ile_nied=0, ile_norm=0, ile_nadw=0;
  25.  
  26.  
  27.   fread(&plec,sizeof(int),1,odczyt);
  28.   fread(&masa,sizeof(float),1,odczyt);
  29.   fread(&wzrost,sizeof(int),1,odczyt);
  30.  
  31.  
  32. while (feof(odczyt) == 0)
  33.  {
  34.  
  35. wzrostmetr=(float)wzrost/100;
  36. bmi = masa/(wzrostmetr*wzrostmetr);
  37.  
  38. if(plec==0)
  39. {
  40.         pl = 'K';
  41.         ilek++;
  42.         sumak+=bmi;
  43.        
  44. }
  45. else
  46. {
  47.         pl = 'M';
  48.         ilem++;
  49.         sumam+=bmi;
  50. }
  51.  
  52. ;
  53. printf("[%c] >>> %.2f [kg] >>> %d [cm]  >>> BMI = %.2f \n", pl, masa, wzrost, bmi);
  54. fprintf(zapis,"[%c] >>> %.2f [kg] >>> %d [cm]  >>> BMI = %.2f \n", pl, masa, wzrost, bmi);
  55.  
  56. if(bmi < 18.5)
  57. {
  58. fprintf(nied,"[%c] >>> %.2f [kg] >>> %d [cm]  >>> BMI = %.2f \n", pl, masa, wzrost, bmi);
  59. ile_nied++;
  60. }
  61.  
  62. else if(bmi < 25)
  63.  {
  64.  fprintf(norm,"[%c] >>> %.2f [kg] >>> %d [cm]  >>> BMI = %.2f \n", pl, masa, wzrost, bmi);     
  65.  ile_norm++;
  66.  }
  67. else
  68. {
  69. fprintf(nadw,"[%c] >>> %.2f [kg] >>> %d [cm]  >>> BMI = %.2f \n", pl, masa, wzrost, bmi);
  70. ile_nadw++;
  71. }
  72.  
  73.  
  74.  
  75. fread(&plec,sizeof(int),1,odczyt);
  76. fread(&masa,sizeof(float),1,odczyt);
  77. fread(&wzrost,sizeof(int),1,odczyt);
  78.  
  79.  }
  80. fclose(odczyt);
  81. zapis=fopen("bmi.txt", "r");
  82.  
  83.  
  84.  sredniak = (float)sumak/ilek;
  85.  sredniam = (float)sumam/ilem;
  86.  
  87.  printf("Liczba kobiet: %d \n", ilek);
  88.  printf("Liczba mezczyzn: %d \n", ilem);
  89.  printf("srednia bmi kobiet: %f \n", sredniak);
  90.  printf("srednia bmi mezczyzn: %f \n", sredniam);
  91.  
  92.  printf("ilosc ludzi z niedowaga: %d \n", ile_nied);
  93.  printf("ilosc ludzi normalnych: %d \n", ile_norm);
  94.  printf("ilosc ludzi z nadwaga: %d \n", ile_nadw);
  95.  
  96. fclose(odczyt);
  97. fclose(zapis);
  98. fclose(nied);
  99. fclose(norm);
  100. fclose(nadw);
  101.    
  102. return 0;
  103. }