Programozás-feladatok I. éves hallgatóknak

 

 

1. Készítsen programot másodfokú egyenlet megoldására! Vizsgálja meg, hogy az egyenlet valóban másodfokú-e, van-e valós gyöke, hány különbözô gyök van!

2. Írjon programot az

 

lineáris egyenletrendszer megoldására. Az adatok: a, b, c, d, p, q. Ha lehet, számítsa ki x és y értékét, ha nem, döntse el, hogy az egyenletek ellentmondóak-e vagy nem függetlenek.

3. Legyen 3 valós szám az adat. Ha e számok lehetnek egy háromszög oldalainak hosszúságai, akkor számítsa ki s kerületet és a területet. A terület kiszámítására a Heron-képletet használhatja:

,

ahol a, b, c a háromszög oldalhosszai, s a kerület fele.

4. Írjon programot, amely kiszámítja az

sorozat k-adik elemét. k értékét adatbevitellel határozzuk meg.

5. Egy n természetes szám faktoriálisát n! jelöli és az 1*2*3*...*n szorzatot értjük alatta. Készítsen programot n! kiszámítására. Vigyázzon, n! értéke nagyon gyorsan nô az n függvényében!

6. Készítsen programot, amely 0.1 lépésközzel elkészíti az

 

függvény értéktáblázatát a 0..1.5 intervallumban.

7. Dolgozatok eredményérôl statisztikát kell készíteni. Készítsen programot, amely összeszámolja az 1-es, 2-es stb. dolgozatokat és átlagot is számol!

8. Szimuláljon kockadobásokat az 1..6 intervallumbeli véletlen egész számokkal! Egyszerre két kockával dobva milyen valószínûséggel dobunk 2-t, 3-at, 4-et, ..., 12-t? Nagy számú dobásból a valószínûség közelítôleg megállapítható. Pl. a 2-es dobás valószínûsége = a 2-es dobások száma/az összes dobás száma.

9. A Fibonacci-sorozat képzési szabálya a következô:

. . . ,

 

Írjon programot az elsô n elem kiszámítására!

10. Írjon programot, amely a különféle síkidomok területét számítja ki. Minden idomért külön eljárás legyen a "felelôs", egy alkalmas karakterrel adja meg a fôprogram számára, hogy milyen síkidommal akar dolgozni (pl.: 'n' négyzet, 'k' kör, stb.)

11. Definiálja a faktoriális függvény nem rekurzív változatát és használja az

 

 

értékének meghatározásához!

12. A binomiális együtthatókra igaz az

összefüggés, ezenkívül tudjuk, hogy

, és ha n<k, akkor .

Írjunk rekurzív függvényt az összefüggések alapján a binomiális együtthatók kiszámítására!

13. Írjon alprogramot, amely egy valós tömb elemeit összegzi!

14. Írjon alprogramot, amely egy tömb 3 legkisebb elemét határozza meg!

15. Az egydimenziós v tömb elemei nagyság szerint növekvô sorrendben helyezkednek el. Írjon eljárást, amely megfordítja ezt a sorrendet!

16. Készítsen programot, amely egy v tömb elemeit 3 hellyel ciklikusan balra lépteti. (Pl. ha az eredeti tömb

21 22 23 24 25 26 27 28 29

akkor a léptetés után

24 25 26 27 28 29 21 22 23

lesz).

17. Írjunk egy boolean értékû függvényt (predikátumot), amely akkor és csak akkor ad vissza true értéket, ha a paraméterét képezô egydimenziós tömb elemei növekvô sorrendben rendezettek.

18. Adott egy rendezetlen tömb. Válasszon ki egy véletlenelemet és határozza meg a nála kisebb és nagyobb elemek számát!

19. Írjon programot, amely egy inputként megadott összegrôl eldönti, hogy milyen címletekben fizethetô ki a legkevesebb bankjegy, ill. pénzdarab felhasználásával.

20. Írjon eljárást, amely egy kétdimenziós tömb adott két sorát felcseréli!

21. Írjon programot, amely egy mátrix sorait és oszlopait összegzi!

22. Határozza meg egy mátrix soraiban az elemek minimumát, majd a minimális elemek maximumát!

23. Három feladatot oldottak meg a tanulók. A dolgozatra kapott pontszámot a táblázat szerint kell osztályzatra átváltani:

 

Pontszám

Osztályzat

23-26

jeles

19-22

15-18

közepes

11-14

elégséges

0-10

elégtelen

Tervezd meg és írd meg azt a programot, amely bekéri a dolgozat összpontszámát, és kiírja a minôsítését!

24. Egy program feladata, hogy számok egy sorozatában megkeresse az elsô olyan értéket, amely a legelôször beírt számmal azonos. (feltételezzük, hogy van legalább egy ilyen szám.) A program egyenként kérje be az adatokat! Az adatbevitel akkor fejezôdjék be, amikor megtalálta az elsôként beírt számmal azonos értéket! Ezután írja ki, hogy hányadik helyen találta meg ezt a számot!

25. Adatokat olvasunk be a billentyûzetrôl, és megszámoljuk, hány pozitív szám van közöttük. Az adatok végét 0 bevitele jelzi. Ezután a program írja ki a pozitív adatok számát!

26. Számítsuk ki 1-tôl n-ig a páratlan számok négyzetét, valamint a négyzetösszegüket! Az n legyen bemenô adat! Feltételezzük, hogy a felhasználó jó adatokat visz be.

27. Keressük meg egy természetes szám valódi osztóit! A program adjon tájékoztatást arról, legfeljebb mekkora legyen a szám, amellyel meg tudja oldani a feladatot! Az eredményeket osztópárok formájában kell kiírni. Minta:

A szám: N=56

Az osztópárok: 2 és 28

4 és 14

7 és 8

Ha a számnak nincs valódi osztója, akkor írja ki a program a "Prímszám" üzenetet! A felhasználónak legyen meg a lehetôsége arra, hogy nyomtatást is kérhessen az eredményrôl.

28. Írjunk programot, amely egy pozitív egész számról négyzetgyökvonás nélkül eldönti, hogy négyzetszám-e!

29. Keressük meg az elsô ötjegyû prímszámot! (A program legyen könnyen átalakítható úgy, hogy pl. az elsô háromjegyû vagy nyolcjegyû prímszámot lehessen megkeresni vele!)

30. Állítsuk elô a háromjegyû prímszámokat!

31. Írjunk programot, amely összegzi egy számsorozat elemeit azoknak a számoknak a kivételével, amelyek a felhasználó által kijelölt zárt intervallumon belül vannak. Az adatbevitel végét a 9999 beírása jelzi. Ezután írja ki a program az összeget!

32. Beolvasunk N darab számpárt. Keressük meg azt a számpárt, ahol a legnagyobb az eltérést a pár két eleme között!

33. Írjuk ki az 1-200 közötti számok közül azokat az 5-tel oszthatóakat, amelyek nem oszthatók 25-tel!

34. Írd meg azt a programot, amely a természetes számok [a;b] intervallumából kiválogatja azokat, melyek oszthatók a c és d természetes számokkal!

35. A program pozitív számokat kér be a billentyûzetrôl. Az elsô számból kivonja a másodikat, az eredménybôl a harmadikat, és így tovább. Az adatok végét a 0 érték beírása jelentse! Az adatbevitel azonban akkor is érjen véget, ha a kivonás eredményeként 0-t vagy negatív értéket kapunk!

36. Helyettesítsük az 1 - 9 számjegyekkel az autóbuszjegyen található lyukasztási helyeket! Írjuk meg azt a programot, amely kiírja az összes olyan buszjegy "kódját", amely három helyen van kilyukasztva! Törekedjünk a képernyô minél jobb kihasználására! A program írja ki a kombinációk számát is!

37. A természetes számoknak a felhasználó által kijelölt zárt intervallumában keressük meg azokat, amelyek többszörösei egy természetes számnak, melyet ugyancsak a felhasználó ad meg.

38. Személyi szám alapján állapítsuk meg valaki életkorát!

39. Írjuk meg azt a programot, amely a személyi szám alapján megállapítja és kiírja a születési dátumot! A kiírás a következô formában történjen: 1974. 08. 05.

40. Írj programot, amely a billentyûzetrôl bevitt szövegben megszámolja az ly-okat!

41. Olvassuk be egy szöveget és még két karaktert! Az elsô karakter minden elôfordulását cseréljük ki a másodikra!

42. Kérjünk be egy max. 100 karakter hosszú szöveget, írjuk ki visszafelé olvasva! (Oldjuk meg úgy a feladatot, hogy a program egyszerre írja ki a szöveget, ne karakterenként!)

43. A program állapítsa meg egy egész szám jegyeinek számát!

44. Kérjen be a program egy szöveget és egy magánhangzót, és írja ki, hányszor fordul elô benne a magánhangzó!

45. Állítsunk elô véletlenszerûen 100 db egész számot a [200;500] intervallumban! Válogassuk ki azokat a számokat, amelyekben megtalálható a 3-as számjegy!

46. Készíts olyan programot, ami egy adott n számról eldönti, hogy prímszám-e?

48 Készíts olyan programot, ami kiszámolja -t a Taylor sorával, és a -et is!

52. Készíts olyan programot, amely egy tetszôleges számot kiír betûvel.

53. Határozzuk meg, hogy egy adott mátrixnak van-e nyeregpontja (nyeregpontnak olyan elemet nevezünk, amelyik legkisebb a saját sorában, és legnagyobb az oszlopában.)

54. Készíts olyan programot, ami kiírja a prímszámokat 1-tôl n-ig.

55. Tegyük fel, hogy n ember helyezkedik el egy kör mentén. Az egyiktôl elindulva minden m-ediket lelövik. A számlálásban csak az élôk vesznek részt. Készíts olyan programot, ami adott n és m esetén kiírja a kivégzések sorrendjét.

 

Témakörök a TURBO PASCAL nyelvbôl

A nyelv elemei: jelkészlet, foglalt szavak,

azonosítók

kifejezések, standard (szabványos) függvények

Adattípusok és deklarációk: egyszerû adattípusok (numerikus, logikai, szöveges, sorszámozott)

strukturált adattípus (tömb)

Konstansok deklarálása.

Írás képernyôre - Write és Writeln eljárások

Olvasás billentyûzetrôl - Read és Readln eljárások

Utasítások - értékadó utasítás

- feltételes utasítások

- ciklus utasítások

Eljárások és függvények - lokális és globális változók

Szabványos eljárások és függvények a sztringek kezelésére.