This commit is contained in:
Vichingo455 2024-10-18 11:20:55 +00:00
commit 478062efb8
1 changed files with 46 additions and 46 deletions

View File

@ -1,46 +1,46 @@
/* /*
AUTORE: Manuel Vichi AUTORE: Manuel Vichi
Elaborato 3 Elaborato 3
*/ */
#include <iostream> #include <iostream>
using namespace std; using namespace std;
int main(void) { int main(void) {
unsigned int numero = 0,invertito = 0,resto,complemento,cifre = 0,temp = 0,potenza = 1,zeri = 0; unsigned int numero = 0,invertito = 0,resto,complemento,cifre = 0,temp = 0,potenza = 1,zeri = 0;
cout << "Inserisci un numero intero positivo: "; cout << "Inserisci un numero intero positivo: ";
cin >> numero; cin >> numero;
cout << endl; cout << endl;
if (numero == 0) { if (numero == 0) {
cout << "Il numero 0 non e' consentito" << endl; cout << "Il numero 0 non e' consentito" << endl;
return 0; return 0;
} }
temp = numero; temp = numero;
//Inversione Cifre //Inversione Cifre
do { do {
resto = temp % 10; resto = temp % 10;
invertito = (invertito * 10) + resto; invertito = (invertito * 10) + resto;
temp = temp / 10; temp = temp / 10;
} while (temp != 0); } while (temp != 0);
//Complemento a 10: conta il numero di cifre per la potenza di 10. //Complemento a 10: conta il numero di cifre per la potenza di 10.
temp = numero; temp = numero;
do { do {
temp = temp / 10; temp = temp / 10;
cifre++; cifre++;
} while (temp != 0); } while (temp != 0);
do { do {
potenza = potenza * 10; potenza = potenza * 10;
cifre--; cifre--;
} while (cifre > 0); } while (cifre > 0);
complemento = potenza - numero; complemento = potenza - numero;
//Conta gli zeri //Conta gli zeri
temp = numero; temp = numero;
while (temp > 0) { while (temp > 0) {
if (temp % 10 == 0) { if (temp % 10 == 0) {
zeri++; zeri++;
} }
temp /= 10; // Rimuoviamo l'ultima cifra temp /= 10; // Rimuoviamo l'ultima cifra
} }
cout << "Il numero " << numero << " invertito e': " << invertito << endl; cout << "Il numero " << numero << " invertito e': " << invertito << endl;
cout << "Il complemento a 10 di " << numero << " e': " << complemento << endl; cout << "Il complemento a 10 di " << numero << " e': " << complemento << endl;
cout << "Il numero di zeri contenuti nel numero " << numero << " e': " << zeri << endl; cout << "Il numero di zeri contenuti nel numero " << numero << " e': " << zeri << endl;
return 0; return 0;
} }