Készíts egy JS quiz játékot, amely 10db európai ország fővárosát kérdezi meg, és számolja a helyes válaszokat! Az adatokat promt segítségével kérje be a program, és alert üzenetekkel írja ki az aktuális eredményt!
Az adatokat tömbben (orszagok) tároljuk. Következő lépésben a tömb elemeit a Fisher-Yates algoritmussal összekeverjük, és egy új tömbben (random_Orszagok) tároljuk. A játék során végigmegyünk a random_Orszagok tömb minden elemén, és összehasonlítjuk az adott országhoz tartozó fővárost a játékos által beírt értékkel. Ha a két string egyezik, növeljük a helyes válaszok darabszámát. A játék végén kiíratjuk, hogy mennyi helyes választ ért el a játékos.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
<!DOCTYPE html> <html lang="hu"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Európai országok</title> </head> <body> <script> let orszagok = [ { orszag: "Magyarország", fovaros: "Budapest" }, { orszag: "Németország", fovaros: "Berlin" }, { orszag: "Ausztria", fovaros: "Bécs" }, { orszag: "Csehország", fovaros: "Prága" }, { orszag: "Spanyolország", fovaros: "Madrid" }, { orszag: "Olaszország", fovaros: "Róma" }, { orszag: "Svédország", fovaros: "Stockholm" }, { orszag: "Finnország", fovaros: "Helsinki" }, { orszag: "Franciaország", fovaros: "Párizs" }, { orszag: "Egyesült Királyság", fovaros: "London" } ]; // Fisher-Yates keverő algoritmus function kevert_sorrend(tomb) { for (let i = tomb.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [tomb[i], tomb[j]] = [tomb[j], tomb[i]]; } return tomb; } function kerdezz() { // Véletlenszerűen kevert tömb, a slice() új tömböt hoz létre, az eredetit nem módosítja let random_Orszagok = kevert_sorrend(orszagok.slice()); let jovalaszok = 0; // Jó válaszok száma for (let i = 0; i < random_Orszagok.length; i++) { let valasz = prompt(`Kérdés: 10/ ${i+1} Mi ${random_Orszagok[i].orszag} fővárosa?`); if (valasz.toLowerCase() === random_Orszagok[i].fovaros.toLowerCase()) { alert("Helyes válasz!"); jovalaszok++; } else { alert(`Sajnos rossz válasz. A helyes válasz: ${random_Orszagok[i].fovaros}.`); } } alert(`Vége a játéknak! Összesen ${random_Orszagok.length} / ${jovalaszok} kérdésre adtál helyes választ.`); } kerdezz(); </script> </body> </html> |