A programozás alapjai I. - 3. kisZh
Ezen az oldalon gyűjtjük a A programozás alapjai I. tárgy gyakorlatain az elmúlt években előforduló kisZh feladatokat, azok megoldásaival. A feladatok nehézsége iránymutatónak tekinthető, de az egyes félévek időbeosztása eltérhet. Ne ess kétségbe, ha ismeretlen, nehéz, „megoldhatatlan” feladatsort látsz.
A megoldásokról
Szóval hogyan kell tanulni a prog ZH-kra? „Sehogyan.” Ez nem egy „tanulható”, hanem egy „gyakorolható” tárgy.
– Czirkos Zoltán, InfoC tanácsok
Az oldalon nem gyűjtjük a feladatok megoldásait. A kisZh-k eleji beugrók rövidek, általában 10 – 15 sorban megoldhatóak. A programozás nem egy „magolható” tárgy, nincsenek típusfeladatok, s azok megoldásai. A programozás alapjai I., s A programozás alapjai II. tárgyak egy szemléletmódot szeretnének megtanítani, amit a régebbi feladatsorok böngészésével nem, csak azok önálló megoldásával lehet elsajátítani. Kicsit bővebben olvashatsz erről az idézet végén linkelt oldalon.
Amennyiben egy-egy itt látható feladat nehézséget okoz, böngészd át az eddigi előadások anyagát. Ha még mindig nem megy a megoldás, fordulj bátran a felsőbb évesekhez, s a tárgy oktatóihoz, gyakorlatvezetőihez a levlistákon, készséggel fognak segíteni.
További tanulási tippekért olvasd el a tárgy adatlapjának Tippek fejezetét.
Feladatsorok
2014
Derékszögű
A derékszögű koordinátarendszerben x (vízszintes) és y (függőleges) valós koordináták közösen határoznak meg egy pontot. A programodban ilyenek adatait kell tárolni.
- Definiálj összetett típust, amely egy pont helyét tárolja!
- Írj függvényt, amely paraméterként egy pontot kap, és értéke a pont origótól mért távolsága (Pitagorasz-tétel)!
- Írj függvényt, amely kiírja egy pont koordinátáit!
- Írj paraméter nélküli függvényt, amely a felhasználótól beolvassa egy pont koordinátáit, és értéke a beolvasott pont!
Egészítsd ki mindezt egy főprogrammal, amelyben beolvasod egy pont adatait, aztán visszaírod azokat a képernyőre! Utána írd ki az origótól való távolságát is, és végül azt, hogy közelebb van-e az origóhoz, mint 1 egység!
GPS
Egy programban GPS koordinátákkal adott földrajzi helyeket kell tárolni. Ez két valós szám: szélesség (-90° = déli sark, 0° = egyenlítő, +90° = északi sark) és hosszúság (-180° = legnyugatabb, 0° Greenwich, +180° = legkeletebb).
- Definiálj összetett típust, amely egy hely koordinátáit tárolja!
- Írj függvényt, amely kiírja egy hely koordinátáit!
- Írj függvényt, amely paraméterként egy helyet kap; értéke igaz, ha az északi féltekén van, amúgy hamis. Írj egy ugyanilyen függvényt, amely a keleti féltekére ad igazat, és a nyugatira hamisat.
- Írj paraméter nélküli függvényt, amely a felhasználótól beolvas egy koordinátapárt, és értéke a beolvasott hely!
Egészítsd ki mindezt egy főprogrammal, amelyben beolvasod egy hely adatait, utána visszaírod azokat a képernyőre, végül pedig kiírod, hogy az északi vagy a déli, és hogy a keleti vagy a nyugati féltekén van-e!
Lapszabászat
Egy lapszabászatban bútorlapokkal dolgoznak. A lapok szélességét (m), magasságát (m) és vastagságát (mm) jegyzik fel. A 18 mm-nél vékonyabb lapok ára 2800 Ft/m2, a 18 mm-esek és vastagabbak ára 3200 Ft/m2.
- Definiálj összetett típust, amely egy lap adatait tárolja!
- Írj függvényt, amely kiírja egy lap adatait!
- Írj paraméter nélküli függvényt, amely a felhasználótól beolvassa egy lap adatait, és értéke a beolvasott adat!
- Írj függvényt, amely paraméterként egy lapot kap, értéke pedig a lap ára forintban!
Egészítsd ki mindezt egy főprogrammal, amelyben beolvasod egy lap adatait, utána visszaírod azokat a képernyőre, és kiírod azt is, hogy hány forintba kerül!
BMI
Egy ember testtömeg-indexe a tömege (kg) osztva a testmagasságának (m) négyzetével. Pl. 63,2 kg, 1,71 m esetén a testtömeg-index 63,2/1,712 = 21,64. Átlagos testalkatúnak tekintjük a 18,5 és 25 közötti indexszel rendelkezőket.
- Definiálj összetett típust, amely egy ember tömegét és magasságát tárolja!
- Írj függvényt, amely egyetlen paramétereként egy ilyet kap, és visszatérési értéke igaz, ha átlagos testalkatú emberről van szó, amúgy hamis!
- Írj paraméter nélküli függvényt, amely a felhasználótól beolvassa egy ember adatait, és értéke a beolvasott adatpár!
- Írj egyparaméterű függvényt, amely kiírja egy ember adatait!
Egészítsd ki mindezt egy főprogrammal, amelyben beolvasod egy ember adatait, és visszaírod azokat a képernyőre! Végül írd ki, hogy a beolvasott adatok alapján átlagos testalkatúnak számít-e, vagy nem!