Informatika1-2008/Gyakorlat5

A MathWikiből
(Változatok közti eltérés)
(5. gyakorlat (Maple))
(5. gyakorlat (Maple))
6. sor: 6. sor:
 
** legnagyobb közös osztó meghatározása euklideszi algoritmus segítségével: [http://www.math.bme.hu/~tothagi/info1/gy9_euklideszi.mw mw]
 
** legnagyobb közös osztó meghatározása euklideszi algoritmus segítségével: [http://www.math.bme.hu/~tothagi/info1/gy9_euklideszi.mw mw]
 
** buborék rendezés lista rendezésére: [http://www.math.bme.hu/~tothagi/info1/gy10_buborek.mw mw]
 
** buborék rendezés lista rendezésére: [http://www.math.bme.hu/~tothagi/info1/gy10_buborek.mw mw]
 
 
Házi feladat:
 
 
1. A következő feladatot oldjuk meg kétféleképpen. Mindkettő procedúra legyen, de először feltételes- és ciklusutasításokkal, másodszor a funkcionális programozás elvét használva (a tanult listakezelő parancsok egymásba ágyazásával) oldjuk meg a feladatot. A cél: a készített procedúra két azonos elemszámú listáról döntse el, hogy hány olyan hely van, ahol az első listában kisebb szám áll, mint a másodikban. Pl. a [2,5,1], [5,3,7] hívásra azt írja ki, hogy 2, míg a [2,3], [1] hívásra hibaüzenetet kapjunk.
 
 
2. Összefésülés és összefésüléses rendezés:
 
Az összefésülés algoritmus bemenete két növően rendezett (!) lista, melyek nem feltétlenül azonos hosszúak. A várt kimenet egy olyan lista, mely tartalmazza a kapott két lista összes elemét (ha vannak azonosak, akkor azokat többször is), továbbá rendezett lista. Tehát a kimeneti listába össze van fésülve a két bemeneti lista tartalma. A módszer a következő. Összehasonlítjuk a listák első elemeit, kiválasztjuk a kisebbet, ez lesz a végső lista legkisebb, azaz legelső eleme. Ezután amelyik listában ez az elem volt, annak a második elemét vizsgáljuk a másik lista első elemével. Ismét kiválasztjuk a kisebbet, az adott listában tovább lépünk, a másikban nem. Ezt addig ismételjük, míg valamelyik lista el nem fogy. Ekkor a másik listából maradt elemeket a kimeneti lista végére másoljuk.
 
 
3. Diagram: [http://www.math.bme.hu/~tothagi/info1/hf_diagram.mw mw]
 

A lap 2008. október 7., 23:02-kori változata

5. gyakorlat (Maple)

  • Funkcionális programozás
    • egyszerű példák a map, select használatára: mw
  • Algoritmusok:
    • legnagyobb közös osztó meghatározása euklideszi algoritmus segítségével: mw
    • buborék rendezés lista rendezésére: mw
Személyes eszközök