Osnovi programiranja - vezbe - Alas
Osnovi programiranja - vezbe - Alas
Osnovi programiranja - vezbe - Alas
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
}<br />
/* Ispisimo sumu cifara */<br />
printf("Suma cifara je %d\n",suma);<br />
}<br />
return 0;<br />
Zadatak 1.2 Sa tastature se unosi ceo broj n. Ispisati sve cifre koje sačinjavaju<br />
binarni zapis ovog broja, počevši od cifre najmanje težine.<br />
Rešenje:Iako formulacija ovog zadatka na prvi pogled izgleda prilično različita<br />
od formulacije prethodnog zadatka, u suštini se radi o veoma sličnim problemima.<br />
Naime, zapišimo broj n u obliku:<br />
tj.<br />
n = (a m . . . a 0 ) 2<br />
n = a m 2 m + a m−1 2 m−1 + . . . + a 1 2 + a 0<br />
Sada primećujemo, slično kao i malo pre, da je cifra a 0 jednaka n mod 2. Problem<br />
sada možemo da svedemo na odredjivanje binarnog zapisa broja (a m . . . a 1 ),<br />
koji je ustvari jednak [ n 2<br />
]. Dakle kod izgleda ovako:<br />
#include <br />
int main()<br />
{ /* Broj cije binarne cifre racunamo */<br />
int n;<br />
/* Unos broja sa tastature */<br />
printf("Unesite ceo broj : ");<br />
scanf("%d",&n);<br />
printf("Binarne cifre broja %d,<br />
pocevsi od cifre najmanje tezine su:\n",n);<br />
/* Ako je broj 0, zavrsavamo */<br />
while(n!=0)<br />
{ /* Ispisujemo binarnu cifru broja n najmanje tezine */<br />
printf("%d\n",n%2);<br />
/* Svodimo problem na broj [n/2] */<br />
n/=2;<br />
}<br />
}<br />
return 0;<br />
Zadatak 1.3 Sa tastature se unosi broj n, a zatim n binarnih cifara. Ispisati<br />
dekadnu vrednost broja koji se zapisuje pomoću unetih binarnih cifara i to<br />
počevši od cifre najveće težine. Npr. Ako je uneto n=4, i zatim cifre : 1 1<br />
0 1, program treba da ispiše 13.<br />
2