Základy algoritmizace a programování

Petr Sváček, Luděk Beneš, Olga Majlingová
Ústav technické matematiky

Cviceni č. 9


Ulohy pro 9. tyden

Práce s polem. Algoritmizace jednoduchých úloh s cyklem.


  1. Prace s polem
    a) Program vyzkousejte.
    b) Do casti kodu vyznacene komentarem doplnte algoritmus nalezeni maxima, minima.
    c) Doplnte algoritmus, ktery zjisti pocet prvku vetsich nez 1000 pripadne poceta kolik prvku je mensi nez 0.
    d) Zjistete kolik prvku je rovno maximu, vypiste jejich indexy.

    #include <stdio.h>
    #include <math.h>
    
    main()
    {
      int i, n;
      float A[500];
    
      printf("Pocet prvku:"); 
      scanf("%i", &n);
      printf("Prvky:"); 
      for(i = 0; i < n; i++)
      {
        scanf("%f", &A[i]); 
      }
    
      /** -----------  */
      /** ZDE DOPLNTE */
    
    
    
    
      /** -----------  */
    
      for(i = 0; i < n; i++)
      {
        printf("A[%i] = %f\n", i, A[i]); 
      }
    
    }
    

  2. Prace s polem
    a) Naleznete nejvetsi prvek v poli a vypiste jeho hodnotu a poradi(index).
    b) Naleznete nejmensi prvek v poli a vypiste jeho hodnotu a poradi(index).
    c) Prohodte nalezeny nejvetsi prvek na 1. misto v poli. Ze zbyvajicich hodnot na mistech 2-n naleznete 2. nejvetsi prvek.
    d) Tento prohodte na 2. misto v poli.

    #include <stdio.h>
    #include <math.h>
    
    main()
    {
      int i, n;
      float A[500];
    
      printf("Pocet prvku:"); 
      scanf("%i", &n);
      printf("Prvky:"); 
      for(i = 0; i < n; i++)
      {
        scanf("%f", &A[i]); 
      }
    
      /** -----------  */
      /** ZDE DOPLNTE */
    
    
    
    
      /** -----------  */
    
      for(i = 0; i < n; i++)
      {
        printf("A[%i] = %f\n", i, A[i]); 
      }
    
    }