problemi con if

dominik miotla

Nuovo Utente
17 Mag 2016
3
3
3
Salve sono un ragazzo di 17 anni e amo l'informatica...da poco mi sono inoltrato nel mondo della programmazione ho ragiunto dei livelli abbastanza altri per quanto riguarda l'html e il css...ma ho ancora qualche dubbio sul javascript.
Ho relaizzato un algoritmo per calcolare l'area di un triangolo..effetuo un controllo che la base e l'altezza siano maggiori di 0....qualcuno di voi mi sa dire in che modo posso rinserire i dati nel momento in cui la condizione è falsa?
Posto il codice JavaScript.

<script>
var b=prompt("Inserisci la lunghezza della base del triangolo:");
b=parseInt(b);
if (b>0) {
var a=prompt("inserisci la lughezza dell'altezza del triangolo:");
a=parseInt(a);
if (a>0) {
var Ar=(a*b)/2;
document.write("L'area del triangolo e' di : " + Ar);
}
else{
alert("L'altezza deve essere maggiore di 0");
}
}
else{
alert("La base deve essere maggiore di 0");
}
</script>
 
  • Like
Reactions: ottofonsuppost
Utilizzi una condizione WHILE che esegue in continuazione il controllo MINORE o UGUALE A ZERO, e che esce dal LOOP INFINITO solo in presenza di un numero giusto; l'utente imbranato potrebbe anche inserire una lettera, un carattere; quindi puoi aggiungere un'istruzione SWITCH che con i CASE annulla le sbadataggini, avvisando chi sta inserendo i dati, del suo errore appena commesso. Baci e abbracci, OTTOFONSUPPOST.
 
Ultima modifica:
  • Like
Reactions: dominik miotla
Mai sottovalutare la potenza di un ciclo WHILE. Un ciclo WHILE è instancabile; capace di eseguire un blocco di istruzioni all'infinito. Non farti ingannare dal listato che ti allego: un ciclo WHILE non ha bisogno di un x++, di una variabile da incrementare come i poveri cicli FOR.

Copiati il listato nel BLOCCO NOTE e salvalo col nome CicloWHILE.HTLM
Appena caricherai la pagina CicloWHILE, siccome la X parte da MENO 14
il ciclo stamperà i numeri finchè saranno minori o uguali a ZERO.
Poi nel blocco note, cambia la X a -20, risalvala con estensione HTLM
e vedrai che il ciclo WHILE non sgarra mai.

Quindi nel tuo programma, prima che l'utente inserisca un numero, farai partire un ciclo WHILE che non smetterà mai di ripetere le istruzioni di INPUT sino a quando l'utente non avrà inserito un numero maggiore di ZERO.
Ti conviene inserire un'istruzione IF all'interno del ciclo WHILE, prima della parantesi graffa chiusa, che prevede che se viene inserito STOP il ciclo termina.

IF x= "stop" BREAK

Baci e abbracci, OTTOFONSUPPOST.
Codice:
<!DOCTYPE html>
<html> <body>
<script type="text/javascript">

x=-14

while(x<=0) {
document.write("<tr>");
document.write("<td>"+x+"</td");
document.write("</tr>")

x++ }


</script> </html>
 
Ultima modifica:
  • Like
Reactions: dominik miotla

Discussioni simili