1 / 48

Objektum orientált programozás

Objektum orientált programozás. 1. A programok felépítése Nagy Szilvia. Változók definiálása, deklarálás. A parancsok megkezdése előtt definiálni kell a használni kívánt változók és konstansok típusát:. Változók definiálása, deklarálás. Változótípusok:

Download Presentation

Objektum orientált programozás

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Objektum orientált programozás 1. A programok felépítése Nagy Szilvia

  2. Változók definiálása, deklarálás A parancsok megkezdése előtt definiálni kell a használni kívánt változók és konstansok típusát:

  3. Változók definiálása, deklarálás Változótípusok: • bool – boolean, logikai változó: igaz, hamis • char – karakter, 1 bájt, • int – integer, egész • short int • int • long int • long long int • flood – lebegőpontos szám

  4. Változók definiálása, deklarálás Változótípusok: • flood – lebegőpontos szám • flood • double • long double • signed, unsigned

  5. Változók definiálása, deklarálás

  6. Változók definiálása, deklarálás Tömb: változókból álló összetett adattípus

  7. Változók definiálása, deklarálás Tömb: változókból álló összetett adattípus Értékadás lehetséges már a deklaráció során is: int tomb[6]={12, 3, 8, -1, 7, 8};

  8. Kiíratás: printf függvény

  9. Kiíratás: printf függvény A printf-nek több paramétere lehet: • egy kötelező karakterlánc • a % utáni kifejezések helyére változók értékei kerülnek: • %c: karakter • %s: karaktertömb, a 0 karakterig • %d: tízes számrendszerbeli szám • %u: előjel nélküli (unsigned) tízes számrendszerbeli szám • %o: előjel nélküli egész, oktális alakú szám, pl: 0573

  10. Kiíratás: printf függvény • %x: előjel nélküli egész, hexadecimális alakú szám, kisbetűkkel, pl: 0xd4, ff35eac • %X: előjel nélküli egész, hexadecimális alakú szám, nagybetűkkel, pl: 0X2F • %f: lebegőpontos tizedesponttal, pl. 4.22 • %e: lebegőpontos szám normálalakban, kis e elválasztóval, pl. 1.3425e13 • %e: lebegőpontos szám normálalakban, kis e elválasztóval, pl. -2.45E4 • %g: %e és %f közül a rövidebb • %G: %E és %f közül a rövidebb

  11. Kiíratás: printf függvény • %p: pointer hexadecimális alakban, pl. FF23AA44 • %m: a legutóbbi hiba típusa (errno) A %-jel után közvetlenül paraméterek is kerülhetnek, • egy szám, vagy tizedesponttal elválasztott két szám: • %4d: 4 számjegyű egész • %.4f: 4 tizedesjegyű float • %3.4f: max. 3 számjegy után 4 tizedesjegy • – jel, ha balra igazítjuk az oszlopot

  12. Kiíratás: printf függvény • + jel, ha pozitív szám esetén +-szal kezdi a számot • szóköz, ha sem +, sem – jel nincs a szám előtt, szóközt tesz • # a szám tartalmazza a számrendszer-jelző karaktereit: oktális 0-t, hexadecimális 0x-et, vagy 0X-et, floatnál és normálaknál mindenképpen lesz tizedespont • ‘ a számjegyeket csoportba rendezi • 0 a számot nem szóközökkel, hanem 0-kkal tölti fel az üres helyein rendezéskor

  13. Kiíratás: printf függvény Speciális karakterek is megjelenhetnek: • \a: csengő • \b: visszalépés (backspace) • \f: lapdobás • \n: új sor • \r: kocsi vissza (return) • \t: tabulátor, vízszintes • \v: függőleges tabulátor • \\: \-jel • \’: aposztróf • \”: idézőjel • \?: kérdőjel

  14. Kiíratás: printf függvény A printf használata:

  15. Alapstruktúrák: elágazás if–else Ha egy logikai kifejezés igaz volta esetén szeretnénk egy parancsot végrehajtani, akkor használatos: if (feltétel){ parancsok1 } else{ parancsok2 } Az else ág opcionális

  16. Alapstruktúrák: elágazás if–else Ha egy logikai kifejezés igaz volta esetén szeretnénk egy parancsot végrehajtani, akkor használatos: Pl: ha korán kelünk, aranyat lelünk, egyébként sokat alszunk és elkésünk: if (korán kelünk) aranyat lelünk; else{ sokat alszunk; elkésünk; }

  17. Alapstruktúrák: elágazás if–else szám1=x; szám2=y; igen nem szám1−szám2>0? kiír: a második szám a nagyobb (szám2−szám1) értékével. kiír: az első szám a nagyobb (szám1−szám2) értékével.

  18. Alapstruktúrák: elágazás if–else szám1=x; szám2=y; szám1−szám2>0? nem igen kiír: a második szám a nagyobb (szám2−szám1) értékével. kiír: az első szám a nagyobb (szám1−szám2) értékével.

  19. Alapstruktúrák: elágazás if–else

  20. Alapstruktúrák: elágazás if–else Többszörösen elágaztathatunk else if ágakkal: if (feltétel1){ parancsok1;} else if (feltétel2){ parancsok2;} else if (feltétel3){ parancsok3;} … else {parancsok;}

  21. Alapstruktúrák: elágazás if–else szám1=x; szám2=y; igen nem szám1−szám2>0? kiír: az első szám a nagyobb (szám1−szám2) értékével. nem igen szám1−szám2=0? kiír: a második szám a nagyobb (szám2−szám1) értékével. kiír: a két szám egyforma

  22. Alapstruktúrák: elágazás if–else szám1=x; szám2=y; szám1−szám2>0? igen nem kiír: az első szám a nagyobb (szám1−szám2) értékével. szám1−szám2=0? nem igen kiír: a máso-dik szám a nagyobb (szám2− szám1) értékével. kiír: a két szám egy-forma

  23. Alapstruktúrák: elágazás if–else Többszörösen elágaztathatunk else if ágakkal:

  24. Alapstruktúrák: elágazás switch Eseteket választhatunk szét a switch - case parancsrendszerrel: switch(vizsgálandó változó){ case érték1: parancsok1; esetleg break/return; case érték2: parancsok2; esetleg break/return; … default: parancsok; }

  25. Alapstruktúrák: elágazás switch

  26. Alapstruktúrák: elágazás switch

  27. Alapstruktúrák: elágazás switch Ha a break/return; parancs nem szerepel egy esetben, a következő ágra ugrik: switch(vizsgálandó változó){ case érték1: case érték2: parancsok12; break; … default: parancsok; } mind az 1-es, mind a 2-es értéknél a parancsok12-t fogja végrehajtani.

  28. Alapstruktúrák: elágazás switch

  29. Alapstruktúrák: elágazás switch

  30. Alapstruktúrák: while ciklus Több lépésen keresztül hajtunk végre hasonló műveleteket: ciklusváltozó értékadása; while (feltétel){ parancsok; ciklusváltozó változtatása; }

  31. Alapstruktúrák: while ciklus

  32. Alapstruktúrák: while ciklus

  33. Alapstruktúrák: for ciklus Több lépésen keresztül hajtunk végre hasonló műveleteket: for (ciklusváltozó értékadása; feltétel; ciklusváltozó változtatása){ parancsok; }

  34. Alapstruktúrák: for ciklus

  35. Alapstruktúrák: for ciklus

  36. Példák egymásba ágyazott ciklusokra Egyszerű cserés rendezés: • számok páronkénti rendezése: • az első elemtől elindulva a külső ciklus biztosítja, hogy az aktuális helyre a jó elem kerüljön. Az i-edik lépésben az első i-1 elem rendezett lesz. • a belső ciklus a tömb nem rendezett felén lépeget sorba, a belső ciklus és a külső ciklus eleme rossz sorrendben van (pl növekvő sorrendbe való rendezés esetén belső ciklus eleme < külső ciklus eleme) , cserél.

  37. Példák egymásba ágyazott ciklusokra Eleje+main fv definiálás a programban Egyszerű cserés rendezés: eredeti tömb kiírása az indexek és az új tömb kiírása minden csere után

  38. Példák egymásba ágyazott ciklusokra Egyszerű cserés rendezés:

  39. Példák egymásba ágyazott ciklusokra Buborékos rendezés: • számok páronkénti rendezése: • az első elemtől elindulva a külső ciklus biztosítja, hogy az aktuális helyre a jó elem kerüljön. Az i-edik lépésben az első i-1 elem rendezett lesz. • a belső ciklus a tömb nem rendezett felén lépeget hátulról előre a külső cikluselemig. Ha a belső cikluselem és a fölötte levő elem rossz sorrendben van, cserél.

  40. Példák egymásba ágyazott ciklusokra Eleje+main fv definiálás a programban Buborékos rendezés: eredeti tömb kiírása az indexek és az új tömb kiírása minden csere után

  41. Példák egymásba ágyazott ciklusokra Buborékos rendezés:

  42. Példák egymásba ágyazott ciklusokra Minimum/maximumkiválasztásos rendezés: • számok páronkénti rendezése: • az első elemtől elindulva a külső ciklus biztosítja, hogy az aktuális helyre a jó elem kerüljön. Az i-edik lépésben az első i-1 elem rendezett lesz. • a belső ciklus a tömb nem rendezett felében megkeresi a legnagyobb, ill. legkisebb elemet, és azt cseréli ki a külső ciklus aktuális elemével, ha szükséges. →sokkal kevesebb csere

  43. Példák egymásba ágyazott ciklusokra Eleje+main fv definiálás a programban Extrémumkereséses rendezés: eredeti tömb kiírása csere a külső ciklusban az indexek és az új tömb kiírása minden csere után

  44. Példák egymásba ágyazott ciklusokra Extrémumkereséses rendezés:

  45. Példák egymásba ágyazott ciklusokra Beillesztéses rendezés: • a már rendezett sorozatban keresi meg a következő elem helyét, kezdetben egy elemű a sorozat. • a külső ciklus a 2.-tól végigmegy az elemeken • a belső ciklus a külső cikluselem előtti szakaszon keresi meg a külső cikluselem pozícióját, odahelyezi az elemet, a többit lejjebb csúsztatja.

  46. Példák egymásba ágyazott ciklusokra Eleje+main fv definiálás a programban Beillesztéses rendezés: eredeti tömb kiírása az indexek és az új tömb kiírása minden csere után

  47. Példák egymásba ágyazott ciklusokra Beillesztéses rendezés:

  48. Példák egymásba ágyazott ciklusokra Beillesztéses rendezés:

More Related