我的朋友问我帮他做作业,而我被卡住了。这里是分配:查找数组中的最大值(整数集合)
用户必须在第一个提示框中输入数组中的元素数量。然后,他会得到每个号码进入的提示框。现在,输出必须是数组中最大的数字。但这根本行不通。用我的代码下面,我总是得到最伟大的第一位数字的元素。 (这是如果数字为负或正不要紧,代码不会按预期运行)
这里是我的代码(它甚至在的jsfiddle不工作,只是在我的文件)
<button onclick="duzinaNiza()">Do it!</button>
这里是JavaScript的
function duzinaNiza() {
var brClanova = prompt("Enter the number of array elements:");
if (brClanova > 0) {
var niz = new Array();
for (i=0; i<brClanova; i++) {
var redniBr = i+1;
niz[i] = prompt("Enter "+ redniBr +". array number:");
\\ prompt for geting each array element
}
var maximum = niz[0];
for (a=0; a<brClanova; a++) {
if (maximum < niz[a]) {
maximum = niz[a];
}
}
document.write("Greatest value in array is: " + maximum);
}
}
好友proffesor不想使用的功能进行排序数组,这必须用循环来完成。
P.S.是啊,我知道...但不要问有关文件撰写的东西,它必须以这种方式进行打印...
我认为输入是一个字符串,但我不确定。那么,如果没有'parseInt',没有办法从提示中获取数字? (教授是个笨蛋,他不知道这个功能)。 –
您必须解析它,因为字符串比较与整数比较不同。由于Sring会逐字比较字符。所以'11 <9'与一个字符串比较。因为1小于9,并且将比较第二个数字。 – Niels
好吧que sera sera,我会用parseInt()或Number()。现在它工作正常。谢谢! –