Università degli Studi di Brescia Fondamenti di Programmazione Docente: Alessandro Saetti A.A. 2012/2013 ESERCITAZIONE STRUTTURE DI CONTROLLO E VETTORI Università degli Studi di Brescia A.A. 2012/2013 Scrivere un programma C che - Acquisisca da tastiera un numero intero positivo n, ripetendo l’acquisizione qualora il numero fosse negativo o superiore a 1023. - Stampi a video la conversione di n in base 2. (Suggerimento: Utilizzare un vettore per memorizzare i resti delle divisioni.). Scrivere un programma C che - Acquisisca da tastiera un numero intero positivo n, ripetendo l’acquisizione qualora il numero fosse negativo o superiore a 1023. - Stampi a video la conversione di n in base 2. (Suggerimento: Utilizzare un vettore per memorizzare i resti delle divisioni.). #include <stdio.h> #include <stdlib.h> int main() { // . . . Impostiamo la solita struttura di partenza di un programma C system("pause"); return(0); } Scrivere un programma C che - Acquisisca da tastiera un numero intero positivo n, ripetendo l’acquisizione qualora il numero fosse negativo o superiore a 1023. - Stampi a video la conversione di n in base 2. (Suggerimento: int n; Utilizzare un vettore per memorizzare i resti delle divisioni.). do { printf(“Digita un intero >=0: "); scanf("%d",&n); } while (n<0 || n>1023); Ripeto finché i valori digitati sono esterni all’intervallo [0,1023] Scrivere un programma C che - Acquisisca da tastiera un numero intero positivo n, ripetendo l’acquisizione qualora il numero fosse negativo o superiore a 1023. - Stampi a video la conversione di n in base 2. (Suggerimento: Utilizzare un vettore per memorizzare i resti delle divisioni.). Estraggo la sequenza di resti della divisione per 2 e li memorizzo in un array int i=0; int digit[10]; do { digit[i]=n % 2; n=(n-digit[i])/2; i++; } while (n > 0); for (i--;i>=0 ; i--) printf("%d",digit[i]);