У меня проблема с этим скриптом, что-то не так. Rnumer остается неопределенным. Этот сценарий должен возвращать и записывать все неравные цифры из списка случайных чисел. Может кто-нибудь сказать мне, что я делаю неправильно. Заранее спасибоПеременная Javascript остается неопределенной
var Rnumber = new Array();
for (i = 0; i<= 100;i++)
{
Rnumber[i] = Math.ceil(Math.random()*101);
// document.write(Rnumber[i] + "<br/>");
}
function unevenAndDivisible(Rnumber)
{
var remainder = new Array();
for (i = 0; i<= 100; i++)
{
remainder = parseInt(Rnumber[i])%2;
}
return remainder;
}
document.write(unevenAndDivisible());
Изменен
var Rnumber = new Array();
for (i = 0; i<= 100;i++)
{
Rnumber[i] = Math.ceil(Math.random()*101);
// document.write(Rnumber[i] + "<br/>");
}
function unevenAndDivisible(Rnumber)
{
var remainder = new Array();
for (i = 0; i<= 100; i++)
{
remainder[i] = Rnumber[i]%2;
}
return remainder;
}
document.write(unevenAndDivisible(Rnumber));
но теперь я получаю результат: 0,1,0,0,1,0,0,0,1,1,0,0 , 1,0,1,1,1 ....
Я просто хочу, может быть, я попросил его неправильно в первый раз, чтобы написать неровные номера из случайного списка Rnumbers Тогда мне нужно разделить это на 7 и вернуть это.
EDIT
Allmost все проблемы ясны, спасибо всем за это. Их еще остается вопрос: В этом коде ниже он принимает только первое неравномерное значение из остатка, и я хочу, чтобы он принял все значения, которые не равны следующему оператору if, чтобы проверить% 7. Может быть, вы видите проблему лучше, если вы запустите его для youreself
var Rnumber = new Array();
for (i = 0; i<= 100;i++)
{
Rnumber[i] = Math.ceil(Math.random()*101);
}
function unevenAndDivisible()
{
var remainder = [];
var answer = [];
for (i = 0; i<= 100; i++)
{
if (Rnumber[i]%2 !== 0)
{
remainder.push(Rnumber[i]);
for (c = 0; c <= remainder.length;c++)
{
if (remainder[c]%7 == 0)
{
answer.push(remainder[c]);
}
}
}
}
return answer;
}
answer = unevenAndDivisible();
document.write(answer);
Проблема решена, спасибо всем
Ваше 'Rnumber' [отлично настроено] (http://jsfiddle.net/davidThomas/tkttD/) (в Chromium 14/Ubuntu 11.04), но вы, кажется, не передаете ожидаемый аргумент' unevenAndDivisible() ', что, вероятно, является проблемой. ** Изменить **, что вы пытаетесь достичь с помощью вызова функции? Оцените остаток * всех * чисел или просто * один * номер ..? Что-то другое? –
Я редактирую свой вопрос, может быть, его более четко сейчас – JochemQuery
Если у вас есть быстрый взгляд на мой ответ, я думаю, что он должен делать то, что вам нужно ... –