Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

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

Hasonló előadás


Az előadások a következő témára: "1 Objektum orientált programozás 1. A programok felépítése Nagy Szilvia."— Előadás másolata:

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

2 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 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 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 5 Változók definiálása, deklarálás

6 6 Tömb: változókból álló összetett adattípus

7 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 8 Kiíratás: printf függvény

9 9 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 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 –%e : lebegőpontos szám normálalakban, kis e elválasztóval, pl e13 –%e : lebegőpontos szám normálalakban, kis e elválasztóval, pl E4 –%g : %e és %f közül a rövidebb –%G : %E és %f közül a rövidebb

11 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 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 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 14 Kiíratás: printf függvény A printf használata:

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

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

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

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

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

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

24 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 25 Alapstruktúrák: elágazás switch

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

27 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 28 Alapstruktúrák: elágazás switch

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

30 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 31 Alapstruktúrák: while ciklus

32 32 Alapstruktúrák: while ciklus

33 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 34 Alapstruktúrák: for ciklus

35 35 Alapstruktúrák: for ciklus

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

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

39 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 40 Példák egymásba ágyazott ciklusokra Buborékos rendezés: eredeti tömb kiírása Eleje+main fv definiálás a programban az indexek és az új tömb kiírása minden csere után

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

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

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

45 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 46 Példák egymásba ágyazott ciklusokra Beillesztéses rendezés: eredeti tömb kiírása Eleje+main fv definiálás a programban az indexek és az új tömb kiírása minden csere után

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

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


Letölteni ppt "1 Objektum orientált programozás 1. A programok felépítése Nagy Szilvia."

Hasonló előadás


Google Hirdetések