1. feladat:
Kiszámolós (20 pont)
Egy kiszámolós játékban N gyerek áll körbe az ábrának megfelelően:
A kiszámolás az elsőnél kezdődik, majd minden K-adikat ki kell hagyni úgy, hogy végül csak egyetlen egy gyerek maradjon. Először tehát a K. marad ki, majd a 2*K., ... Ha az utolsóhoz értünk, a kör tovább folytatódik.Feladat:
Készíts programot, amely beolvassa a gyerekek számát (1<=N<=100) és hogy minden hányadikat kell kihagyni (K>=1), majd kiírja a képernyőre a kiszámolós játékban kiesőket, majd pedig a végén megmaradt gyerek sorszámát!Példa:
Bemenet | Kimenet |
N=13, K=6 | A kimaradók sorban:
6, 12, 5, 13, 8, 3, 1, 11, 2, 7, 4, 10 Végül megmaradt: 9 |
2. feladat: Telefonáló robot (25 pont)
Egy telefonkészüléken az ábrán látható elrendezésben vannak a nyomógombok. Egy robotkart kell irányítanunk, amely egy adott telefonszám számjegyeit nyomja le a készüléken.
1 2 3 4 5 6 7 8 9 * 0 # A robotot az alábbi utasításokkal vezérelhetjük:
A robotkar kezdetben a * jel fölött van, a telefonálás végén a # jel fölött kell lennie.
- E x - x egységnyit mozdítja a robotkart északi irányba (negatív x esetén déli irányba)
- K x - x egységnyit mozdítja a robotkart keleti irányba (negatív x esetén nyugati irányba)
- N - lenyomja a nyomógombot, amelyik felett a robotkar áll.
Feladat:
Készíts programot, amely beolvas egy legfeljebb 7 jegyű telefonszámot, majd a minimális utasításszámmal végrehajtatja a robottal a telefonálást. Eredményeként a robot számára szóló utasításokat kell kiírni a képernyőre.
Készíts programot, amely beolvas egy legfeljebb 150 karakterből (az angol ABC kisbetűiből) álló szöveget, majd ABC sorrendben kiírja mindazon legalább 2 karakterből álló részeit, amelyek egynél többször fordulnak elő!Példa:
Bemenet Kimenet mississipi is, iss, issi, si, ss, ssi