Corretta impostazione di while e if

Matnice
Ciao a tutti, ho appena iniziato a studiare il linguaggio c e sto cercando sviluppare programmi molto semplici. Così non sono riuscito a svolgere questo problema: Leggere 100 interi positivi da terminale e visualizza true se tutti
maggiori di 3 altrimenti false.
int n, e=0;
int main()
{
while (e<=100)
{ scanf(“%d”,&n);
if *
e= e +1;
}
}
Non riesco più che altro a trovare un modo per scrivere che solo se tutti gli n sono maggiori di 3 allora deve essere stampato a video "True", altrimenti "False".
*Questo è il punto che devo continuare.

Risposte
vict85
Usa il tag
[code]
[/code]

Il tuo codice legge 100 interi non necessariamente positivi. Bisogna dire che il testo è incompleto: che bisogna fare se l'utente inserisce un numero negativo? Inserire semplicemente false, ignorare il valore oppure usare %u per leggere direttamente degli unsigned?

Perché non usi un for? Per quanto riguarda il tuo problema basta usare un if-else.

Matnice
Se l'utente inserisce un numero negativo, stampa false. Se uso if else non risolvo lo stesso il problema, perchè il programma deve leggere tutti gli interi, e poi solo se tutti gli interi sono >3, visualizzare true. Questo significa che bisognache il programa legga tutti gli interi; non posso subito mettere che se il numero è maggiore di 3 allora visualizza true, perchè ancora non so come saranno gli altri 99 numeri. Non so se mi sono spiegato bene

vict85
Beh, il if-else ci sarà lo stesso ma fuori. Hai bisogno di una variabile aggiuntiva. Potresti per esempio memorizzare il minimo oppure avere una variabile che poni a zero e metti a 1 per ogni elemento che è minore o uguale a 3 (o con 1 e 0 scambiati).

Matnice
Ok, grazie. Adesso provo e ti faccio sapere se riesco

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.