PDA

View Full Version : Valore sentinella...xk non va?


managerfx
21-02-2011, 13:29
ragazzi cosa c'è di sbagliato in questo programma?
da qnd ho inserito il while non va più!


#include <stdio.h>
#include <stdlib.h>
#define n 6
int v[n], p[n], j=0, i=0;

int main()
{
while (v[i] != -1){
for (i=0; i <= n-1; i++)
{
printf ("\n Inserisci elementi: ");
scanf ("%d", &v[i]);
if (v[i]%2==0){
p[j]=v[i];
j++;
}

}
}


printf ("\n\n----");
for (i=0; i <= j-1; i++)
printf("\nI valori PARI sono: %d\n", p[i]);

system ("pause");
return 0;
}

tuccio`
21-02-2011, 13:49
il vettore v non è inizializzato, dovresti usare un do while

managerfx
21-02-2011, 13:58
il vettore v non è inizializzato, dovresti usare un do while

non posso usare un do/while essendo una funzione ke si ripete MENTRE succede qlcs.......
oppure se mi sbaglio illuminatemi!

Freaxxx
21-02-2011, 14:29
la condizione del while crea un loop infinito visto che il vettore viene inizializzato con tutte le posizioni uguali a zero, quindi v, ovvero v[0], è uguale a 0 e quindi nella condizione risulta [I]0 diverso da -1 che è cosa sempre vera appunto, questo sulla maggior parte dei compilatori che ho provato ad oggi.

tuccio`
21-02-2011, 16:56
non posso usare un do/while essendo una funzione ke si ripete MENTRE succede qlcs.......http://www.youtube.com/watch?v=na2AtCHriyQ&feature=related