Az informatika a legszebb tantárgy! FÜGGVÉNYEK OK
Mi a függvény? <ul><li>A függvény egy alprogram, mely műveleteket tud végezni az adatokon és ennek eredményeként egy érték...
Működés <ul><li>Az összetett feladatokat előbb fel kell bontanunk egy-egy függvény formájában megvalósítható alfeladatokra...
Deklaráció és definíció <ul><li>Mielőtt meghívjuk, a függvényeket deklaráljuk, majd meg-írjuk a törzsét alkotó utasításoka...
Tulajdonságok <ul><li>Ha a függvény ad vissza valamilyen értéket, akkor a tör-zsében az utolsó végrehajtott utasítás egy  ...
Példa  elj árásra <ul><li>Számítsuk ki egy téglalap területét! </li></ul>A függvény hívása void   main () { int  hossz,sze...
Példa függvényre <ul><li>Sokkal logikusabb ha a területet kiszámítjuk! </li></ul>void   T () { int  hossz,szel, t ; printf...
Paraméterek <ul><li>A területszámítás paraméterek átadásával: </li></ul>int   T () { int  hossz,szel; printf ( “Hossz úság...
Lokális változók int   T () { int  hossz,szel; printf ( “Hossz úság:  ” ) ;  scanf ( “%d” , & hossz ); printf ( “Sz élessé...
Globális változók int  hossz,szel; int   T ( int  h,  int  sz ) { int Ter; Ter=h *sz return  T ; } void   main () { printf...
Összegzés <ul><li>A függvényen belül deklarált változókat  lokális  (helyi) változóknak nevezzük. </li></ul><ul><li>Helyi ...
Upcoming SlideShare
Loading in …5
×

Bevezetés a függvények világába

957 views
896 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
957
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Bevezetés a függvények világába

  1. 1. Az informatika a legszebb tantárgy! FÜGGVÉNYEK OK
  2. 2. Mi a függvény? <ul><li>A függvény egy alprogram, mely műveleteket tud végezni az adatokon és ennek eredményeként egy értéket tud vissza-adni. </li></ul><ul><li>Minden C programban van legalább egy függvény: main() . </li></ul><ul><li>A main() az a pont, ahol a program végrehajtása kezdődik . A main() maga is hívhat más függvényeket, és az általa hívott függvények is hívhatnak újabbakat, és így tovább. </li></ul><ul><li>Minden függvénynek egyedi neve van a programon belül . </li></ul><ul><li>Ha a végrehajtás egy ilyen névhez érkezik, akkor a program a függvényben leírt első művelettel folytatódik, majd innen egészen addig tart, amíg el nem ér egy return parancshoz, vagy a függvény kódjának végéhez. </li></ul><ul><li>Amikor a függvény visszatér a hívóhoz, a végrehajtás a hívást követő első paranccsal folytatódik. </li></ul><ul><li>Egy jól megírt függvény egyetlen, jól körülhatárolt feladatot hajt végre („ A jó függvény egy dolgot tud, de azt nagyon jól .”). </li></ul>
  3. 3. Működés <ul><li>Az összetett feladatokat előbb fel kell bontanunk egy-egy függvény formájában megvalósítható alfeladatokra, majd ezeket az elemi függvényeket egyenként a megfelelő sor-rendben meghívni. </li></ul><ul><li>Függvények segítségével a program kódja érthetőbb és karbantarthatóbb lesz. </li></ul>Program void main () { utas ítás; Függvény1 ( ); utasítás; Függvény2 (); utasítás; } Függvény1 { utas ítás1 _ 1; utasítás 1_ 2; return ; } Függvény2 { utas ítás 2_ 1; utasítás 2_ 2; utas ítás 2_3; return ; }
  4. 4. Deklaráció és definíció <ul><li>Mielőtt meghívjuk, a függvényeket deklaráljuk, majd meg-írjuk a törzsét alkotó utasításokat (definiáljuk). </li></ul><ul><li>A deklaráció abból áll, hogy megadjuk a függvény nevét, visszatérési értékének, valamint a bemenő paramétereinek típusát. </li></ul><ul><li>A definíció azt írja le, hogy miként kell a függvénynek működnie, milyen műveleteket kell végrehajtania. </li></ul><ul><li>Nem kötelező minden függvénynek paramétert megadni! </li></ul><ul><li>Ha a függvény nem ad vissza (nem számol ki) semmilyen értéket, akkor a visszaadott érték típusa helyett a void kulcsszót írjuk, a függvényt pedig eljárás nak nevezzük. </li></ul>Az utasítások írják le a függvény működését. visszat érésiÉrtékTípusa függvényNeve ( paramTípus paraméterNeve ) { utas ítások; }
  5. 5. Tulajdonságok <ul><li>Ha a függvény ad vissza valamilyen értéket, akkor a tör-zsében az utolsó végrehajtott utasítás egy return lesz. </li></ul><ul><li>Ez az utasítás a törzsben bárhol felbukkanhat (nem kell feltétlenül a függvény utolsó utasítása legyen). </li></ul><ul><li>A függvény törzsét kapcsos zárójelek között adjuk meg, és minden utasítást pontosvessző követ, de magát a függ-vényt nem zárja ilyen jel. </li></ul><ul><li>A függvényben szereplő utasítások számát tekintve nincs semmilyen korlát. A jól megtervezett függvény rövid! </li></ul><ul><li>Ha csak a függvény nevét és visszatérési értékének típusát adjuk meg egy pontosvessző kíséretében , akkor azt mondjuk hogy megadtuk a függvény prototípusát . </li></ul><ul><li>Ebben az esetben, a definíciót a program végére is írhatjuk. </li></ul>visszat érésiÉrtékTípusa függvényNeve ( paramTípus paraméterNeve );
  6. 6. Példa elj árásra <ul><li>Számítsuk ki egy téglalap területét! </li></ul>A függvény hívása void main () { int hossz,szel,T; printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); T=hossz *szel; printf ( “Ter ü let: %d” ,T); } Függvény nélkül : void Terulet () { int hossz,szel,T; printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); T=hossz *szel; printf ( “Ter ü let: %d” ,T); } void main () { Terulet (); } A f üggvény nem ad vissza értéket
  7. 7. Példa függvényre <ul><li>Sokkal logikusabb ha a területet kiszámítjuk! </li></ul>void T () { int hossz,szel, t ; printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); t=hossz *szel; printf ( “Ter ü let: %d” , t ); } void main () { T (); } A f üggvény nem ad vissza értéket int T () { int hossz,szel; printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); return hossz *szel; } void main () { printf ( “Ter ü let: %d” , T ()); } A f üggvény értéket ad vissza
  8. 8. Paraméterek <ul><li>A területszámítás paraméterek átadásával: </li></ul>int T () { int hossz,szel; printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); return hossz *szel; } void main () { printf ( “Ter ü let: %d” , T ()); } Paraméterek nélkül int T ( int h, int sz ) { return h *sz; } void main () { int hossz,szel; printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); printf ( “Ter ü let: %d” , T (hossz,szel)); } Paraméterátadással
  9. 9. Lokális változók int T () { int hossz,szel; printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); return hossz *szel; } void main () { printf ( “Ter ü let: %d” , T ()); } int T ( int h, int sz ) { int Ter; Ter=h *sz return T ; } void main () { int hossz,szel; printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); printf ( “Ter ü let: %d” , T (hossz,szel)); } Lokális változók
  10. 10. Globális változók int hossz,szel; int T ( int h, int sz ) { int Ter; Ter=h *sz return T ; } void main () { printf ( “Hossz úság: ” ) ; scanf ( “%d” , & hossz ); printf ( “Sz élesség: ” ); scanf ( “%d” , & szel); printf ( “Ter ü let: %d” , T (hossz,szel)); } Globális változók Formális paraméterek Aktuális paraméterek Lokális változók
  11. 11. Összegzés <ul><li>A függvényen belül deklarált változókat lokális (helyi) változóknak nevezzük. </li></ul><ul><li>Helyi változóknak tekintjük a függvénynek átadott paramétereket is. </li></ul><ul><li>A lokális változók csak abban a függvényben léteznek (láthatóak), amelyben deklaráltuk. </li></ul><ul><li>Azokat a változókat, melyeket minden függvényen kívül deklaráltunk globális változóknak nevezzük. </li></ul><ul><li>A globális változók bármely függvényből elérhetőek, beleértve a main() függvényt is. </li></ul><ul><li>Egy változó érvényességi köre meghatározza, hogy a változó mikor és a program mely részein hozzáférhető </li></ul>

×