Advertisement
dfilipeloja

Programa C

Feb 26th, 2015
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.27 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define Ddia 31
  5. #define Dhora 4
  6.  
  7. void lerTemp(float t[Ddia][Dhora])
  8. {
  9.     int i, j, hora=0;
  10.  
  11.     for (i = 0; i < Ddia; i++)
  12.     {
  13.         hora = 0;
  14.         printf("Dia %d:", (i+1));
  15.         for (j = 0; j < Dhora; j++)
  16.         {
  17.             printf("\nHora %d: ", hora);
  18.             scanf("%f", &t[i][j]);
  19.             hora += 6;
  20.         }
  21.     }
  22.  
  23.     printf("\n\nCompleto...\n\n");
  24. }
  25.  
  26. void listarDia(float t[Ddia][Dhora], int d)
  27. {
  28.     int j, hora=0;
  29.  
  30.     for (j = 0; j < Dhora; j++)
  31.     {
  32.         printf("Temperatura %d: %f\n", hora, t[d][j]);
  33.         hora += 6;
  34.     }
  35.     printf("\n\nCompleto...\n\n");
  36. }
  37.  
  38. void listarTemp(float t[Ddia][Dhora])
  39. {
  40.     int i, j, hora=0;
  41.  
  42.     for (i = 0; i < Ddia; i++)
  43.     {
  44.         hora = 0;
  45.         printf("\nDia %d:\n", (i+1));
  46.         for (j = 0; j < Dhora; j++)
  47.         {
  48.             printf("\nTemperatura %d - %d: %f", (i+1), hora, t[i][j]);
  49.             hora += 6;
  50.         }
  51.     }
  52.     printf("\n\nCompleto...\n\n");
  53. }
  54.  
  55. float mediaDia(float t[Ddia][Dhora], int d)
  56. {
  57.     int j;
  58.     float media=0;
  59.  
  60.     for (j = 0; j < Dhora; j++)
  61.     {
  62.         media = media + t[d][j];
  63.     }
  64.     media = (media/4);
  65.     return media;
  66. }
  67.  
  68. float mediaHora(float t[Ddia][Dhora], int h)
  69. {
  70.     int i;
  71.     float media=0;
  72.  
  73.     switch (h)
  74.     {
  75.     case 0:
  76.         h = 0;
  77.         break;
  78.     case 6:
  79.         h = 1;
  80.         break;
  81.     case 12:
  82.         h = 2;
  83.         break;
  84.     case 18:
  85.         h = 3;
  86.         break;
  87.     }
  88.     for (i = 0; i < Ddia; i++)
  89.     {
  90.         media = media + t[i][h];
  91.     }
  92.     media = (media/Ddia);
  93.     return media;
  94. }
  95.  
  96. int menorTemp(float t[Ddia][Dhora])
  97. {
  98.     int i, j, dia;
  99.     float menor = t[1][1];
  100.  
  101.     for (i = 0; i < Ddia; i++)
  102.     {
  103.         for (j = 0; j < Dhora; j++)
  104.         {
  105.             if (t[i][j] < menor)
  106.             {
  107.                 menor = t[i][j];
  108.                 dia = i;
  109.             }
  110.         }
  111.     }
  112.     return dia;
  113. }
  114.  
  115. int main()
  116. {
  117.     float t[Ddia][Dhora];
  118.     int op, dia, hora;
  119.  
  120.  
  121.     printf("*************************************************\n"
  122.            "1. Ler temperaturas\n"
  123.            "2. Listar temperaturas de um dia\n"
  124.            "3. Listar as temperaturas do mês\n"
  125.            "4. Calcular média de temperaturas de um dia\n"
  126.            "5. Calcular média de temperaturas em uma dada hora\n"
  127.            "6. Determinar o dia com o registo da menor temperatura\n"
  128.            "7. Sair\n"
  129.            "*************************************************\n"
  130.            "Opcao: ");
  131.     do
  132.     {
  133.         scanf("%d", &op);
  134.  
  135.         switch (op)
  136.         {
  137.         case 1:
  138.             lerTemp(t);
  139.             break;
  140.  
  141.         case 2:
  142.             scanf("%d", &dia);
  143.             listarDia(t, dia);
  144.             break;
  145.  
  146.         case 3:
  147.             listarTemp(t);
  148.             break;
  149.  
  150.         case 4:
  151.             scanf("%d", &dia);
  152.             printf("%f\n\n", mediaDia(t, dia));
  153.             break;
  154.  
  155.         case 5:
  156.             scanf("%d", &hora);
  157.             printf("%f\n\n", mediaHora(t, hora));
  158.             break;
  159.  
  160.         case 6:
  161.             printf("Dia: %d\n\n", menorTemp(t));
  162.             break;
  163.  
  164.         default:
  165.             break;
  166.         }
  167.     }
  168.     while (op != 7);
  169.  
  170.     return 0;
  171. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement