C programs

Wednesday, November 30, 2005

 

Program za trazenje imena promenljivih koje nisu ni minimalne ni maximalne

  1. /*******************************************
  2. *
  3. *  Napisati program za unosenje brojeva A, B, C, D, E i na ekranu
  4. *  ispisuje imena unesenih brojeva (A, B, C, D ili E) koji nisu
  5. *  ni minimalni ni maximalni
  6. *
  7. *******************************************/
  8. #include <stdio.h>
  9.  
  10. main () {
  11.     /**************************************
  12.     *
  13.     *  Niz a sluzi da za cuvanje imana promenljivih
  14.     *         (indexi imena su isti kao indexi unesenih brojeva)
  15.     *  Niz b sluzi za unos brojeva
  16.     *  min i max su najmanji i najveci clanovi niza b
  17.     *  i je pomocna promenljiva za for petlju
  18.     *  k je  broj onih koji nisu ni minimalni ni maximalni
  19.     *         (sluzi za to da ako nema onih koji nisu ni minimalni ni maximalni
  20.     *         onda ispisuje poruku da ih nema, a ne ostavlja prazan ekran)
  21.     *  again je pomovna promenljiva za ponavljanje programa ako korisnik to zeli
  22.     *
  23.     **************************************/
  24.     char a[5] = {'A', 'B', 'C', 'D', 'E'};
  25.     float b[5], min, max;
  26.     int i, k;
  27.     char again = 'y';
  28.  
  29.     /*************************************
  30.     *
  31.     *  Uvodna konverzacija
  32.     *
  33.     **************************************/
  34.     printf("Program za ispisivanje clanova koji nisu ni najmanji ni najveci!\n\n");
  35.  
  36.     /*************************************
  37.     *
  38.     *  while petlja koja sluzi za ponavljanje programa onoliko
  39.     *  puta koliko to korinsik zeli
  40.     *
  41.     *************************************/
  42.     while (again=='y') {
  43.  
  44.             /************************************
  45.             *
  46.             *  Unos clanova niza b
  47.             *
  48.             ************************************/
  49.             for (i=0; i<5; i++) {
  50.                 printf("Unesite %c: ", a[i]);
  51.                 scanf("%f", &b[i]);
  52.             }
  53.        
  54.             /***********************************
  55.             *
  56.             *  Petlja za odredjivanje najveceg i najmanjeg clana b niza
  57.             *
  58.             ***********************************/
  59.             for (min=b[0], max=b[0], i=1; i<5; i++) {
  60.                 if (b[i]<min) min = b[i];
  61.                 if (b[i]>max) max = b[i];
  62.                 }
  63.        
  64.             /***********************************
  65.             *
  66.             *  Brojanje onih koji nisu ni minimalni ni maximalni
  67.             *
  68.             ***********************************/
  69.             for (k=0, i=0; i<5; i++) if ((b[i]!=min) && (b[i]!=max)) k++;
  70.        
  71.             /**********************************
  72.             *
  73.             *  Ako je broj onih koji nisu ni minimalni ni maximalni
  74.             *  veci od nule ispisuje njihova imena na ekraju,
  75.             *  a ako je jedank nuli ispisuje odgovarajucu poruku
  76.             *
  77.             **********************************/
  78.             if (k!=0) {
  79.                 printf("\Nisu ni minimalni ni maximalni: \n");
  80.                 for (i=0; i<5; i++) if ((b[i]!=min) && (b[i]!=max))
  81.                     printf("\t%c", a[i]);
  82.                 }
  83.                 else
  84.                      printf("\tSvi clanovi su ili minimalni ili maximalni!\n");
  85.                     
  86.             /**********************************
  87.             *
  88.             *  Da li korisnik zeli da ponovi program?
  89.             *
  90.             ***********************************/
  91.             scanf("%c", &again);
  92.             printf("\n\n\tDa li zelite da ponovo izvrsite program? (y/n): ");
  93.             scanf("%c", &again);
  94.             while (again!='y' && again!='n') {
  95.                 scanf("%c", &again);
  96.                 printf("\n\n**POGRESAN UNOS** Unesite 'y' za DA i 'n' za NE!\n");
  97.                 printf("\n\n\tDa li zelite da ponovo izvrsite program? (y/n): ");
  98.                 scanf("%c", &again);
  99.                 }
  100.            
  101.             /**********************
  102.             *
  103.             *  KRAJ PROGRAMA
  104.             *
  105.             **********************/
  106.             printf("\n\n***KRAJ PROGRAMA***\n\n");
  107.  
  108.  
  109.     }
  110. return 0;
  111.    }

Comments: Post a Comment



<< Home

Archives

November 2005   December 2005   January 2006  

This page is powered by Blogger. Isn't yours?