Gradilište

Autor zadatka: Milena Zeljković <milenapocuca@uns.ac.rs>

Korisnik unosi sa tastature broj dana gradnje. Za svaki dan gradnje potroši se određena količina materijala - maltera, cigle i crepa. Potrebno je uneti posebno potrošenu količinu maltera, cigle i crepa za svaki dan rada. Nakon toga, uneti cenu maltera po kilogramu, cigle po komadu i crepa po komadu.

Izračunati i ispisati na standardni izlaz:

  • koliko je ukupno potrošeno novca za materijal

  • koliko je prosečno potrošeno cigli po danu

  • kog dana je potrošeno najviše materijala

Primer rada sa programom:

Unesite broj dana radova: 5
Unesite potrosenu kolicinu maltera u kg za 1. dan: 2.5
Unesite potrosenu kolicinu maltera u kg za 2. dan: 3.8
Unesite potrosenu kolicinu maltera u kg za 3. dan: 4.7
Unesite potrosenu kolicinu maltera u kg za 4. dan: 8.2
Unesite potrosenu kolicinu maltera u kg za 5. dan: 9.1
Unesite potrosenu kolicinu cigle u komadima za 1. dan: 30
Unesite potrosenu kolicinu cigle u komadima za 2. dan: 24
Unesite potrosenu kolicinu cigle u komadima za 3. dan: 32
Unesite potrosenu kolicinu cigle u komadima za 4. dan: 56
Unesite potrosenu kolicinu cigle u komadima za 5. dan: 32
Unesite potrosenu kolicinu crepa u komadima za 1. dan: 87
Unesite potrosenu kolicinu crepa u komadima za 2. dan: 43
Unesite potrosenu kolicinu crepa u komadima za 3. dan: 67
Unesite potrosenu kolicinu crepa u komadima za 4. dan: 32
Unesite potrosenu kolicinu crepa u komadima za 5. dan: 56
Uneti cenu maltera po kilogramu: 12.5
Uneti cenu cigle po komadu: 31
Uneti cenu crepa po komadu: 40
Ukupno je potroseno 17147.75 novca za 5 dana gradnje.
Prosecno je potroseno 34.80 cigli po danu.
Najvise je potroseno 119.50 materijala 1. dana.

Primer rešenja

 1#include <stdio.h>
 2#include <string.h>
 3
 4#define MAX_NIZ 20
 5
 6
 7int main() {
 8
 9    int cigla[MAX_NIZ], crep[MAX_NIZ], n, maxIndex;
10    float cena_maltera, malter[MAX_NIZ], cena_cigle, cena_crepa, ukupno = 0, ukupno_cigle = 0, max;
11
12    do {
13        printf("Unesite broj dana radova: ");
14        scanf("%d", &n);
15    } while (n < 0 || n > 20);
16
17    for (int i = 0; i < n; i++) {
18        printf("Unesite potrosenu kolicinu maltera u kg za %d. dan: ", i+1);
19        scanf("%f", &malter[i]);
20    }
21
22    for (int i = 0; i < n; i++) {
23        printf("Unesite potrosenu kolicinu cigle u komadima za %d. dan: ", i+1);
24        scanf("%d", &cigla[i]);
25    }
26
27    for (int i = 0; i < n; i++) {
28        printf("Unesite potrosenu kolicinu crepa u komadima za %d. dan: ", i+1);
29        scanf("%d", &crep[i]);
30    }
31
32    printf("Uneti cenu maltera po kilogramu: ");
33    scanf("%f", &cena_maltera);
34
35    printf("Uneti cenu cigle po komadu: ");
36    scanf("%f", &cena_cigle);
37
38    printf("Uneti cenu crepa po komadu: ");
39    scanf("%f", &cena_crepa);
40
41    for (int i = 0; i < n; i++) {
42        float cigla_po_danu = cena_cigle * cigla[i];
43        ukupno_cigle += cigla[i];
44        ukupno += malter[i] * cena_maltera + cigla_po_danu + crep[i] * cena_crepa;
45    }
46
47    printf("Ukupno je potroseno %.2f novca za %d dana gradnje.\n", ukupno, n);
48
49    printf("Prosecno je potroseno %.2f cigli po danu.\n", ukupno_cigle/n);
50
51    max = crep[0] + cigla[0] + malter[0];
52    maxIndex = 0;
53
54    for (int i = 1; i < n; i++) {
55        int potencilani_max = crep[i] + cigla[i] + malter[i];
56        if (potencilani_max > max) {
57            max = potencilani_max;
58            maxIndex = i;
59        }
60    }
61
62    printf("Najvise je potroseno %.2f materijala %d. dana.\n", max, maxIndex + 1);
63
64    return 0;
65}