Javascript1 - zbirka zadataka Flashcards

1
Q

Zatražiti od korisnika da unese 2 broja. Ukoliko je prvi broj veći od drugog, pozvati funkciju koja će oduzeti drugi od prvog. U suprotnom, pozvati funkciju koja će ih zbrojiti. Ispisati rezultat u oba slučaja.

A

var broj1 = parseInt(prompt(‘Unesite prvi broj:’)); var broj2 = parseInt(prompt(‘Unesite drugi broj:’));

function zbroj(br1, br2){ return br1 + br2; }

function razlika(br1, br2){ return br1 - br2; }

if(broj1 > broj2){ console.log(‘Razlika brojeva je: ‘ + razlika(broj1, broj2)); } else{ console.log(‘Zbroj brojeva je: ‘ + zbroj(broj1, broj2)); }

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Jedostavan kalkulator - Zatražiti od korisnika unos dva broja i znaka za operaciju koju želi obaviti nad brojevima (+, -, *, /). Napisati funkciju koja imitira rad jednostavnog kalkulatora: prima dva broja, i znak operacije. Ovisno o znaku, obaviti traženu operaciju. Funkcija vraća rezultat u glavni program, zatim je on ispisuje.

A
function main() {
    let num1 = parseInt(prompt('Enter first number'));
    let num2 = parseInt(prompt('Enter second number'));
    let oper = prompt('Enter operation');
console.log(calculator(num1, num2, oper));

}

function calculator(a, b, op) {

    switch(op) {
       case '+':
       return a + b;
       break;
       case '-':
       return a - b;
       break;
       case '*':
       return a * b;
       break;
       case '/':
       return a / b;
       break;
       default: 
       return 'WRONG INPUT!'; 
    }
}

main();

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Pomoću prompt-a korisniku postaviti jednostavan matematički izraz (npr: Koliko je 2+2?). U funkciji provjeriti točnost unesenog odgovora. Ako je točan, ispisati poruku i vratiti true. Ako nije točan, vratiti točan rezultat u glavni program, gdje se zatim treba ispisati poruka “Vaš odgovor je netočan, točan odgovor glasi: …”.

A
let question = '2 + 2?';
let correctAnswer = '4';
let userAnswer = parseInt(prompt(question));
console.log(checkAnswer(correctAnswer, userAnswer));
function checkAnswer(cor, userA) {
    if(userA == cor) {
        return 'correct!';
    }else {
    return 'wrong answer, the answer is ' + correctAnswer;
} }
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Napraviti funkciju koja je na proslijeđeni mjesec vratiti koliko dana ima u tom mjesecu. Rezultat ispisati u glavnom programu.

A

function br_dana(mjesec){ if(mjesec === “sijecanj” || mjesec === “ozujak” || mjesec === “svibanj” || mjesec === “srpanj” || mjesec === “kolovoz” || mjesec === “listopad” || mjesec === “prosinac”){ return 31; } else if(mjesec === “travanj” || mjesec === “lipanj” || mjesec === “rujan”|| mjesec === “studeni”){ return 30; } else if(mjesec === “veljaca”){ return 28; } else { return “Pogresno ste unijeli naziv mjeseca!Molimo unesite ponovo”; } } var mjesec = prompt(“Molimo unesite mjesec, čiji zelite znati broj dana : “); var broj = br_dana(mjesec); console.log(“Mjesec “ + mjesec + “ ima “ +broj+ “ dana!”);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Napisati funkciju koja će zahtijevati od korisnika da unese 5 brojeva i spremi ih u niz (osigurati da ih ima točno 5). Funkcija „check()“ treba provjeriti sve elemente iz niza i samo parne negativne pomnožiti same sa sobom. U glavnom programu ispisati niz.

A

let arr = [2, 6, 11, 12, -5];

let manipulatedArray = arr.map(function(el){

    if(el % 2 === 0 || el < 0){
        return el * el;
    } else 
    {
        return el;
    }

});

console.log(manipulatedArray);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Napisati funkciju koja će izračunati porez na uplaćeni iznos. Stopa poreza za iznose između 100 i 500 je 1%, između 500 i 1000 je 5%, a preko 1000 10%. Funkcija kao parametar prima iznos, a vraća iznos poreza.

A
function izracunaj(iznos){     var porez; 
    if(iznos  >=  100 &amp;&amp; iznos  < 500){        porez = iznos*0.01;        return porez;     }     else if(iznos >=500 &amp;&amp; iznos  <  1000){        porez  =  iznos*0.05;        return porez; 
}     else if(iznos  >=  1000){        porez = iznos*0.1;        return porez;     }     else{        return "Porez se ne racuna za iznose manje od 100";     }  }  console.log(izracunaj(9000));
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Napisati funkciju koja će vraćati tiražu za prodani broj ploča. Ako je ploča prodana u više od 100 000 primjeraka, treba vratiti ‘srebrena’, preko 200 000 ‘zlatna’ i preko 500 000 ‘platinasta’. Funkcija prima broj prodanih primjeraka.

A
function tiraz(numSold) {
    if(numSold >= 100000) {
        return 'SREBRENA';
    } else if (numSold >= 200000) {
        return 'ZLATNA';
    } else if (numSold >= 500000) {
        return 'PLATINASTA'
    }
}

console.log(tiraz(220000));

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Napisati funkciju koja će za proslijeđeni tekst vraćati koliko ima dvotočki, a koliko razmaka.

A
let tekst = 'Rekao sam mu: nemoj ici, ici tako, daleko';
let prazno = 0;
let dvotacka = 0;
for(let i = 0; i < tekst.length; i++) {
    if(tekst[i] === ':') {
        dvotacka++;
    }else if(tekst[i] === ' ') {
        prazno++;
    }
}

console. log(‘Dvotacka:’, dvotacka);
console. log(‘Prazno:’, prazno);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Napisati funkciju koja će proslijeđenu rečenicu ispisati unatrag, ali i zamijeniti mala i velika slova. Funkciju pozvati u glavnom programu.

A

let citat = ‘Verujem u to da svako ima pravo da živi kako god želi, sve dok ne povređuje druge.’;

function processQuote(q) {

let newQ = q.split(‘’);

let inversedQ = newQ.map(function(el){
    if(el === el.toLowerCase()) {
      return el = el.toUpperCase();
    }else {
      return  el = el.toLowerCase();
    }    

}).reverse().join(‘’);
console.log(inversedQ);
}

processQuote(citat);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Zatražiti od korisnika da unese neki tekst. Proslijediti tekst funkciji koja će provjeriti je li uneseni tekst palindrom. (Palindrom je riječ koja se isto čita i sprijeda i unatrag.)

A

let letters = [];
let word = ‘sirimamiris’;
let rword = ‘’;

for(let i = 0; i < word.length; i++) {
  letters.push(word[i]);
}
for(let j = 0; j < word.length; j++) {
    rword += letters.pop();
}
if(word === rword) {
    console.log('Rijec je palindrom');
}else {
    console.log('Rijec nije palindorm');
}
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Napisati funkciju koja će primati visinu u centimetrima kao parametar i koja će vratiti string koji sadrži visinu izraženu u metrima i centimetrima. Pozvati tu funkciju i ispisati rezultat. (Ako je parametar 178, funkcija treba vratiti “1m i 78cm”) .

A
function preracunaj_visinu(cm){    var m = parseInt(cm/100);    cm = cm%100;    return "Visoki ste: " + m + " m i " + cm +" cm.";  
 }   console.log(preracunaj_visinu(179));
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Napisati funkciju „convertToSeconds()“ koja će proslijeđene sate pretvoriti u sekunde. Konverziju vršiti postepeno, i to na način da će se unutar ove funkcije, kreirati funkcija „convertToMinutes()“ koja će prvo poslane sate pretvoriti u minute i nakon toga vratiti u glavnu funkciju koja će završiti konverziju.

A

function convertToSeconds(h) {

    let minutes = function(h) {
        return h * 60;
    }
    let seconds = minutes(h) * 60;
    return seconds;
}

console.log(convertToSeconds(6));

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Napisati funkciju koja će kao parametar primiti broj koševa i vraćati poziciju ako je u top 5 strijelca u NBA ligi. Ako je broj veći od: a) 31419, vratiti 5, b) 32292, vratiti 4, c) 32482, vratiti 3, d) 36928, vratiti 2, e) 38387, vratiti 1.

A

//

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Napisati drugu funkciju koja će primiti ime igrača i broj koševa. Funkcija treba ispisati ime igrača i koliko je koševa postigao u karijeri te pomoću funkcije iz prvog zadatka provjeriti nalazi li se njegov broj koševa u top 5 strijelaca u NBA ligi te ispisati koju je poziciju zauzeo ako jest.

A

//

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
Ispisati sve property-e objekta i njihove vrijednosti: 
var ob = { 
 ‘naziv’ :’The Wire’, 
 ‘ocjena’ : 9.4, 
 ‘autor’ : ‘David Simon’ 
};
A

for(var prop in ob){ console.log(“Property: “+prop+” ima vrijednost: “ + ob[prop]); }

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Deklarirati objekt „zgrada“ i property-e adresa, broj zgrade, broj katova, broj stanova. Zatražiti od korisnika da preko prompt funkcije unese vrijednosti property-a te ispisati dodijeljene vrijednosti: ‘‘Živim u zgradi broj’’ +broj zgrade+’’ na adresi’‘+adresa+’‘koja ima’‘+broj katova+’‘katova i ukupno’‘+broj stanova+’‘stanova.’’

A

//

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Deklarirati objekt „test“ koji ima svojstva: ostvareni_bodovi, max_bodovi i ocjena. Dodati metodu koja računa ocjenu s obzirom na iznos ostvarenih i maksimalnih bodova za taj test.

var test = { ostvareni_bodovi: 8,

A

max_bodovi: 10, ocjena: 0, racunajOcjenu: function(){ this.ocjena = (this.ostvareni_bodovi * 5 ) / this.max_bodovi; } }; test.racunajOcjenu(); console.log(‘Ostvarena je ocjena ‘ + test.ocjena);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Deklarirati objekt „osoba“ koja će imati svojstva ime, prezime i kilogrami. Ispisati vrijednosti koje ste unijeli. Zatim deklarirati metodu koja će računati koliko kilograma ta osoba ima na Marsu. Metodi proslijediti broj kilograma koji ste unijeli. Opet ispisati vrijednosti koje ste postavili. (Ubrzanje sile teže na Marsu iznosi 0.38 ubrzanja sile teže na Zemlji.)

A
let osoba = {
    ime: 'Admir',
    prezime: 'Husic',
    tezina : 88,
    izracunajTezinuNaMarsu: function(kg) {
        this.tezinaNaMarsu = kg * 0.38;
    }
}

osoba. izracunajTezinuNaMarsu(osoba.tezina);
console. log(osoba.tezinaNaMarsu);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Zatražiti od korisnika da unese property-e za objekt „grad“. Potrebno je unijeti ime grada, broj stanovnika, površinu te gradonačelnika. Za ime grada i gradonačelnika provjeriti da nije unesen nijedan broj, a za broj stanovnika i površinu provjeriti da su uneseni samo brojevi. Prije dodijeljivanja vrijednosti površini dodati ‘km2’ i tek onda ispisati sve vezano za objekt „grad“.

A
let grad = {
    ime:  null,
    gradonacelnik: null,
    brojStanovnika: null,
    povrsina: null
}
let ulazIme = prompt('Unesi ime grada');
let ulazImeGradonacelnika = prompt('Unesi ime gradonacelnika');
let ulazBrojStanovnika = parseInt(prompt('Unesi broj stanovnika'));
let ulazPovrsina = parseInt(prompt('Unesi povrsinu grada'));

let regExLetters = /^[a-zA-z\s]+$/;
let regExNumbers = /^[0-9]+$/;

if(regExLetters.test(ulazIme) && regExLetters.test(ulazImeGradonacelnika)
&& regExNumbers.test(ulazBrojStanovnika) && regExNumbers.test(ulazPovrsina)){
grad.ime = ulazIme;
grad.gradonacelnik = ulazImeGradonacelnika;
grad.brojStanovnika = ulazBrojStanovnika;
grad.povrsina = ulazPovrsina + ‘ km2’;
}else {
console.log(‘Jedan od podataka nije u ispravnom formatu’);
}

console.log(grad);
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Kreirati objekt „time“ koji ce imati property-e hours, minutes i seconds kojima ćete dodjeliti proizvoljene vrijednosti. Napraviti i metode: „convertHours“, koja će vraćati dodjeljene sate pretvorene u minute, „convertMinutes“ koja će vraćati dodjeljene minute (uključujući i sate koje smo pretvorili u minute), pretvorene u sekunde, „convertSeconds“ koja će vraćati ukupan broj sekundi te metodu „print()“ koja će ispisivati vrijeme u obliku HH:MM:SS.

A
let time = {
    hours: 2,
    minutes: 20,
    seconds: 35,
    convertHours: function() {
       return this.hours * 60;
    },
    convertMinutes: function() {
       return (this.minutes + this.convertHours())
    },
    convertSeconds: function() {
        return (this.convertMinutes()* 60) + this.seconds 
    }
}
function print() {
    console.log(time.hours, ':', time.minutes, ':', time.seconds)
    console.log(time.convertHours());
    console.log(time.convertMinutes());
    console.log(time.convertSeconds());
}

print();

21
Q

Deklarirati objekt koji će sadržavati ime, prezime, zanimanje, godina_početka_rada, godina_staza i plaću neke osobe. Objekt treba imati metodu „povećaj“ koja će dodati 50KM na plaću svaki put kad se staž poveća za godinu (godine_staza računajte kao razliku od trenutne godine od godine_početka rada; metoda „povećaj“ se treba pozivati kao callback funkcija u metodi „staz“ svaki put kad se izračuna da se staž povećao za godinu).

A

//

22
Q

Deklarirati prazan objekt „osoba“. Zatražiti od korisnika unos vrijednosti za slijedeća 3 svojstva objekta: jmbg, ime i prezime. Napisati funkciju koja vrši provjeru za ime i prezime - ne smiju biti kraći od 3 znaka i ne smiju sadržavati brojeve te funkciju za JMBG - ne smije sadržavati ništa osim brojeva i mora imati točno 13 brojeva. Ukoliko provjera nije prošla, funkcija treba ispisati poruku greške i vratiti 0, ukoliko je provjera prošla, funkcija vraća 1, i tek tada treba dodijeliti unesene vrijednosti svojstvima objekta. Nakon svakog unosa pozvati odgovarajuću funkciju.

A

//

23
Q

Deklarirati objekt boja koji će imati property-e R,G,B inicijalno postavljene na 0, te metodu „postavi_boju“ koja će postavljati definiranim property-ma nasumično odabranu nijansu boje (0,255). Pozvati metodu te ispisati dobivenu vrijednost boje u obliku (R,G,B).

A

var color = { R : 0, G : 0, B : 0, pick_color : function(){ return Math.floor(256*Math.random()); }, set_color : function(){ this.R = this.pick_color(); this.G = this.pick_color(); this.B = this.pick_color(); } }; color.set_color(); console.log(color.R +”,”+color.G +”,”+color.B);

24
Q

Zadan je objekt:

var knjige = {    lektira : [{        naziv : "Zločin i kazna",        autor : "Fjodor Mihajlovič Dostojevskog",        br_str : 350,        godina_izdavanja : 1866      }, {        naziv : "Vlak u snijegu",        autor : "Mato Lovrak",        br_str : 150,
godina_izdavanja : 1931      },{        naziv : "Mali princ",        autor : " Antoine de Saint-Exupery",        br_str : 120,        godina_izdavanja : 1943      },{        naziv : "Rat i mir",        autor : "Lav Nikolajevič Tolstoj",        br_str : 300,        godina_izdavanja : 1865      },{        naziv : "Ana Karenjina",        autor : "Lav Nikolajevič Tolstoj",        br_str : 800,        godina_izdavanja : 1873      }]  };  

Ispisati nazive knjiga kronološki poredane.

A
var knjige = {
  lektira: [{
    naziv: "Zločin i kazna",
    autor: "Fjodor Mihajlovič Dostojevskog",
    br_str: 350,
    godina_izdavanja: 1866
  }, {
    naziv: "Vlak u snijegu",
    autor: "Mato Lovrak",
    br_str: 150,
    godina_izdavanja: 1931
  }, {
    naziv: "Mali princ",
    autor: " Antoine de Saint-Exupery",
    br_str: 120,
    godina_izdavanja: 1943
  }, {
    naziv: "Rat i mir",
    autor: "Lav Nikolajevič Tolstoj",
    br_str: 300,
    godina_izdavanja: 1865
  }, {
    naziv: "Ana Karenjina",
    autor: "Lav Nikolajevič Tolstoj",
    br_str: 800,
    godina_izdavanja: 1873
  }]
};

knjige.lektira.sort(function(a, b){

return a.godina_izdavanja > b.godina_izdavanja;

}).forEach(function(el){

console.log(el);

});

25
Q

Ispisati sve knjige koje imaju preko 300 stranica te ispisati autora koji je napisao više od jedne knjige.

A

//

26
Q

Dodati knjigu po vašem izboru i nju sortirati kronološki.

A

//

27
Q

Zadan je objekt:

var phonebook = {    contact1 : {        firstName: "Ana",        lastName: "Anic",        phoneNumber: "063/111-111",        address: ['Ante Starcevica','9','Mostar','88000']      },  contact2 : {        firstName: "Ante", lastName: "Antic",        phoneNumber: "063/222-111",        address: ['Hrvatske mladeži','7','Mostar','88000']      },  contact3 : {        firstName: "Marko",        lastName: "Markic",    phoneNumber: "063/222-333",    address: ['Kraljice Katarine','10','Grude','88340']      },  contact4 : {        firstName: "Hrvoje",        lastName: "Horvat",        phoneNumber: "098/2522-111",        address: ['Jarunska ulica','12','Zagreb','10000']      }  };
Ispisati za svaki kontakt njegovo ime, broj i grad stanovanja.
A
var phonebook = {
    contact1: {
        firstName: "Ana",
        lastName: "Anic",
        phoneNumber: "063/111-111",
        address: ['Ante Starcevica', '9', 'Mostar', '88000']
    },
    contact2: {
        firstName: "Ante",
        lastName: "Antic",
        phoneNumber: "063/222-111",
        address: ['Hrvatske mladeži', '7', 'Mostar', '88000']
    },
    contact3: {
        firstName: "Marko",
        lastName: "Markic",
        phoneNumber: "063/222-333",
        address: ['Kraljice Katarine', '10', 'Grude', '88340']
    },
    contact4: {
        firstName: "Hrvoje",
        lastName: "Horvat",
        phoneNumber: "098/2522-111",
        address: ['Jarunska ulica', '12', 'Zagreb', '10000']
    }
};

Object.keys(phonebook).forEach(function(key){

console.log(‘Name:’, phonebook[key].firstName, ‘Address’, phonebook[key].address[0], phonebook[key].address[1] );
});

//  for(let con in phonebook) {
//     console.log(phonebook[con].firstName);
// }
28
Q

Dodati metodu „search“ koja prima ime kontakta i vraća sve podatke traženog kontakta ili 0 ako nije pronađen. U glavnom programu zatražiti od korisnika unos imena kontakta, pozvati metodu te ispisati podatke nađenog kontakta ili odgovarajuću poruku.

A

//

29
Q

Napisati funkciju „addNewContact()“ za dodavanje novog, petog kontakta u imenik koja od korisnika traži unos podataka (ime, prezime, broj telefona i adresu - ulica, broj ulice, grad i poštanski broj grada). Pozvati funkciju i dodati novi kontakt.

A

//

30
Q

. Napisati funkciju „deleteContact()“ koja prima ime kontakta i briše ga iz imenika. Zatražiti od korisnika unos imena korisnika kojega želi ukloniti zatim to i učiniti.

A

//

31
Q

Deklarirati objekt Film koji će imati svojstva naziv, žanr i trajanje, te metodu koja će ispisivati “Film ‘naziv filma’ je završio u ‘vrijeme zavrsetka’.”. Metodu pozvati kad završi trajanje filma. (setTimeout()).

A
var film = {   naziv: "Avengers:Age of Ultron", 
  zanr: "action",   trajanje: 141,   print: function(){    var today = new Date(),   h = today.getHours(),          m = today.getMinutes(),          s = today.getSeconds();   console.log('Film ' + this.naziv + ' je zavrsio u ' + h + ':' + m + ':' + s);   } }; setTimeout (film.print(), ( film.trajanje*1000 ) );
32
Q

Što će se ispisati i zašto?

var niz = []; function t1(callback){ setTimeout(callback,1000); } t1(function(){ niz.push(2); niz.push(5); }); console.log(niz);

A

//

33
Q

Deklarirati dvije funkcije. Prvoj funkciji proslijediti drugu kao callback parametar. U prvoj funkciji deklarirati objekt „osoba“ i nakon 2 sekunde pozvati drugu funkciju. U drugoj funkciji zatražiti od korisnika da unese property-e ime, prezime, broj godina. Ispisati vrijednosti objekta „osoba“.

A
function dekl_obj(callback){   var osoba = {};   setTimeout(callback(osoba),2000); } function unos_prop(person){   person.firstName = prompt("Unesite ime");   person.lastName = prompt("Unesite prezime");   person.years = prompt("Unesite godine"); 
console.log('Ime:' + person.firstName + ', prezime: ' + person.lastName + ', godine:    ' + person.years); } dekl_obj(unos_prop);
34
Q

Deklarirati objekt „osoba“ sa svojstvima ime, sitost te metode „nahrani“ i „izgladni“ koje trebaju povećati, odnosno smanjiti sitost za 1. U glavnom programu koristeći setTimeout() nakon 5 sekundi pozvati metodu „izgladni“, te ispisati poruku “Gladan sam”, zatim nakon 3 sekunde pozvati metodu „nahrani“ i ispisati “Sit sam”.

A
let osoba = {
    sitost: 10,
    izgladni: function() {
        osoba.sitost--;
        console.log('Gladan sam', osoba.sitost);
    },
    nahrani: function() {
        osoba.sitost++;
        console.log('Sit sam', osoba.sitost);
    }
}

setTimeout(osoba.izgladni, 5000);
setTimeout(osoba.nahrani, 8000);

35
Q

Deklarirati dvije funkcije. Iz glavnog programa pozvati prvu funkciju i proslijediti joj drugu kao callback. Prva funkcija treba od korisnika zatražiti da unese svoje ime, a druga da unese broj godina. Sve rezultate funkcija vratiti i ispisati u glavnom programu preko console.log: ime + ‘’, vi imate’’ + godine + ‘’ godina.’’

A

//

36
Q

Deklarirati objekt „stol“ koji će imati svojstva visina, širina, broj_rezerviranih_stolova. Objekt treba imati i metodu „rezerviraj_stol“ koja će omogućiti rezervaciju stola korisniku na način da se se poveća broj rezerviranih stolova svaki put kad se metoda pozove. Napraviti funkciju koja ispisuje koliki je broj rezerviranih stolova. Tu funkciju proslijediti kao callback funkciju metodi „rezerviraj_stol“. Rezervirajte 5 stolova.

A

//

37
Q

Deklarirati dvije funkcije. Prva funkcija prima drugu funkciju kao callback. U prvoj funkciji zatražiti od korisnika da unesi brojeve sve dok ne unese broj 5. Brojeve spremiti u niz. Zatim niz proslijediti drugoj funkciji koja će svaki uneseni paran broj podijeliti sa dva. Novi niz ispisati kao rezultat.

A

//

38
Q

Deklarirati 3 funkcije proizvoljnog imena. Prva kao callback prima drugu, a druga kao callback prima treću. U glavnom programu zatražiti od korisnika da unese kilometre. U prvoj funkciji samo ispisati koliko je korisnik unio kilometara, te unesene kilometre pretvoriti u metre i poslati drugoj funkciji. Zatim u drugoj funkciji pretvoriti metre u kopnene milje (1609,344 m) te ispisati rezultat. U trećoj funkciji pretvoriti metre u nautičke milje (1852 m). Sada ispisati rezultat u kilometrima, kopnenim miljama i nautičkim miljama.

A

//

39
Q

Deklarirati objekt „desert“ sa svojstvima naziv, vrsta (npr. kolač, torta, palačinka…), broj_komada i težina u gramima (svakog komada) te popuniti proizvoljnim vrijednostima.

A

//

40
Q

Dodati metodu „pojedi“ koja smanjuje broj komada za 1 i metodu „preracunaj“ koja prima težinu u gramima i broj komada, te preračunava težinu iz grama u kilograme i vraća dobiveni rezultat.

A

//

41
Q

Metoda „pojedi“ prima callback na metodu „preracunaj“ i ispisuje novu težinu u kg i gr. Ispisati težinu deserta u kg i gr koristeći ranije napisanu metodu, zatim pozvati metodu „pojedi“.

A

//

42
Q

Deklarirati objekt „korisnik“ sa svojstvima ime, prezime, broj_godina, datum_rođenja i popuniti sa proizvoljnim vrijednostima. Napisati funkciju „rodjendan()“ koja prema proslijeđenom parametru ‘datum_rođenja’ provjerava je li danas rođendan korisniku, ako jest, ispisuje “Sretan rođendan!”, ako ne, vraća 0 (Napomena: Date()).

A

//

43
Q

Dodati metodu „godine“ koja uzima trenutnu godinu i računa koliko korisnik trenutno ima godina te to sprema u svojstvo broj_godina. Metoda prima callback na funkciju „rodjendan()“ i poziva ga. Pozvati metodu „godine“. (Napomena: slice(), split());

A

//

44
Q

Napisati funkciju „print()“ koja će primati težinu u gramima kao parametar i vraćati string koji sadrži težinu izraženu u kilogramima i gramima. (Ako je parametar 1981, funkcija treba vratiti “1kg i 981g”). Deklarirati objekt koji će sadržavati visinu, težinu, zanimanje i ime neke osobe. Objekt treba imati metodu „add_mass“ koja će mijenjati težinu osobe, ali tako da prima težinu u gramima. Metoda prima i callback na funkciju „print()“ i tako ispisuje novu težinu osobe u kilogramima i gramima. Pozvati metodu „add_mass“.

A
function print(grams){   var kg = parseInt(grams/1000),    gr = grams%1000;   console.log(kg+" kg i "+gr +" gr ."); } var person = {   height : 164,   weight : 53,   profession : 'teacher',   name : 'Mihael',    add_mass : function(grams,callback){    this.weight += parseInt(grams)/1000;    callback(this.weight*1000); 
 } }; person.add_mass(500,print);
45
Q

Napisati funkciju „ocjena()“ koja vraća odgovarajuću ocjenu za uneseni postotak točnih rezultata. Između 40 i 60% ocjena je 2, 61 i 75% ocjena 3, 76 i 90 ocjena 4, preko 90% ocjena je 5. Deklarirati objekt koji će sadržavati ime studenta, niz dobivenih bodova odrađenih zadataka [1, 0, 2, 3, 0, 0] (maksimalan broj bodova je 10), postotak i ocjenu koji su još nepoznati. Objekt treba imati metodu „bodovi“ koja će izračunati i postaviti postotak bodova na testu. Metoda „bodovi“ prima callback funkciju za računanje ocjene. Koristeći funkciju „ocjena()“, izračunati ocjenu na testu te preko nje, postaviti vrijednost svojstvu ‘ocjena’.

A

//

46
Q

Napisati funkciju koja će kao parametar primiti broj koševa i vraćati poziciju ako je u top 5 strijelca u NBA ligi. Ako je broj veći od: a) 31419, vratiti 5, b) 32292, vratiti 4, c) 32482, vratiti 3, d) 36928, vratiti 2, e) 38387, vratiti 1.
Pozvati funkciju i ispisati što ona vraća.

A

//

47
Q
Zadan je objekt: 
var player = {name : 'Michael Jordan', 
height : 1.98, 
born : '17.2.1963.' 
}; 
Ispisati sve property-e objekta i njihove vrijednosti:
A

//

48
Q

Napisati funkciju koja će primiti ime igrača i broj koševa. Funkcija treba ispisati ime igrača i koliko je koševa postigao u karijeri te pomoću funkcije iz 46.-og zadatka provjeriti nalazi li se njegov broj koševa u top 5 strijelaca NBA lige te ispisati koju je poziciju zauzeo ako jest.
a) Proširiti objekt „player“ iz 47.-og zadatka tako što ćete mu dodati property ‘clubs’ koji će sadržati klubove u kojima je Jordan igrao. ‘clubs’ treba biti niz koji sadrži objekte s informacijama o klubovima u kojima je igrao. Svaki objekt treba imati grad, ime i godinu osnivanja kluba. (npr. Chicago Bulls 1966., Washington Wizards 1961.) b) Ispisati sve gradove iz „player“ objekta u kojima je Jordan igrao. c) Objektu dodajte funkciju „setPoints“ koja prima broj koševa i callback funkciju. Preko callback funkcije provjerite je li broj koševa u NBA top 5 i ispišite rezultat. Koristite funkciju iz 46. zadatka.

A

//

49
Q

Napisati funkciju „broj_bodova()“ koja će vraćati broj bodova za osvojenu poziciju. Ako je netko osvojio poziciju 1, funkcija vraća 6 bodova, poziciju 2 vraća 4 i poziciju 3 vraća 2 boda. Funkcija prima poziciju kao parametar. Deklarirati objekt koji će sadržavati naziv natjecatelja, njegov redni broj, niz koji sadrži pozicije natjecatelja koje je osvojio na zadnjim natjecanjima i broj bodova koje je osvojio. Broj bodova postaviti koristeći funkciju „broj_bodova()“. Objektu dodati metodu koja će ispisati sve osvojene pozicije. Objektu dodati i metodu koja prima poziciju i callback. Ona treba dodati poziciju u niz pozicija u objektu, preko callbacka dohvatiti broj bodova za tu poziciju i ispisati ju.

A

//