JavaScript1 - vjezbe sa predavanja Flashcards
Zatražiti od korisnika unos njegove godine rođenja (koristiti prompt).
Izračunati starost korisnika i ispisati odgovarajuću poruku ( ‘Punoljetni ste’ / ‘Niste punoljetni’).
Ne uzeti u obzir ako korisnik unese nevaljanu godinu (npr. 2018) - u tom slučaju ispisati odgovarajuću poruku.
var birthYear = parseInt(prompt(‘Unesite godinu rodjenja:’), 10);
if (birthYear > 1900 && birthYear <= 2017) { var age = 2017 - birthYear;
if (age >= 18) { console.log('Punoljetni ste.'); } else { console.log('Niste punoljetni.'); } } else { console.log('Pogresan unos.'); }
Učitati 2 različita broja.
Ako su oba parna, podijeliti veći broj sa manjim.
Ako su oba neparna, od većeg broja oduzeti manji.
Ako je jedan paran drugi neparan onda ih pomnožiti.
Ispisati rezultat svake operacije.
var num1 = parseInt(prompt('Unesite prvi broj:'), 10), num2 = parseInt(prompt('Unesite drugi broj:'), 10), result;
if (num1 % 2 === 0 && num2 % 2 === 0) {
result = num1 > num2 ? num1 / num2 : num2 / num1;
} else if (num1 % 2 !== 0 && num2 % 2 !== 0) {
result = num1 > num2 ? num1 - num2 : num2 - num1;
} else {
result = num1*num2;
}
console.log(‘Rezultat operacije je ‘ + result);
Učitati 2 cijela troznamenkasta broja.
Ukoliko uneseni broj nije troznamenkast, odbaciti ga.
Zbrojiti zadnje znamenke svakog unesenog broja i ispisati broj.
var num1 = parseInt(prompt('Unesite prvi broj:')), num2 = parseInt(prompt('Unesite drugi broj:')), digitSum = 0;
// Na ovaj način ćemo osigurati da u zbroj spremimo zadnju znamenku jedino ako se radi o troznamenkastom broju.
// Npr, ako je prvi troznamenkast, a drugi ne, zbrojit će samo zadnju znamenku prvog broja.
// Ako su oba troznamenkasta, zbrojit će zadnje znamenke oba broja.
if (num1 > 99 && num1 < 1000) {
digitSum += num1 % 10;
}
if (num2 > 99 && num2 < 1000) {
digitSum += num2 % 10;
}
console.log(‘Zbroj zadnjih znamenki iznosi ‘ + digitSum);
Napravite jednostavan kalkulator.
Omogućite korisniku da pomoću prompt funkcije unese dva broja i operaciju (+, -, *, /).
Ispišite odgovarajuću poruku sa rezultatom, a ako operacija nije podržana ispišite ‘Operacija ne postoji’.
(Pripazite kod operacije dijeljenja)
var num1 = parseInt(prompt('Unesite prvi broj:')), num2 = parseInt(prompt('Unesite drugi broj:')), operation = prompt('Unesite znak operacije:'), result;
if (operation === '+') { result = num1 + num2; } else if (operation === '-') { result = num1 - num2; } else if (operation === '*') { result = num1 * num2; } else if (operation === '/') { if (num2 !== 0) { result = num1 / num2; } else { result = 'Infinity'; console.log('Nije moguće dijeliti s nulom.'); } } else { result = 'error'; console.log('Operacija ne postoji.'); }
console.log(num1 + ‘ ‘ + operation + ‘ ‘ + num2 + ‘ = ‘ + result);
Napravite kalkulator koristeći switch-case.
var num1 = parseInt(prompt('Unesite prvi broj:')), num2 = parseInt(prompt('Unesite drugi broj:')), operation = prompt('Unesite znak operacije:'), result;
switch (operation) { case '+': result = num1 + num2; break; case '-': result = num1 - num2; break; case '*': result = num1 * num2; break; case '/': if (num2 !== 0) { result = num1 / num2; } else { result = 'Infinity'; console.log('Nije moguće dijeliti s nulom.'); } break; default: result = 'error'; console.log('Operacija ne postoji.'); }
console.log(num1 + ‘ ‘ + operation + ‘ ‘ + num2 + ‘ = ‘ + result);
Za uneseni mjesec (riječima) ispišite kojem godišnjem dobu pripada.
Koristiti switch-case.
// napisi zadatak
Napisati program koji ispisuje sve parne brojeve između 1 i 20.
var count = 1;
while (count <= 20) {
if (count % 2 === 0) console.log(count);
count++;
}
Napisati program koji od korisnika traži unos 5 pozitivnih parnih brojeva, zatim ispisuje njihov umnožak.
Ukoliko ih u više od 10 pokušaja nije uspio unijeti, ispisati poruku o grešci i završiti program.
var positiveCount = 0, tryCount = 0, product = 1, input;
while (positiveCount < 5 && tryCount < 10) {
input = parseInt(prompt(‘Enter positive number: ‘), 10);
if (input > 0 && input % 2 === 0) {
product *= input;
positiveCount++;
}
tryCount++;
}
if (positiveCount === 5) { console.log('Product: ', product); } else { console.log('Error'); }
Napisati program u kojem korisnik unosi 3 pozitivna troznamenkasta broja.
Ako broj nije pozitivan i troznamenkast, odbaciti ga.
Ispisati zbroj prvih znamenki unesenih brojeva.
var tryCount = 0, sum = 0, input;
do {
input = parseInt(prompt(‘Enter 3 digit number: ‘), 10);
if (input > 99 && input < 1000) { sum += parseInt(input / 100, 10); tryCount++; } } while (tryCount < 3)
console.log(‘Sum: ‘, sum);
Napisati program koji ispisuje brojeve od 10 do 1.
var i,
len = 0;
for (i = 10; i > len; i–) {
console.log(‘Current count: ‘ + i);
}
Zatražiti unos dvoznamenkastog broja.
Ispisati sve njegove djelitelje.
Ako broj nije dvoznamenkast, ispisati odgovarajuću poruku.
var num = parseInt(prompt(‘Unesite dvoznamenkasti broj:’));
if(num > 9 && num < 100){ for(var i = 1; i <= num; i++){ if(num % i === 0){ console.log(i); } } } else { console.log('Broj nije dvoznamenkast.'); }
Učitati dva broja, zatim ispisati svaki broj između njih koji je djeljiv sa 2 i sa 3.
var num1 = parseInt(prompt('Unesite prvi broj:')), num2 = parseInt(prompt('Unesite drugi broj:')), temp;
if (num1 > num2) { temp = num2; num2 = num1; num1 = temp; }
for (var i = num1; i <= num2; i++) { if (i % 2 === 0 && i % 3 === 0) { console.log(i); } }
Definirati funkciju min(), koja prima dva broja kao argumente i vraća manji od njih.
function min(a, b) { return (a <= b) ? a : b; }
console. log(min(5, 3));
console. log(min(4, 4));
Definirati funkciju maxOfThree(), koja prima tri broja kao argumente i vraća najveći od njih.
function maxOfThree(a, b, c) { if (a > b) { if (a > c) { return a; } else { return c; } } else if (b > c) { return b; } else { return c; } }
console.log(maxOfThree(3, 5, 4));
Napisati funkciju koja će za proslijeđeni mjesec (brojčano), vratiti koliko ima dana u tom mjesecu.
Rezultat ispisati u glavnom programu.
function daysInMonth(month) { var days = 0; // u slučaju da bude unesen nepostojeći mjesec, da vrati nulu
if (month === 1 || month === 3 || month === 5 || month === 7 || month === 8 || month === 10 || month === 12) { days = 31; } else if (month === 4 || month === 6 || month === 9 || month === 11) { days = 30; } else if (month === 2){ days = '28/29'; } return days; } var mon = parseInt(prompt('Unesite mjesec:')); console.log('Mjesec ima ' + daysInMonth(mon) + ' dan/a.');