Update funzioni/inverti_numero.cpp
This commit is contained in:
parent
441c4fca0c
commit
49dd35348a
|
@ -1,51 +1,51 @@
|
||||||
/*
|
/*
|
||||||
AUTORE: Manuel Vichi
|
AUTORE: Manuel Vichi
|
||||||
Inversione di un numero, complemento a 10, numero di cifre
|
Inversione di un numero, complemento a 10, numero di cifre
|
||||||
*/
|
*/
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <array>
|
#include <array>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <cstdlib>
|
#include <cstdlib>
|
||||||
using namespace std;
|
using namespace std;
|
||||||
int invertiNumero(int numero) {
|
int invertiNumero(int numero) {
|
||||||
int resto = 0, invertito = 0, temp = numero;
|
int resto = 0, invertito = 0, temp = numero;
|
||||||
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);
|
||||||
return invertito;
|
return invertito;
|
||||||
}
|
}
|
||||||
|
|
||||||
int complementoA10(int numero) {
|
int complementoA10(int numero) {
|
||||||
int cifre = 0, potenza = 1, complemento, temp = numero;
|
int cifre = 0, potenza = 1, complemento, 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;
|
||||||
return complemento;
|
return complemento;
|
||||||
}
|
}
|
||||||
|
|
||||||
int contaZeri(int numero) {
|
int contaZeri(int numero) {
|
||||||
int zeri = 0, temp = numero;
|
int zeri = 0, 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;
|
||||||
}
|
}
|
||||||
return zeri;
|
return zeri;
|
||||||
}
|
}
|
||||||
|
|
||||||
int main() {
|
int main() {
|
||||||
int numero;
|
int numero;
|
||||||
cout << "Inserisci un numero: ";
|
cout << "Inserisci un numero: ";
|
||||||
cin >> numero;
|
cin >> numero;
|
||||||
cout << endl << "Il numero invertito e': " << invertiNumero(numero) << endl << "Il complemento a 10 del numero e': " << complementoA10(numero) << endl << "Il numero di zeri nel numero e': " << contaZeri(numero) << endl;
|
cout << endl << "Il numero invertito e': " << invertiNumero(numero) << endl << "Il complemento a 10 del numero e': " << complementoA10(numero) << endl << "Il numero di zeri nel numero e': " << contaZeri(numero) << endl;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue