Non ho editato perchè è importante che più gente possibile legga.
Ho un problema, perchè ho bisogno che quell'array sia un int, non un char, ma mettendo int mi da errore. Vi scrivo qui il codice sorgente.
Praticamente, ho bisogno che mi vengano scritti tutti i numeri che sono uguali alla somma delle loro cifre, come faccio?codice:#include <stdio.h> main() { int numero_min = 0; int numero_max = 0; int array_celle = 0; int controllo = 2; while (controllo == 2) { printf("Vuoi i numeri da 100 o da 1000?"); scanf("%d",& numero_min); if (numero_min == 100) { numero_max = 999; array_celle = 4; controllo = 1; } else if (numero_min == 1000) { numero_max = 9999; array_celle = 5; controllo = 1; } else { printf("Inserisci 100 o 1000"); controllo = 2; } } char cifre[array_celle]; int somma; bool risultato; for (int i = numero_min; i < numero_max; i++) { sprintf (cifre, "%d", i); if (array_celle == 4) { somma = cifre[0] + cifre[1] + cifre[2]; if (somma == i) { risultato = true; } else { risultato = false; } } else { somma = cifre[0] + cifre[1] + cifre[2] + cifre[3]; if (somma == i) { risultato = true; } else { risultato = false; } } if (risultato = true) { printf("%d",i); } } printf("The End"); int a; scanf("%d",& a); return (0); }
Grazie ^^

Rispondi quotando