Algoritmusok a csángó néptáncban

Download Report

Transcript Algoritmusok a csángó néptáncban

Matematika és Tánc
Lenthár Lilla és Kalocsai Alexandra 12.osztály
Szent István Király Zeneművészeti Szakközépiskola
Felkészítő tanár: Komáromi Annamária
Adatszerkezetek és programozás alapfogalmak
•
•
•
•
•
•
•
•
Változó – névvel ellátott tároló hely a számítógép memóriájában
Jellemzői: név, típus, tárbeli kezdőcím, érték
Adatszerkezetek: elemi típus (egész számok, karakterek), összetett típusok,
homogén- és heterogén típus;
Számsorozat - Számok, amelyek valamiért összetartoznak, van közöttük
valamilyen logikai kapcsolat
N - gyakori kifejezés, jelentése tetszőleges mennyiség – tetszőleges darab
N elemű sorozat - Tetszőleges elemszámú sorozat
i. elem - A sorozat valamelyik, általában a vizsgált eleme
i+1. elem - A sorozat valamelyik, általában a vizsgált elemét követő elem.
Tömb - olyan homogén adatszerkezet, amelynek elemeit a sokaságon belül
elfoglalt helyük alapján azonosítjuk.
Programozás vezérlési szerkezetek
•
•
Szelekció - az utasítások ne minden esetben szekvenciálisan - egymást követve –
hajtódjanak végre.
Bizonyos tevékenységek elvégzése különböző feltételektől függően hajtódjon végre.
Ciklus - A programozásban a ciklusok az ismételt utasítás vagy tevékenység
vérehajtásának eszközei:
- For ciklus - Pontosan tudjuk a programozás során, hogy a ciklus hányszor fogja a
ciklusmag utasításait végrehajtani.
- While ciklus - Az elöltesztelő ciklus megvizsgálja, hogy a ciklus feltétel
fennáll-e. Ha igen, akkor lefuttatja a ciklusmagot, ha nem akkor a program ciklus utáni
ponton folytatódik, azaz a ciklusmag kimarad.
- Hátul tesztelő ciklus - A feltételvizsgálat a ciklusmag után áll, ezért a hátul tesztelő
ciklusban a ciklusmag utasításai legalább egyszer lefutnak akkor is, ha ciklus feltétele
hamis.
Algoritmus
•
olyan megengedett lépésekből álló módszert, utasítás(sorozato)t, részletes
útmutatást értünk, amely valamely felmerült probléma megoldására alkalmas.
Például eljárást, algoritmust lehet adni két egész szám legnagyobb közös
osztójának kiszámolására.
•
a számítógépes programok általában tartalmaznak algoritmusokat, ezekkel
utasítják a gépet az adott feladat végrehajtására.
•
a konkrét algoritmus megadásához tudni kell, hogy mik a megengedett
lépések.
Programozási tételek, nevezetes algoritmusok
•
Összegzés tétele - adott egy N elemű számsorozat, határozzuk meg a sorozat
összegét! Megjegyzés: a sorozat elemeit egy vektor tömbben tároljuk.
•
Lineáris keresés algoritmus - adott egy N elemű sorozat, a sorozat elemein
értelmezett T tulajdonság.
•
Rendezési algoritmusok - Adott egy N elemű számsorozat, készítsük el
a sorozat egy olyan permutációját, amelyre igaz, hogy a sorozat i. eleme az
kisebb/ egyenlő, mint az i+1. eleme.
Insertion sort
Buborékrendezés
- egy egyszerű algoritmus, amellyel egy véges (nem feltétlenül numerikus) sorozat – vagy
számítástechnikai szóhasználattal élve egy tömb – elemei sorba rendezhetők [(n-1)n]/2
összehasonlítás elvégzésével, ahol n a sorozat elemeinek számát jelenti.
CIKLUS i = n TŐL 2 IG {
CIKLUS j = 1 TŐL i-1 IG {
HA TOMB[j] > TOMB[j+1] AKKOR {
CSERÉLD FEL ŐKET: TOMB[j], TOMB[j+1]
}
}
}
Buborékrendezés
Kagylórendezés
•
•
•
•
az adatokat mint egy két dimenziós mezőt tekinti
ebből adódóan a rendszerezés először tömbönként történik
ezt a folyamatot addig folytatjuk amíg már csak egy tömb marad meg
ez után a többi rendszerezés Insertionsorttal vagy Bubblesorttal történik.
Koktélrendezés
algoritmus egy tömb elemeinek
sorba rendezésére
• A buborékrendezés tökéletesített
változata, mely két irányból megy
végig a tömbön.
•
Források
http://www.topschool.hu/programozni-egyszeru.php#Adatszerkezetek
http://vilagbiztonsag.hu/keptar/thumbnails.php?album=518
http://hu.wikipedia.org/wiki/Koktélrendezés