Ritorna alla pagina del corso.
Questa pagina contiene gli esercizi proposti in laboratorio e -alcune- delle soluzioni proposte.
Si suggerisce di provare a risolvere gli esercizi e solo in un secondo tempo di confrontare quanto fatto con le soluzioni proposte.
01: #include<stdio.h>
02: #include<stdlib.h>
03:
04: int main(int argc, char **argv){
05:
06: printf("Inserisci un numero decimale tra 0 e 15: "); // ci fidiamo dell'utente...
07: int x;
08: scanf("%d", &x);
09:
10: // per convertire da decimale a binario si divide per due.
11: // Il resto e' la cifra meno significativa. Ripeto con il risultato e ottengo la seconda cifra meno significativa.
12: // Ripeto fino a quando il risultato non diventa 0.
13: // Ci limitiamo quindi a calcolare quattro divisioni e il relativo resto
14:
15: int b0, b1, b2, b3; // memorizzo i 4 bit per stamparli poi nell'ordine corretto
16:
17: b0 = x % 2; // resto divisione per 2 (puo' essere solo 0 o 1)
18: x = x / 2;
19:
20: b1 = x % 2; // ripeto per 4 volte
21: x = x / 2;
22:
23: b2 = x % 2; // ripeto per 4 volte
24: x = x / 2;
25:
26: b3 = x % 2; // ripeto per 4 volte
27: // x = x / 2; // ci fermiamo e quindi non serve
28:
29: printf("Le 4 cifre binarie meno significative del numero inserito sono %d%d%d%d\n", b3, b2, b1, b0);
30:
31:
32: return 0;
33: }
34:
35: