7. FEJEZET: Programozási feladatok{mchap:alg_ii_prog}
Ez a fejezet még fejlesztés alatt áll.
Feladat: 7.1. {k_ii_prog_HA_060520_02}
Írjunk függvényt, amelynem bemenete egy pozitív egész szám (
n),
kimenete pedig az
n-edik prímszám.
Feladat: 7.2. {k_ii_prog_HA_060520_lnko_szam_01}
Írjunk programot, amely megvalósítja két pozitív szám legnagyobb
közös osztójának kiszámolását. Bemenete két egész szám
a
és
b, kimenete pedig a legnagyobb köszös osztójuk.
Feladat: 7.3. {k_ii_prog_HA_060520_lnko_szam_02}
Írjunk programot, amely két pozitív egész szám legnagyobb közös
osztóját előállítja a két szám egészegyütthatós kombinációjaként.
A program bemenete két egész szám,
a és
b, két további paramétere
a
c és a
d változó, amikbe a két együtthatót helyezi. Ezekre
Feladat: 7.4. {k_ii_prog_HA_060520_04}
Írjuk meg a racionális számokkal való számolás műveleteinek
megfelelő függvényeket.
A törteket két mezőből (
numerator: számláló,
denominator: nevező)
álló rekordokkal reprezentáljuk.
a) Egyszerűsítés: az
x bemenetre, ahol
x=
a
b
(
a és
b
egészek,
b≠0) azt az
x'=
a'
b'
törtet adja ki,
amelynek tagjai relatív prímek, és
a
b
=
a'
b'
.
Valósítsuk meg racionális számok
b) összeadását
c) kivonását
d) szorzását
e) osztását!
Feladat: 7.5. {k_ii_prog_HA_060520_05}
Írjuk meg a racionális számok és tizedestört alakjuk közti
oda-vissza megfeleltetést megvalósító függvényeket!
a) A
TortbolTizedes program bemenete a
SZAMLALO és a
NEVEZO (pozitív egész számok) kimenete három lista
EGESZRESZ,
PISZOK,
PERIODUS, amely a tizedestört alak megfelelő jegyeit
tartalmazza.
b) A
TizedesbolTort program bemenete az
EGESZRESZ,
PISZOK,
PERIODUS listákból áll, kimenete annak a törtnek a
tovább nem egyszerűsíthető alakja, amelynek tizedesjegyeit az
adott listák tartalmazzák.
Feladat: 7.6. {k_ii_prog_HA_060520_20}
Írjunk programot, amely képes nagy pozitív egész számokkal
alapműveleteket végezni. Bemenete a két szám számjegyeinek
listája, kimenete az
a) összegük
b) szorzatuk
b) hányadosuk és a maradék
listája (listái).
Feladat: 7.7. {k_ii_prog_HA_060520_21}
Írjunk programot, amely képes nagy pozitív egész számokból gyököt
vonni. Bemenete a (
SZAM) szám számjegyeinek listája és a
pontosságot megadó
HIBAKORLAT szám. Kimenete a
GYOKEGESZRESZ
és a
GYOKTIZEDES lista, amelyek összefűzve legfeljebb
HIBAKORLAT értékével térnek el a tényleges gyöktől.
Feladat: 7.8. {k_ii_prog_HA_060520_25}
Írjunk programot, amely egy listában adott számsorozatot növekvő
sorrendbe rendez.
Feladat: 7.9. {k_ii_prog_HA_060520_25_01}
Írjunk programot, amely egy listában adott számsorozatból
kiválasztja a két legnagyobb elemet.
Feladat: 7.10. {k_ii_prog_HA_060520_25_02}
Írjunk programot, amely egy listában adott számsorozatból
kiválasztja a legnagyobb és a legkisebb elemet.
Feladat: 7.11. {k_ii_prog_HA_060520_25_03}
Írjunk programot, amely egy listában adott számsorozatból
kiválasztja a középső elemet.
Feladat: 7.12. {k_ii_prog_HA_060520_lnko_szam_03}
Írjunk kongruenciamegoldó programot. A program bemenete az
ax≡b (modm) kongruencia
a,
b,
m együtthatója
(egészek,
m pozitív) kimenete a kongruencia egyik
x megoldása
és a megoldás
m' modulusa.
Feladat: 7.13. {k_ii_prog_HA_060520_lnko_szam_04}
Írjunk programot, amely megvalósítja két nagyon nagy pozitív szám
legnagyobb közös osztójának kiszámolását. Bemenete számjegyek két
listája,
EGYIKSZAM és
MASIKSZAM, kimenete pedig
LNKO, a
legnagyobb köszös osztójuk, amely szintén egy lista.
Feladat: 7.14. {k_ii_prog_HA_060520_28}
Írjunk programot, amely megvalósítja polinomok maradékos osztását.
Bemenete két valós együtthatós polinom,
OSZTANDO és
OSZTO,
kimenete pedig a
HANYADOS és
MARADEK (ezek pl. mind listák).
Feladat: 7.15. {k_ii_prog_HA_060520_28_rac_01}
Írjunk programot, amely megvalósítja racionális együtthatós
polinomok maradékos osztását. Bemenete két racionális együtthatós
polinom,
OSZTANDO és
OSZTO, kimenete pedig a
HANYADOS és
MARADEK (ezek pl. mind számpárokból (
SZAMLALO,NEVEZO) álló
listák).
Feladat: 7.16. {k_ii_prog_HA_060520_28_rac_03}
Írjunk programot, amely megvalósítja racionális együtthatós
polinomok legnagyobb közös osztójának kiszámolását. Bemenete két
racionális együtthatós polinom,
EGYIKPOL és
MASIKPOL, kimenete
pedig
LNKO (ezek pl. mind számpárokból (
SZAMLALO,NEVEZO) álló
listák).
Feladat: 7.17. {k_ii_prog_HA_060520_03}
Írjunk programot, amelynek bemenete egy véges egyszerű gráf
súlyozott élekkel, kimenete pedig a gráf
a) egyik
b) összes
minimális költségű feszítőfája.
Feladat: 7.18. {k_ii_prog_HA_060520_12}
Írjunk programot, amelynek bemenete egy véges egyszerű gráf és egy
csúcsa, kimenete pedig a gráfnak az adott csúcsot tartalmazó
komponense (csúcsok listája).
Feladat: 7.19. {k_ii_prog_HA_060520_13}
Írjunk programot, amelynek bemenete egy véges egyszerű gráf,
kimenete pedig a gráf csúcsainak összefüggőségi komponensei
(halmazok listája).
Feladat: 7.20. {k_ii_prog_HA_060520_10}
Írjunk programot, amelynek bemenete egy véges egyszerű gráf és két
csúcsa, kimenete pedig a két csúcs közti legrövidebb út (csúcsok
listája).
Feladat: 7.21. {k_ii_prog_HA_060520_11}
Írjunk programot, amelynek bemenete egy véges egyszerű gráf és két
csúcsa, kimenete pedig a két csúcs közti leghosszabb út (csúcsok
listája).
Feladat: 7.22. {k_ii_prog_HA_060520_01}
Adott egy véges egyszerű gráf. Ketten játszanak. Le lehet törölni
egy csúcsot (a belőle induló élekkel együtt) vagy pedig két
szomszédos csúcsot az összes éleikkel. Két játékos felváltva lép.
Az nyer, aki letörli az utolsó csúcsot.
Írjunk programot, amelynek bemenete a gráf. A program
megválaszthatja melyik fél szeretne lenni ("kezdő" vagy "második")
és lejátsza a partit a nyerésig.
Feladat: 7.23. {k_ii_prog_HA_060520_40}
Írjunk programot, amelynek bemenete a gráf és két csúcsa és képes
játszani a [
70][VII. 338.] játékot.
Feladat: 7.24. {k_ii_prog_HA_060520_50}
Írjunk gyökkreső programot. A program bemenete egy valós
együtthatós polinom (számok listája) valamint két valós szám
X1,
X2, és a
HIBALORLAT (kis pozitív szám). A program ellenőrzi,
hogy az adott polinom a két adott helyen ellenkező előjelű értéket
vesz fel, és ha igen, akkor megkeresi a polinom egy
X1 és
X2
közé eső gyökét
HIBALORLAT pontossággal.