Celzijusi, Farenhajti, Kelvini¶
Autor zadatka: Rade Radišić <radisic.rade@uns.ac.rs>
Napisati program u kom korisnik učitava u niz od 30 realnih elemenata n vrednosti (u granicama veličine niza) temperatura u stepenima celzijusa.
Preračunati unete vrednosti u stepene farenhajta i kelvina i dobijene vrednosti smestiti u dva zasebna niza.
Ispisati vrednosti sva tri niza tako da u redu budu sukcesivno navedene vrednosti stepeni celzijusa, farenhajta i kelvina.
Ispisati zaglavlje tabelarnog prikaza i konkretne vrednosti odvojiti crticama (pogledati primer rada programa).
Za ispis nizova koristiti format string u obliku "%5.1lf %5.1lf %5.1lf\\n"
.
Izračunati srednje vrednosti nizova i ispisati srednje vrednosti svakog niza.
Odvojiti srednje vrednosti istim redom crtica koje su korišćene za razdvajanje zaglavlja i vrednosti niza (pogledati primer rada programa).
Formula za konverziju iz stepena Celzijusa u stepene Farenhajta:
Formula za konverziju iz stepena Celzijusa u stepene Kelvina:
Primer rada programa:
Unesite broj elemenata: 7
tempc[0] = 34
tempc[1] = 21.7
tempc[2] = 14.3
tempc[3] = 40.4
tempc[4] = 8
tempc[5] = -14.3
tempc[6] = 1.9
T[C] T[F] T[K]
------------------
34.0 93.2 307.1
21.7 71.1 294.8
14.3 57.7 287.4
40.4 104.7 313.5
8.0 46.4 281.1
-14.3 6.3 258.8
1.9 35.4 275.0
------------------
15.1 59.3 288.3
Primer rešenja¶
1#include <stdio.h>
2#include <string.h>
3
4#define MAX_NIZ 30
5
6int main() {
7 double tempc[MAX_NIZ], tempf[MAX_NIZ], tempk[MAX_NIZ];
8 double sumac = 0, sumaf = 0, sumak = 0;
9 double srvrc, srvrf, srvrk;
10 int i, n;
11
12 do {
13 printf("Unesite broj elemenata: ");
14 scanf("%d", &n);
15 } while(n <= 0 || n > MAX_NIZ);
16
17 for(i = 0;i < n;i++) {
18 printf("tempc[%d] = ", i);
19 scanf("%lf", &tempc[i]);
20 }
21
22 for(i = 0;i < n;i++) {
23 tempf[i] = (tempc[i] * 1.8) + 32;
24 tempk[i] = tempc[i] + 273.15;
25 }
26
27 for(i = 0;i < n;i++) {
28 sumac += tempc[i];
29 sumaf += tempf[i];
30 sumak += tempk[i];
31 }
32
33 srvrc = sumac / n;
34 srvrf = sumaf / n;
35 srvrk = sumak / n;
36
37 printf("\nT[C] T[F] T[K]\n");
38 printf("------------------\n");
39
40 for(i = 0;i < n;i++) {
41 printf("%5.1lf %5.1lf %5.1lf\n", tempc[i], tempf[i], tempk[i]);
42 }
43
44 printf("------------------\n");
45 printf("%5.1lf %5.1lf %5.1lf\n", srvrc, srvrf, srvrk);
46
47 return 0;
48}
49