Salve a tutti, sono uno studente di terza elettronica, e da quest'anno ho iniziato ad usare il C per comprenderne almeno le basi.
L'ultimo compito assegnato è stato quello di creare un programma che operando con degli array riceva dei numeri e li divida in pari e dispari, visualizzandoli.
Ho scritto il programma, ma non funzionava!
Quindi ho fatto il debug e ho scoperto che un ciclo for non funziona correttamente : infatti, non rispetta la condizione i=0, e quindi viene subito superato...![]()
Ho provato anche a risolvere piazzando qualche i=0 in giro, ma senza risultato -.-"
Cosa ho sbagliato??![]()
Ecco il programma integrale, il for che crea problemi è il secondo:
codice:#include <stdio.h> #include <stdlib.h> int numeri = 5; int a[5], pari[5], dispari[5],i,i1; int main(int argc, char *argv[]) { for(i = 0; i<numeri ; i++) { printf("Numero : "); scanf("%d", &a[i]); } for(i1 = 0; i1<numeri ; i1++); { if (a[i1] % 2 == 0) { pari[i1] = a[i1]; } else { dispari[i1] = a[i1]; } } for(i = 0; i<numeri; i++) { printf("\n\nPari : %d", pari[i]); } for(i = 0; i<numeri; i++) { printf("\n\nDispari : %d", dispari[i]); } system("PAUSE"); return 0; }


Rispondi quotando