Otadžbina¶
Autor zadatka: Sanja Špica <sanjaspica@uns.ac.rs>
Dat je niz A
od maksimalno 10 celobrojnih elemenata. Učitati n
elemenata a zatim:
ispisati sadržaj celokupnog niza
odrediti i ispisati aritmetičku sredinu elemenata niza koji su na neparnim indeksima
Ograničenja:
sprovesti zaštitu unosa nad podatkom
n
ispisati rezultat zaokružen na 1 decimalu
Dat je niz karaktera B
od maksimalno 120 karaktera u koji treba učitati sledeći citat Branislava Nušića:
"Otadzbina nije predmet ogranicen, oivicen, utelovljen. Otadzbina je misao, otadzbina je vera, a misao i vera ne umiru."
Prebrojati karaktere datog citata.
Prebrojati koliko puta se određen karakter pojavljuje u datom citatu.
Primer poziva:
./a.out
Za sledeće ulazne podatke:
Unesite broj elemenata niza (max 10): 5
Unesite A[0]: 6
Unesite A[1]: 2
Unesite A[2]: 8
Unesite A[3]: 9
Unesite A[4]: 3
Unesi karakter: O
i očekivani izlaz je u sledećem formatu:
A[0] = 6
A[1] = 2
A[2] = 8
A[3] = 9
A[4] = 3
avg = 5.5
Broj karaktera datog citata je 118.
Karakter O se u datom citatu pojavljuje 2 puta.
Primer rešenja¶
1#include <stdio.h>
2#include <string.h>
3
4#define MAX_SIZE 10
5#define MAX_STRING 151
6
7
8int main() {
9 int A[MAX_SIZE];
10 int n;
11
12 do {
13 printf("Unesite broj elemenata niza (max %d): ", MAX_SIZE);
14 scanf("%d", &n);
15 } while(n<2 || n > MAX_SIZE);
16
17 int i;
18 for(i=0; i<n; i++) {
19 printf("Unesite A[%d]: ", i);
20 scanf("%d", &A[i]);
21 }
22
23 printf("\n");
24 for(i=0; i<n; i++) {
25 printf("A[%d] = %d\n", i, A[i]);
26 }
27
28 double sum = 0;
29 int count = 0;
30 for(i=1; i<n; i+=2) {
31 sum += A[i];
32 count++;
33 }
34
35 double avg = sum / count;
36 printf("\n avg = %.1lf\n", avg);
37
38 char B[MAX_STRING];
39
40 printf("Unesite string: ");
41 __fpurge(stdin);
42 gets(B);
43
44 int br=strlen(B);
45
46 printf("Broj karaktera datog citata je %d\n", br);
47
48
49 char c;
50 printf("Unesi karakter: ");
51 __fpurge(stdin);
52 scanf("%c",&c);
53
54 int brojac;
55
56 for(i = 0; i < strlen(B); i++ )
57 if(B[i] == c) {
58 brojac++;
59 }
60 printf("Karakter %c se u datom citatu pojavljuje %d puta\n", c, brojac);
61
62 return 0;
63}