Fájlkezelés Vezérlőszerkezetek Adatszerkezetek (Python vs C++)

Python vs C++

A lényeg az algoritmus... A két nyelv összevetése.



Adattípusok

dinamikus illetve statikus adattípuskezelés



Elemi adattípusok - Python

Programkód PY (letöltés)


Elemi adattípusok - C++

Programkód C++ (letöltés)



VECTOR adattípus demoprogram - C++

Programkód C++ (letöltés)



Összefüggés adatsorozatok között...

Gyakori hogy olyan adatokat kezelünk, melyek egy bizonyos zárt intervallumból veszik fel az értéküket, és ezekkel az értékekkel szeretnénk valamit kezdeni.
Legjobb példa erre a lottósorsolás: a zárt intervallum 1-90, és egy évben minden héten 5 számot sorsolnak ki. A kisorsolt számok 52x5-ös mátrixba rendezhetők, ha teljes évet veszünk.
Maguk a számok egy 90 elemű listát alkotnak. Milyen összefüggés van a kisorsolt számok és a 90 elemű lista között? Válasz:

A kisorsolt számok kijelölik a listában az adott elemet (lásd ábra)!

Magyarán arról van szó, hogy a hetek számai indexelik (nyilak az ábrán) a 90 elemű listát, így a kisorsolt számok alapján a listával (1-90) sok mindent kezdhetünk: vizsgálhatjuk, hogy melyik számot nem húzták ki, melyik számot hányszor húzták ki, és így tovább (emlékeim szerint ez a 2005-ös évben volt feladat).

De ez az egész nemcsak a lottósorsolás kapcsán hasznosítható, hanem minden olyan esetben, amikor egy adathalmaz egy másik adathalmazból veszi fel az értékeit. Például a kisorsolt szám az 1-90 halmazból veszi fel az értékét. Vagy nézzük az alábbi ábrát:

Egy 8x5-ös mátrix az öt nap közül veszi fel az értékeit. Ahogy a nyilak jelzik, lehet vizsgálni például , hogy melyik nap mennyi munka kerül sorra, mert a mátrix elemei indexelik a munkanapok listáját..

Nézzük meg a Python és C++ megoldást!


LIST (VECTOR) & DICT (MAP) adattípusok - Python

Programkód PY letöltés - Forrásfájl TXT letöltés


VECTOR (LIST) & MAP (DICT) adattípusok - C++

Programkód C++ letöltés - Forrásfájl TXT letöltés



SZÖVEG (STRING) adattípus - Python - 1. rész

Programkód PY letöltés



SZÖVEG (STRING) adattípus - C++ - 1. rész

Programkód C++ letöltés



SZÖVEG (STRING) adattípus - Python - 2. rész

Programkód PY letöltés



SZÖVEG (STRING) adattípus - C++ - 2. rész

Programkód C++ letöltés



POINTER - nyíl operátor C++

Programkód C++ letöltés