davidka007
2012.11.21
|
|
0 0
916
|
Írjon programot, amely egy számkitalálós játékot valósít meg, melynek során a program kitalálja a felhasználó által gondolt számot! − A játék elején a felhasználó adja meg azt az egész intervallumot, amelyből majd a program által kitalálandó számot kiválasztja! o Az intervallum határai egész számok legyenek, az alsó határ legyen kisebb, mint a felső! o A program ellenőrizze az alsó és felső határ helyes megadását, szükség esetén adjon lehetőséget a helyesbítésre! o Hibaüzenetet nem kell megjeleníteni, típusellenőrzést nem kell végezni! − Ezután következik a játék: A. A felhasználó gondol egy egész számot a megadott intervallumban. Ezt nem kell beírnia, csak a játék alatt fejben kell tartania! B. A program kiválasztja az intervallumból a középső értéket, és tippként kiírja a felhasználónak. Ha az intervallum elemszáma páratlan, akkor a középső érték egyértelmű, pl. a [3..9] intervallum középső értéke a 6. Ha az intervallum elemszáma páros, akkor a középső érték két szám is lehet, pl. az [1..6] intervallum középső értéke lehet a 3 vagy a 4. Ilyen esetben a program bármelyiket választhatja. C. A felhasználó erre a következő három válasz egyikét adja meg: 1. Erre gondoltam. 2. A gondolt szám kisebb, mint a tipp. 3. A gondolt szám nagyobb, mint a tipp. D. Ezután a program a válasz ismeretében folytatja: Az 1. esetben a játéknak vége, a program kiírja, hogy hány tipp után találta ki a számot. A 2. esetben („A gondolt szám kisebb, mint a tipp.”) a program az intervallum felső határát a tippnél 1-gyel kisebbre állítja. A 3. esetben („A gondolt szám nagyobb, mint a tipp.”) a program az intervallum alsó határát a tippnél 1-gyel nagyobbra állítja. Pl. ha az aktuális intervallum az [1..7] és a gép tippje 4, akkor • a 2. válasz esetén az új intervallum az [1..3] • a 3. válasz esetén az új intervallum az [5..7] E. A 2. és 3. esetben a játék a B jelű lépéssel folytatódik, mindaddig, amíg a program ki nem találja a számot. F. Ha a felhasználó helytelen választ ad meg a játék folyamán, vagy nem az intervallumba eső számra gondol, akkor az intervallum alsó határa előbb-utóbb meghaladja a felső határt. Ez esetben a program adjon hibaüzenetet!
valaki nem tud segíteni ebben? |
|