JavaScripti tsüklitega koodis vigade otsimine
Järgmistes ülesannetes on mõni programmeerija kirjutanud koodi ja võib-olla teinud selles vigu. Sa pead kontrollima, kas kood teeb seda, mida on kirjeldatud. Kui kood töötab valesti, pead sa vead parandama.
Kood peaks väljastama numbrid 0 kuni 10:
for (let i = 0; i > 10; i++) {
console.log(i);
}
Kood peaks väljastama numbrid 10 kuni 0:
for (let i = 10; i > 0; i++) {
console.log(i);
}
Kood peaks väljastama numbrid 10 kuni 0:
for (let i = 10; i == 0; i--) {
console.log(i);
}
Kood peaks väljastama numbrid 0 kuni 10:
let i = 0;
while (i >= 10) {
console.log(i);
i++;
}
Kood peaks leidma täisarvude
summa 1 kuni 10:
let res;
for (let i = 1; i <= 10; i++) {
res += i;
}
console.log(res);
Kood peaks leidma täisarvude
korrutise 1 kuni 10:
let res = 0;
for (let i = 1; i <= 10; i++) {
res *= i;
}
console.log(res);
Kood peaks leidma massiivi elementide summa:
let arr = ['1', '2', '3', '4', '5'];
let sum = 0;
for (let elem of arr) {
sum += elem;
}
console.log(sum); // peaks väljastama 15
Kood peaks leidma massiivi elementide summa:
let arr = ['1', '2', '3', '4', '5'];
let sum = '';
for (let elem of arr) {
sum += +elem;
}
console.log(sum); // peaks väljastama 15
Kood peaks leidma massiivi elementide summa:
let arr = ['1', '2', '3', '4', '5'];
let sum = 0;
for (let elem of arr) {
sum = +elem;
}
console.log(sum); // peaks väljastama 15
Kood peaks leidma massiivi elementide summa,
kuid alati väljastab NaN:
let arr = ['1', '2', '3', '4', '5'];
let sum = 0;
for (let i = 0; i <= arr.length; i++) {
sum += +arr[i];
}
console.log(sum); // mingil põhjusel väljastab NaN
Kood peaks leidma massiivi elementide summa:
let arr = ['1', '2', '3', '4', '5'];
let sum = 0;
for (let i = 0; i < arr.length - 1; i++) {
sum += +arr[i];
}
console.log(sum); // mingil põhjusel ei väljasta 15
Kood peaks leidma massiivi elementide summa:
let arr = ['1', '2', '3', '4', '5'];
let sum = 0;
for (let i = 0; i < arr.length; i++) {
sum += +i;
}
console.log(sum); // mingil põhjusel ei väljasta 15
Kood peaks tõstma iga massiivi elemendi ruutu:
let arr = [1, 2, 3, 4, 5];
for (let elem of arr) {
elem = elem ** 2;
}
console.log(arr);
Kood peaks täitma massiivi
arvudega 1 kuni 5:
let arr;
for (let i = 1; i <= 5; i++) {
arr.push(i);
}
console.log(arr);
Kood peaks leidma objekti elementide summa:
let obj = {a: 1, b: 2, c: 3};
let sum = 0;
for (let elem in obj) {
sum += elem;
}
console.log(sum);
Kood peaks leidma objekti elementide summa:
let obj = {a: 1, b: 2, c: 3};
let sum = 0;
for (let key in obj) {
sum = +obj.key;
}
console.log(sum);
Kood peaks kontrollima, kas massiivis
on number 3 või mitte:
let arr = [1, 2, 3, 4, 5];
let res = '';
for (let elem of arr) {
if (elem === 3) {
res = '+++';
} else {
res = '---';
}
}
console.log(res);
Kood peaks täitma massiivi arvudega
1 kuni 5:
for (let i = 1; i <= 5; i++) {
arr.push(i);
}
console.log(arr);
Kood peaks kontrollima, kas massiivis
on number 3 või mitte:
let arr = [1, 2, 3, 4, 5];
let res = false;
for (let elem of arr) {
if (elem === 3) {
let res = true;
break;
}
}
console.log(res);
Kood peaks väljastama ainult paarisarvulised elemendid massiivist:
let arr = [1, 2, 3, 4, 5];
for (let elem of arr) {
if (elem % 2 = 0) {
console.log(elem);
}
}
Kood peaks kirjutama uude massiivi ainult vanema massiivi paaritud elemendid:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
for (let elem of arr) {
if (elem % 2 != 0) {
res.push(elem);
}
}
console.log(res);