while в java script
Код:
<html>
<boby>
<script>
function summa(b)
{
var c;
c=4*b;
return c;
}
var num;
var c=new Array();
while(b!=-1)
{
var b=Number(prompt("Enter number: ",""));
c[num-1]=summa(b);
num++;
if (b==-1)
{
alert("Number=-1,this program has been stopped");
break;
}
else if (isNaN(b))
{
alert("This is not a number, repeat plz");
continue;
}
else if (b==" ")
{
alert("This slot is null, repeat plz");
continue;
}
document.write("a=4"+" b="+b+" c="+c[num-1]+"<br>");
}
</script>
</body>
</html>
<boby>
<script>
function summa(b)
{
var c;
c=4*b;
return c;
}
var num;
var c=new Array();
while(b!=-1)
{
var b=Number(prompt("Enter number: ",""));
c[num-1]=summa(b);
num++;
if (b==-1)
{
alert("Number=-1,this program has been stopped");
break;
}
else if (isNaN(b))
{
alert("This is not a number, repeat plz");
continue;
}
else if (b==" ")
{
alert("This slot is null, repeat plz");
continue;
}
document.write("a=4"+" b="+b+" c="+c[num-1]+"<br>");
}
</script>
</body>
</html>
Если в коде оставить c[num], то первое значение оно не считает. С циклом for все нормально, а что я не правильно делаю в while ? Спасибо:p
перед закрытием скрипта сделай
Код:
for(var z in c)
document.write('c['+z+']='+c[z]+'<br />');
document.write('c['+z+']='+c[z]+'<br />');
Вот поправленное:
Код:
<html>
<boby>
<script>
function summa(b)
{
var c;
c=4*b;
return c;
}
var num=-1;
var c=new Array();
while(b!=-1)
{
var b=Number(prompt("Enter number: ",""));
if (b==-1)
{
alert("Number=-1,this program has been stopped");
break;
}
else if (isNaN(b))
{
alert("This is not a number, repeat plz");
continue;
}
else if (b==" ")
{
alert("This slot is null, repeat plz");
continue;
}
c[++num]=summa(b);
document.write("a=4"+" b="+b+" c="+c[num]+"<br>");
}
for(var z in c)
document.write('c['+z+']='+c[z]+'<br />');
</script>
</body>
</html>
<boby>
<script>
function summa(b)
{
var c;
c=4*b;
return c;
}
var num=-1;
var c=new Array();
while(b!=-1)
{
var b=Number(prompt("Enter number: ",""));
if (b==-1)
{
alert("Number=-1,this program has been stopped");
break;
}
else if (isNaN(b))
{
alert("This is not a number, repeat plz");
continue;
}
else if (b==" ")
{
alert("This slot is null, repeat plz");
continue;
}
c[++num]=summa(b);
document.write("a=4"+" b="+b+" c="+c[num]+"<br>");
}
for(var z in c)
document.write('c['+z+']='+c[z]+'<br />');
</script>
</body>
</html>
А еще вопрос. В данном коде я делаю проверку на заполнение строки, если по запросу prompt я не ввожу ничего, оно мне пишет, что строка пустая, повторите. Такая же ситуация происходит когда я ввожу 0. Как сделать так, чтобы когда я ввожу 0 код работал, а когда строка пустая, показывало ошибку и предложило повторить ввод?
Код:
<html>
<boby>
<script>
function summa(b)
{
var c;
c=4*b;
return c;
}
var num=-1;
var c=new Array();
while(true)
{
var b=parseInt(prompt("Enter number: ",""));
if (isNaN(b))
{
alert("This is not a number, repeat plz");
continue;
}
else if (b==-1)
{
alert("Number=-1,this program has been stopped");
break;
}
c[++num]=summa(b);
document.write("a=4"+" b="+b+" c="+c[num]+"<br>");
}
for(var z in c)
document.write('c['+z+']='+c[z]+'<br />');
</script>
</body>
</html>
<boby>
<script>
function summa(b)
{
var c;
c=4*b;
return c;
}
var num=-1;
var c=new Array();
while(true)
{
var b=parseInt(prompt("Enter number: ",""));
if (isNaN(b))
{
alert("This is not a number, repeat plz");
continue;
}
else if (b==-1)
{
alert("Number=-1,this program has been stopped");
break;
}
c[++num]=summa(b);
document.write("a=4"+" b="+b+" c="+c[num]+"<br>");
}
for(var z in c)
document.write('c['+z+']='+c[z]+'<br />');
</script>
</body>
</html>