Citat¶
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 maksimalnu vrednost elementa datog niza, a zatim izracunati fakorijel tog broja
Ograničenja:
sprovesti zaštitu unosa nad podatkom
n
Dat je niz karaktera B
od maksimalno 130 karaktera u koji treba učitati sledeci citat (Fridrih Niče):
"Ko Se Bori Sa Cudovistima, Mora Paziti Da Sam Ne Postane Cudoviste. A Kad Dugo Gledas U Ponor, Ponor Pocne Da Gleda U Tebe."
Prebrojati karaktere datog citata.
Napisati program koji modifikuje dati citat tako što velika slova pretvara u mala i obrnuto.
Primer poziva:
./a.out
Za sledeće ulazne podatke:
Unesite broj elemenata niza (max 10): 5
Unesite A[0]: 4
Unesite A[1]: 2
Unesite A[2]: 5
Unesite A[3]: 7
Unesite A[4]: 5
i očekivani izlaz je u sledećem formatu:
A[0] = 4
A[1] = 2
A[2] = 5
A[3] = 7
A[4] = 5
Maksimalan element niza A je 7, dok je njegov faktorijel 5040.
Broj karaktera datog citata je 123.
kO sE bORI sA cUDOVISTIMA, mORA pAZITI dA sAM nE pOSTANE cUDOVISTE. a kAD dUGO gLEDAS u pONOR, pONOR pOCNE dA gLEDA u tEBE.
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, max, fak=1;
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 max=A[0];
28 for(i=1; i<n; i++){
29 if(A[i]>max){
30 max=A[i];
31 }
32 }
33 for(i = 1; i <= max; i++)
34 fak = fak*i;
35
36 printf("Maksimalan element niza A je %d, dok je njegov faktorijel %d.\n", max, fak);
37
38 char B[MAX_STRING];
39
40 printf("Unesite string: ");
41 __fpurge(stdin);
42 gets(B);
43
44 int br=strlen(B);
45 printf("Broj karaktera datog citata je %d\n", br);
46
47 i=0;
48 while(B[i] != '\0') {
49 if (B[i] >= 'A' && B[i] <= 'Z'){
50 B[i] += 32;
51 }
52 else if (B[i] >= 'a' && B[i] <= 'z'){
53 B[i] -= 32;
54 }
55 i++;
56 }
57 puts(B);
58
59 return 0;
60}