Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Stránky: 1
Return an array consisting of the largest number from each provided sub-array.
PoraĎte mi prosím co je špatně. Kod se mi ani nespustí.
function largestOfFour(arr)
{
for (i=0; i > arr.length; i++)
{
var largest = arr[i][0];
for (k = 0; k > arr[i].length; k++)
{
if (largest < arr[i][k] )
{
largest = arr[i][k];
}
}
return largest;
}
}
largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);Offline
↑ Google:
Dobrý den. Javascriptu nehovím, takže bez záruky:
Řekl bych, že
a) v úvodních instrukcích obou cyklů for by měla být podmínka "<",
b) algoritmus je zřejmě třeba upravit, protože podle mě se funkce ukončí hned po prvním průběhu vnitřní smyčkou, což asi nebude záměr.
Offline
↑ Google:
1) ty FOR CYKLY máš dobře až na znamenka (asi překlep), má to být:
for (i=0; i < arr.length; i++)
a
for (k = 0; k < arr[i].length; k++)
2)zřejmě chceš taky vytvořit nové pole newArr kam budeš ukládat ta největší čísla z každého sub-array:
function largestOfFour(arr)
{
var newArr = []; //nové zatím prazdne pole pro budoucí výsledky
for (i=0; i < arr.length; i++)
{
var largest = arr[i][0];
for (k = 0; k < arr[i].length; k++)
{
if (largest < arr[i][k] )
largest = arr[i][k];
}
newArr.push(largest); //do toho prazdného pole se budou strkat ty největší čísla z každého sub-array
}
return newArr; //vypíše se výsledek
}
largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);Offline
Stránky: 1