Házi feladat
Alapfejezet - Amit nem lehet megcinkelni: a virtuális dobókocka
Fülöp Ákos egy, az óra anyagához mérten rendkívül komplex kódmegoldást adott be. Később kiderült, hogy készítésekor programozó édesapja kissé besegített, ám ez nem von le semmit a kód értékeléséből.

import java.util.Random;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int szam = 0;
int pontszamlalo = 0;
int valasz1 = 2;
int valasz2 = 3;
int valasz3 = 3;
int valasz4 = 4;
int valasz5 = 1;
int valasz6 = 2;
int valasz7 = 4;
int valasz8 = 1;
int valasz9 = 3;
int valasz10 = 2;
int valasz11 = 4;
int valasz12 = 3;
int valasz13 = 1;
int valasz14 = 2;
int valasz15 = 4;
System.out.println("Üdvözlöm! Ez egy virtuális dobókockás
'Kérdezz, felelek!' játék.");
System.out.println("Minden egyes pontszám értékhez jár egy
kérdés.");
System.out.println("A kocka magától dob, Önnek csak a
kérdésekre kell válaszolnia.");
System.out.println("Válaszát a valaszokhoz tartozó számok
beírásával adhatja meg.");
System.out.println("(A pontot ne írja mellé, ugyanis válasza
ez esetben érvénytelen lesz.)");
System.out.println("Érvénytelen valasz esetén a dobott
értéket levonjuk a pontjaiból,
egyszóval nem kap pontot és új
kérdést kap.");
System.out.println("Ha eléri a 15 pontot, megnyeri a
játékot.");
System.out.println("Kezdéshez nyomja meg az ,1' gombot");
Scanner scan = new Scanner(System.in);
int kezdogomb = scan.nextInt();
if(kezdogomb == 1){
do{
Random rand =
new Random();
szam =
rand.nextInt(6) + 1;
if(szam ==
1){
System.out.println("-------");
System.out.println("| |");
System.out.println("| O |");
System.out.println("| |");
System.out.println("-------");
}
else if(szam
== 2){
System.out.println("-------");
System.out.println("| O |");
System.out.println("| |");
System.out.println("| O |");
System.out.println("-------");
}
else if(szam
== 3){
System.out.println("-------");
System.out.println("| O |");
System.out.println("| O |");
System.out.println("| O |");
System.out.println("-------");
}
else if(szam
== 4){
System.out.println("-------");
System.out.println("| O O |");
System.out.println("| |");
System.out.println("| O O |");
System.out.println("-------");
}
else if(szam
== 5){
System.out.println("-------");
System.out.println("| O O |");
System.out.println("| O |");
System.out.println("| O O |");
System.out.println("-------");
}
else if(szam
== 6){
System.out.println("-------");
System.out.println("|O O O|");
System.out.println("| |");
System.out.println("|O O O|");
System.out.println("-------");
}
pontszamlalo
= pontszamlalo + szam;
if (pontszamlalo
== 1){
System.out.println("1. kérdés");
System.out.println("Mennyi 16 négyszeresének a fele?");
System.out.println("1.: 24 2.: 32 3.: 34 4.: 44");
if (valasz1
== scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 2){
System.out.println("2. kérdés");
System.out.println("Mennyi lába van egy póknak?");
System.out.println("1.: 4 2.: 6 3.: 8 4.: 10");
if (valasz2
== scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 3){
System.out.println("3. kérdés");
System.out.println("Mennyi víz fér 1 köbdeciméter űrtartalmú edénybe?");
System.out.println("1.: 1 deciliter 2.: fél liter 3.: 1 liter 4.: 2 liter");
if (valasz3
== scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 4){
System.out.println("4. kérdés");
System.out.println("Hol rendezik az Anna bált?");
System.out.println("1.: Esztergom 2.: Tihany 3.: Budapest 4.: Balatonfüred");
if (valasz4
== scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo==5){
System.out.println("5. kérdés");
System.out.println("Melyik Magyarország legnagyobb tava?");
System.out.println("1.: Balaton 2.: Tisza tó 3.: Fertő tó 4.: Fehér tó");
if (valasz5
== scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 6){
System.out.println("6. kérdés");
System.out.println("Melyik nem hazai madár?");
System.out.println("1.: veréb 2.: flamingó 3.: széncinege 4.: varjú");
if (valasz6
== scan.nextInt()){
System.out.println("Pontok száma:" + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 7){
System.out.println("7. kérdés");
System.out.println("Mennyi hét négyzete?");
System.out.println("1.: 21 2.: 44 3.: 39 4.: 49");
if(valasz7 ==
scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 8){
System.out.println("8. kérdés");
System.out.println("Melyik országban van a Mount everest?");
System.out.println("1.: Kína 2.: Korea 3.: Japán 4.: India");
if(valasz8 ==
scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 9){
System.out.println("9. kérdés");
System.out.println("Melyik a legnagyobb bolygó a naprendszerben?");
System.out.println("1.: Uránusz 2.: Mars 3.: Jupiter 4.: Plútó");
if(valasz9 ==
scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma :" + pontszamlalo);
}
}
else
if(pontszamlalo == 10){
System.out.println("10. kérdés");
System.out.println("Melyik város Sri Lanka fővárosa?");
System.out.println("1.: New York 2.: Colombo 3.: Casablanca 4.: Peking");
if(valasz10
== scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 11){
System.out.println("11. kérdés");
System.out.println("Mit ünneplünk Húsvétkor?");
System.out.println("1.: Jézus születése 2.: Jézus halála 3.: Jézus Mennybe
menetele 4.: Jézus újászületése");
if(valasz11 == scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 12){
System.out.println("12. kérdés");
System.out.println("Mennyi egy tucat?");
System.out.println("1.: 6 2.: 11 3.: 12 4.: 14");
if(valasz12 == scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else if(pontszamlalo == 13){
System.out.println("13. kérdés");
System.out.println("Melyik a legszerencsétlenebb szám?");
System.out.println("1.: 13 2.: 11 3.: 7 4.: 3");
if(valasz13 == scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 14){
System.out.println("14. kérdés");
System.out.println("Melyik Magyar város jelképe a Tűztorony?");
System.out.println("1.: Pécs 2.: Sopron 3.: Debrecen 4.: Hatvan");
if(valasz14
== scan.nextInt()){
System.out.println("Pontok száma:"+pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
else
if(pontszamlalo == 15){
System.out.println("15. kérdés");
System.out.println("Mi a legkisebb ország a világon?");
System.out.println("1.: Vatikán óra 2.: Monaco 3.: Nauru 4.: Sealand");
if (valasz15
== scan.nextInt()){
System.out.println("Pontok száma: " + pontszamlalo);
}
else{
System.out.println("Rossz válasz!");
pontszamlalo = pontszamlalo - szam ;
System.out.println("Pontok száma: " + pontszamlalo);
}
}
}while(pontszamlalo < 15);
System.out.println("Játék vége! Nyertél!");
}
else{
System.out.println("Indítsa újra a
programot és nyomja meg az ,1' gombot!");
}
}
}
Végeredmény:
Üdvözlöm! Ez egy virtuális dobókockás 'Kérdezz, felelek!' játék.
Minden egyes pontszám értékhez jár egy kérdés.
A kocka magától dob, Önnek csak a kérdésekre kell válaszolnia.
Válaszát a valaszokhoz tartozó számok beírásával adhatja meg.
(A pontot ne írja mellé, ugyanis válasza ez esetben érvénytelen lesz.)
Érvénytelen valasz esetén a dobott értéket levonjuk a pontjaiból, egyszóval
nem kap pontot és új kérdést kap.
Ha eléri a 15 pontot, megnyeri a játékot.
Kezdéshez nyomja meg az ,1' gombot
1
-------
| O |
| |
| O |
-------
2. kérdés
Mennyi lába van egy póknak?
1.: 4 2.: 6 3.: 8 4.: 10
3
Pontok száma: 2
-------
| O O |
| |
| O O |
-------
6. kérdés
Melyik nem hazai madár?
1.: veréb 2.: flamingó 3.: széncinege 4.: varjú
2
Pontok száma:6
-------
| O |
| O |
| O |
-------
9. kérdés
Melyik a legnagyobb bolygó a naprendszerben?
1.: Uránusz 2.: Mars 3.: Jupiter 4.: Plútó
3
Pontok száma: 9
-------
|O O O|
| |
|O O O|
-------
15. kérdés
Mi a legkisebb ország a világon?
1.: Vatikán óra 2.: Monaco 3.: Nauru 4.: Sealand
4
Pontok száma: 15
Játék vége! Nyertél!


