#include #include #include #define NUM_INF 1000000 #define NUM_SUP 4567890 #define NUM_CIFRE 7 int main(int argc, char *argv[]) { int cont; int seq[NUM_CIFRE+1]; /* considera gli indici da 1 a NUM_CIFRE */ int i; cont = 0; for (i = NUM_INF; i <= NUM_SUP; i++) { /* trasforma il numero in sequenza di cifre */ int t, j; int OK; t = i; j = NUM_CIFRE; for (j = NUM_CIFRE; j>=1; j--) { seq[j] = t % 10; t = t/10; } /* printf("%d ", i); for (j=1; j<=NUM_CIFRE; j++) { printf("%d", seq[j]); if (j 0) c++; /* ultimo controllo: se le cifre presenti sono esattamente quattro, incrementa il contatore dei numeri che rispettano tutte le condizioni */ if (c == 4) { cont++; /*printf("%d\n", i);*/ } } } } } printf("%d\n", cont); return 0; }