Quote Originariamente inviata da peter_pierre Visualizza il messaggio
Ciao, sono nuovo.... spero di spiegarmi meglio che posso
vorrei un aiuto su questo problema...riguardo allo stop all'interno di un 'loop' o con un if.
questo è il quesito in inglese (molto semplice):
Read an undetermined number of pairs values M and N (stop when any of these values is less or equal to zero). For each pair, print the sequence from the smallest to the biggest (including both) and the sum of consecutive integers between them (including both).
io ho scritto in questo modo il risultato:
var input = require('fs').readFileSync('/dev/stdin', 'utf8');var lines = input.split('\n');var rec = lines[0].split(' ');var a = parseInt(rec[0]);var b = parseInt(rec[1]);var d1 = 0;var j = '';var j1 = 0;var i = 0;if (a<=0||b<=0) { break; }mag(a,b);function mag(a,b) { if (a>b) { d1 = a; a = b; b = d1; } for (i=a;i<=b;i++) { j += i + " "; j1 += i; } console.log(j + 'Sum=' + j1);}

il break in JavaScript 12.18 non lo accetta!
come mai ? ci sono altre possibilità di uscire dal programma ?
ho provato con process.keycode = 0; (al posto di break) ma non lo esegue...
Ciao,
ho provato a ordinare il tuo codice

var input = require('fs').readFileSync('/dev/stdin', 'utf8');
var lines = input.split('\n');
var rec = lines[0].split(' ');
var a = parseInt(rec[0]);
var b = parseInt(rec[1]);
var d1 = 0;
var j = '';
var j1 = 0;
var i = 0;
if (a<=0||b<=0) { break; }
mag(a,b);
function mag(a,b) {
if (a>b) {
d1 = a;
a = b;
b = d1;
}
for (i=a;i<=b;i++) {
j += i + " ";
j1 += i;
}
console.log(j + 'Sum=' + j1);
}

Il break si usa per uscire da cicli. Se vuoi interrompere prima l'esecuzione (quindi se a o b sono <= 0) metti una return

Il break me lo aspetto all'interno di un ciclo for, while