3 A C programozási nyelv szintaktikai egységei

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "3 A C programozási nyelv szintaktikai egységei"

Átírás

1 3 A C programozási nyelv szintaktikai egységei 3.1 Azonosítók Betűk és számjegyek sorozata, betűvel vagy _ (aláhúzás) karakterrel kell kezdődnie. A nagy- és kisbetűk különbözőek. Az azonosítók tetszőleges hosszúságúak lehetnek, de implementációtól függően csak az első meghatározott számú karakterük vesz részt a megkülönböztetésben Helyes azonosítók például: Ez ezis es_meg_ez_is _a4 _3 Helytelen azonosítók például: 6ez /* mert számmal nem kezdődhet. */ ez is /* mert szóköz nem számít betűnek. */ És_ez /* mert az É nem szerepel az angol abc betűi közt. */ Ez[10] /* mert a [10] a deklaráció (típusmegadás) része, nem az azonosítóé (ld. tömbök). */ Ez-is /* mert a kötőjel sem számít betűnek. */ 3.2 Kulcsszavak Csak meghatározott célra használható azonosítók. Kisbetűvel kell írni. (Tehát int kulcsszó, INT vagy Int általános célú azonosító - bár nem illik használni.) 3.3 Állandók Egész állandók A számjegyek sorozatát tartalmazó, nem nullával kezdődő egész szám decimális állandó. Az egész állandó megadható még az alábbi alakokban: oktális, ha vezető 0-val kezdődik hexadecimális, ha 0X vagy 0x vezeti be. A ig terjedő számjegyek jelölésére az a-f vagy A-F karakterek használhatók Karakterállandó Aposztrófok között egy karakter. Értéke az adott karakter kódja. Bizonyos, nem nyomtatható karakterek helyett írható úgynevezett "Escape -szekvencia", az alábbiak szerint: \n újsor \t vízszintes tabulátor Lebegőpontos állandó Az vagy egészrész.törtrész E kitevő egészrész.törtrész e kitevő alakú konstans lebegőpontos számot jelent

2 3.4 Változók A változóknak van érték része, attribútumai (számunkra ez a típus), címe, és neve. A név egy azonosító. A változóra a nevével hivatkozhatunk a program szövegében. A cím az a memóriaterület, amelyen a változó értéke elhelyezkedik. Az érték pedig a változó típusához tartozó tartomány egy eleme. Mielőtt használunk egy változót, deklarációs utasításban a nevéhez típust kell rendelnünk. A deklarációs utasításban lehetőségünk van kezdőértéket adni a változóknak. Pl. char c; int x; int tomb[10]; int x= 5, y= 6; //Karakter típusú változó //Egész típusú változó //Egészeket tartalmazó tömb típusú változó (a változónév: tomb) Az =-t értékadó operátornak nevezzük. Hatására a bal oldalán álló változó felveszi a jobb oldalán álló kifejezés értékét. Ezt követően ha a változó megjelenik a kódban, mindig az utoljára felvett értéket képviseli. A következőkben megnézzük, milyen műveleteket végezhetünk a változókkal és a konstansokkal. int x= 5, y= 6; //kezdőérték adás z= 3 + 4; //értékadó utasítás x= y + 2; A fenti utasítások kiadása után az x értéke 8 lesz. A változókban tárolt értékekkel és a kódban megjelenő literálokkal (számok) számos művelet végezhető. Az gyakorlatokon leggyakrabban használt műveletek a következők: int x = 5, y = 6, osszeg, kulonbseg, szorzat, hanyados, maradek; osszeg = x + y; kulonbseg = x - y; szorzat = x * y; hanyados = x / y; maradek = x % y; A műveleti jeleket operátoroknak nevezzük. Az utasítások lefutása után az osszeg, kulonbseg, szorzat, hanyados változók rendre az x és y változó értékeinek összegét, különbségét szorzatát és hányadosát tartalmazzák, míg a maradek változó az x változó értékét y értékével elosztva kapott maradékot tartalmazza. Egy változó értékét önmagához képest, relatívan is megváltoztathatjuk: int x= 5; x= x + 2; A következő példában adott 2 változónk, amelyek két számot tartalmaznak. A feladat: cseréljük meg a változók tartalmát. A megoldáshoz felhasználunk egy harmadik változót is, amelyben ideiglenesen fogunk tárolni egy értéket: int x= 3, y= 4, z; z= x; x= y; y= z; 3.5 Nevesített konstans Olyan konstans, amely névvel ellátott, és ezzel a névvel tudunk hivatkozni az értékére a program szövegében. Pl.: const int N = 4; //Itt az N egy nevesített konstans, értéke az egész program futása során 4

3 C-ben jellemző, hogy makrót használunk a konstans definiálására. Ezt a program elején a main függvényen kívül tehetjük meg. #define N 4 A makrózás annyit jelent, hogy a program szövegében előforduló név (itt: N) minden előfordulását az adott sor további részével (itt: 4) helyettesíti az előfordító. Figyeljük meg, hogy nincs pontosvessző a sor végén! 3.6 Kifejezés A kifejezések operandusokból, és operátorokból, valamint zárójelekből épülnek fel. Az operandus lehet konstans, nevesített konstans, változó, vagy függvényhívás Operátorok A C egyszerűsített precedencia táblázata a következő: ( ) []! * / % + - < > <= >= ==!= && = += -= *= /= %= A táblázat felső sorában lévő műveleti jelek kötnek legerősebben (vagyis a kiértékelés során ezek hajtódnak végre először), és soronként gyengülnek. Az azonos sorban lévő operátorok kiértékelése a nyíl által mutatott sorrendben történik. Az operátorok lehetnek prefixek, ami azt jelenti, hogy az operátor az operandus elé kerül, ilyenek például a matematikában az előjelek. Lehetnek infixek, ekkor az operátor két operandusa közé kerül, ilyen például az összeadás, és lehetnek postfixek, amikor az operandus mögött áll az operátor. A következőkben kifejezésekre láthatunk példákat: int x= 3, y= 2; a= (x + y) * (x + y); /* Vesd össze: a = x + y * x + y */ b= x*x + 2*x*y + y*y; c= x*x - 2*x*y + y*y; 3.7 Hasonlító és logikai operátorok Mivel a programozás során egy-egy feladat megoldásához, csak úgy, mint a matematikában, szükségünk lehet kikötések, feltételek megadására. Ilyen feltételeket változókra, vagy kifejezésekre adhatunk meg hasonító és logikai operátorok segítségével. A C nyelv hasonlító operátorai: numerikus értékek egyenlőségvizsgálata: == numerikus értékek nem egyenlőségének vizsgálata:! = numerikus értékek összehasonlítása: <, >, <=, >= Hasonlításokat literálok és változók között végezhetünk, a hasonlítás eredménye egy logikai érték. A C nyelvben kétértékű logika van, azaz egy logikai érték igaz, vagy hamis lehet. A C a logikai értékeket egész számokként kezeli a következő módon: ha egy egész típusú változó, vagy kifejezés értéke nem nulla, akkor azt igaznak tekintjük ha egy egész típusú változó, vagy kifejezés értéke nulla, akkor azt hamisnak tekintjük int a= 4, b= 5, c;

4 c= (a < b); /*c erteke igaz*/ c= (a > b); /*c erteke hamis*/ c= 10; /*c erteke igaz*/ c= 0; /*c erteke hamis*/ c= (a == b); /*c erteke hamis*/ c= (a == 4); /*c erteke igaz*/ c= (a!= 5); /*c erteke igaz*/ c= (a <= 10); /*c erteke igaz*/ Összetettebb feltételek megadására használhatóak a C logikai operátorai, amelyek a matematikából ismert konjukció, diszjunkció és negáció megfelelői: és-kapcsolat: && vagy-kapcsolat: tagadás:! A logikai operátorokkal tehát bonyolultabb logikai kifejezések is felépíthetőek: int a= 4, b= 5, c; c= (a < b) && (a == b); /*c erteke hamis*/ c= (a < b) (a == b); /*c erteke igaz*/ c= (((a < b) (a > 10)) && ((a!= 6) (a < 2))); /*c erteke igaz*/ c= a && 0; /*c erteke hamis*/; c= a && 1; /*c erteke igaz*/; c= a && 25; /*c erteke igaz*/; c=!a; /*c erteke hamis*/; c=! (a && 0 ); /*c erteke igaz*/; c=! (a && 25 ); /*c erteke hamis*/; Most lássunk néhány példát arra, hogy a hasonlító és logikai operátorok segítségével hogyan tudjuk változóknak bizonyos intervallumokba esését, és más speciális tulajdonságait vizsgálni (ezt a későbbiekben gyakran fogjuk használni): a kisebb, mint 10: a < 10; a 10 és 20 közé esik: 10 <= a && a <= 20; a 10 és 20 közé, vagy 30 és 40 közé esik: (10 <= a && a <= 20) (30 <= a && a <= 40); a osztható kettővel: (a % 2) == 0 a 100 osztója: (100 % a) == Szelekció Ahogy arról korábban már szó esett, az általunk írt programok futása szekvenciális, ami azt jelenti, hogy az utasítások egymás után kerülnek végrehajtásra,mindazonáltal nagyon gyakran kerülhetünk olyan helyzetbe, hogy egy kiszámított értéktől függően más és más kódot kellene végrehajtanunk. Például: gondoljunk arra, hogy egy nagyon egyszerű programot szeretnénk készíteni, ami kiszámítja egy szám abszolút értékét. Ha a szám pozitív, akkor önmaga az abszolút értéke, ha viszont negatív, akkor a -1-szerese. Érezhető, hogy már ezt a nagyon egyszerű feladatot sem tudjuk megoldani, anélkül, hogy a program futását ketté nem választanánk. Ugyanis attól függően, hogy a beolvasott szám negatív vagy pozitív, más-más utasításokat kell végrehajtanunk. Az ilyen esetek megoldására szerepel a C-ben a szelekciós (vagy elágaztató) utasítás: if(egesz_erteku_kifejezes) utasitas; [ else if(egesz_erteku_kifejezes) utasitas; ]... [ else utasitas; ]

5 Az utasítás szemantikája a következő: Az if alapszó után álló egész értékű kifejezés értéke meghatározásra kerül. Ha logikailag igaz, tehát nem 0, abban az esetben végrehajtódik az utána szereplő utasítás, és a program a szelekció utáni utasításon folytatódik, ha hamis, és van else if ág, akkor kiértékelődik az utána szereplő egész értékű kifejezés. Ha ez igaz, akkor végrehajtódik az utasítás, és a program a szelekció utáni utasításon folytatódik. Ha hamis, akkor és van még else if ág, akkor az is kiértékelésre kerül a fenti módon, ha nincs több else if ág, és nincs else ág sem, akkor a program a szelekció utáni utasításon folytatódik, ha van else ág, akkor végrehajtódik az else után álló utasítás, majd a program a szelekció utáni utasításon folytatódik. Példaként nézzük meg a fenti abszolútérték kiszámító programot, amely bemenete egy szám, kimenete pedig az abszolútértéke. int a,b; if(a >= 0) b= a; else b= (-1)*a; printf( %d\n, a ); Ebben a példában a beolvasott szám abszolútértékét egy külön változóba számítottuk ki, a b-be. Ha az a nem negatív, akkor a b egyszerűen értékül kapja a-t, ha negatív, akkor a -1-szeresét. Ugyanezt megoldhatjuk a b változó használata nélkül is: int a; if(a < 0) a= (-1)*a; printf( %d\n, a ); Válasszuk ki két változó közül azt, amelyik a kisebb értéket tartalmazza, és adjuk ezt értékül a min változónak! int a, b, min; scanf( %d %d, &a, &b ); if ( a < b ) min= a; else min= b; printf( %d\n, min ); Adott két változó a és b, változtassuk meg az értékeiket úgy, hogy a tartalmazza a kisebbet, és b a nagyobbat! int a, b, temp; scanf( %d %d, &a, &b ); if ( b < a ) { temp= a; a= b; b= temp; }

6 A következő példában olyan programot készítünk, amely beolvas egy számot, és a kimenete a beolvasott szám legkisebb olyan prím osztója, amely kisebb, mint 10. Ha nincs neki ilyen, akkor a kimenet -1 lesz. int a,b; if ( (a % 2) == 0 ) b= 2; else if ( (a % 3) == 0 ) b= 3; else if ( (a % 5) == 0 ) b= 5; else if ( (a % 7) == 0 ) b= 7; else b= -1; printf( %d\n, b ); 3.9 Iteráció A következő feladatot kell megoldanunk: beolvasunk egy számot, és számítsuk ki a faktoriálisát. Eddigi ismereteink alapján ezt a következő módon tehetjük meg: int a,b; if (a == 0) b= 1; else if (a == 1) b= 1; else if (a == 2) b= 1*2; else if (a == 3) b= 1*2*3; else if (a == 4) b= 1*2*3*4; else if (a == 5) b= 1*2*3*4*5;... printf( %d\n, b ); Ezzel a megoldással az a probléma, hogy nagyon hosszú, és egyáltalán nem hatékony. Észre lehet venni, hogy minden esetben ugyanazt a műveletet (szorzás) kell a bemenettől függően általában nagyon sokszor végrehajtanunk. Az ehhez hasonló problémák megoldására szerepel a C-nyelvben az iteráció, mint vezérlési szerkezet. Több formája van, most az előírt lépésszámú ciklussal (for-ciklus) ismerkedünk meg. Szintaktikája: for(utasitas_1;egesz_erteku_kifejezes;utasitas_2) utasitas_3; A for-ciklus szemantikája a következő: végrehajtásra kerül az utasitas_1. Ezt követően kiértékelődik az egesz_erteku_kifejezes, ami logikai feltételként szolgál. Amennyiben ez logikailag hamis, a vezérlés az iterációt követő utasítással folytatódik. Ha a feltétel igaz, akkor végrehajtódik az utasitas_3, majd lefut az utasitas_2, ezt követően ismét kiértékelődik az

7 egesz_erteku_kifejezes, és így tovább, egészen addig, amig az egesz_erteku_kifejezes hamissá nem válik. Ekkor a vezérlés az iteráció utáni utasítással folytatódik. Lássuk példaként a faktoriális számítást: int a,b,i; b= 1; for(i= 2; i <= a; ++i) b= b*i; printf( %d\n, b ); Hangsúlyozzuk, hogy egy programot nagyon sok módon meg lehet írni, például az alábbi program ugyanúgy faktoriálist számít: int a,b; b= 1; for(;a > 0; --a) b= b*a; printf( %d\n, b ); 3.10 Gyakorló feladatok Számítsuk ki a t változóba az a oldalú és m magasságú háromszög területét! t= a * m / 2; Számítsuk ki az a változóba az x1, x2, x3, x4, x5 változókban tárolt értékek számtani közepét: a= (x1 + x2 + x3 + x4 + x5) / 5; Írjunk fel egy logikai feltételt, amely akkor igaz, ha az x, y változókban tárolt koordinátájú pont benne van a A(0; 0);B(6; 0);C(6; 2);D(0; 2) csúcsokkal rendelkező téglalapban. b= ( 0 <= x ) && ( x <= 6 ) && ( 0 <= y ) && ( y <= 2 ); Írjunk fel egy logikai feltételt, amely akkor igaz, ha az x, y változókban tárolt koordinátájú pont nincs benne a A(0; 0);B(6; 0);C(6; 2);D(0; 2) csúcsokkal rendelkező téglalapban. b=!(( 0 <= x ) && ( x <= 6 ) && ( 0 <= y ) && ( y <= 2 )); Írjunk fel olyan utasítást, amely ha az a változó páros, megnöveli egy b változó értékét 1-el, ha a páratlan, csökkenti a b értékét 1-el. if ( (a \% 2) == 0 ) ++b; else --b; Írjunk fel egy olyan utasítást, amely ha az a változó értéke benne van a (1; 10) tartományban, megnöveli a b értékét 1-el, ha benne van a (11; 20) tartományban, akkor 2-vel, különben csökkenti b értékét 1-el. if ( ( 1 <= a && a <= 10 ) ) b+= 1; else if ( ( 11 <= a && a <= 20 ) ) b+= 2; else --b;

8 Írjunk olyan utasítást, amely 0-tól n-ig összeadja a számokat: int sum= 0, i; for ( i= 0; i <= n; ++i ) sum+= i; Írjunk olyan utasítást, amely 0-tól n-ig összeadja a páros számokat: int sum= 0, i; for ( i= 0; i <= n; ++i ) if ( (i % 2) == 0 ) sum+= i; Másik megoldás: int sum= 0, i; for ( i= 0; i <= n; i= i + 2 ) sum+= i; Írjunk programot, amely kiszámolja az egész számok összegét, és szorzatát (faktoriális) 1-tol n-ig. int sum= 0, fakt= 1, i; for ( i= 0; i <= n; ++i ) { sum+= i; fakt*= i; } 3.11 Tömb A C nyelvben adott m méretű egészekből álló t tömböt a következő módon hozhatunk létre: int t*m+, ahol m nem-negatív egész LITERÁL! Pl. int t[20]; A tömb elemeinek számozása 0-tól indul. A tömb első, második, harmadik, stb. elemeire a következő módon hivatkozhatunk: t*0+, t*1+, t*2+, A tömb i indexű elemére a következő módon hivatkozhatunk: t[i]. int t[10], a; t[0]= 0; t[1]= 1; t[2]= 1; t[3]= 2; t[4]= 3; t[5]= 5; t[6]= 8; t[7]= 13; t[8]= 21; t[9]= 34; a= t[0] + t[2] + t[4] + t[6] + t[8]; A fenti kódrészletben egy tíz elemből álló t tömböt töltöttünk fel a Fibonacci-sorozat első tíz elemével, majd a sorozat páratlan indexű elemeinek összegét értékül adtuk az a változónak. Figyeljük meg, hogy a 0-val kezdődő indexelés miatt a sorozat első eleme a tömb 0 indexű eleme lesz, míg a Fibonacci-sorozat tízedik eleme a tömb 9 indexű helyére kerül. A fenti módon, statikusan lefoglalt tömbökben negatív indexű elemre, illetve a tömb felső határán túl mutató elemre hivatkozni nem szabad, a program hibás működéséhez vezet.

9 3.12 Gyakorló feladatok Töltsünk fel egy 100 elemű tömböt az első száz természetes számmal: int t[100]; int i; for ( i= 1; i < 100; ++i ) t[i]= i; Töltsünk fel egy 100 elemű tömböt az első 100 páros számmal: int t[100]; int i,j; for ( i= 0; i < 100; ++i ) t[i]= i*2; Töltsünk fel egy 100 elemű tömböt az első száz olyan számmal, amelyek 3-al, és 7-el sem oszthatóak. int t[100]; int i= 0,j; for ( j= 0; 1; ++j ) { if ( ((j % 3)!= 0 ) && ((j % 7)!= 0 ) ) t[i++]= j; if ( i >= 100 ) break; } Bekérünk a standard input-ról 100 egész számot egy 100 elemű tömbbe. Adjuk össze a tömbben szereplő értékeket a sum változóba. int t[100]; int i,sum= 0; for ( i= 0; i < 100; ++i ) scanf( %d, &t[i] ); for ( i= 0; i < 100; ++i ) sum+= t[i]; printf( %d\n, sum ); Számold ki t átlagát, az atlag nevű változóba: int i, szum = 0; double atlag = 0.0; for(i=0; i<n; ++i) szum += t[i]; atlag = (double)szum/(double)n; Összegezd t-ben a hárommal osztható elemeket a szum nevű változóba: int i, szum = 0; for(i=0; i<n; ++i) if(t[i]%3 == 0) szum += t[i];

10 Add meg a t tömbben a páratlan indexű helyeken lévő, nullától különböző elemek szorzatát a szorzat változóba: int i, szorzat = 1; for(int i=1; i<n; i+=2) if(t[i]) szorzat *= t[i];

Vezérlési szerkezetek

Vezérlési szerkezetek Vezérlési szerkezetek Szelekciós ok: if, else, switch If Segítségével valamely ok végrehajtását valamely feltétel teljesülése esetén végezzük el. Az if segítségével valamely tevékenység () végrehajtását

Részletesebben

Járműfedélzeti rendszerek II. 1. előadás Dr. Bécsi Tamás

Járműfedélzeti rendszerek II. 1. előadás Dr. Bécsi Tamás Járműfedélzeti rendszerek II. 1. előadás Dr. Bécsi Tamás A tárgy órái Előadás hetente (St101) csüt. 8:15 Bécsi Tamás C elmélet Ajánlott irodalom Dennis Ritchie: A C programozási nyelv Gyakorlat hetente

Részletesebben

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double Programozás alapjai C nyelv 4. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.10.. -1- Mit tudunk már? Típus fogalma char, int, float,

Részletesebben

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3)

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3) Programozás alapjai C nyelv 4. gyakorlat Szeberényi Imre BME IIT Mit tudunk már? Típus fogalma char, int, float, double változók deklarációja operátorok (aritmetikai, relációs, logikai,

Részletesebben

1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb

1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb 1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb #include main() { int a, b; printf( "a=" ); scanf( "%d", &a ); printf( "b=" ); scanf( "%d", &b ); if( a< b ) { inttmp = a; a =

Részletesebben

Készítette: Nagy Tibor István

Készítette: Nagy Tibor István Készítette: Nagy Tibor István Operátorok Műveletek Egy (vagy több) műveleti jellel írhatók le A műveletet operandusaikkal végzik Operátorok fajtái operandusok száma szerint: egyoperandusú operátorok (pl.:

Részletesebben

A C programozási nyelv I. Bevezetés

A C programozási nyelv I. Bevezetés A C programozási nyelv I. Bevezetés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv I. (bevezetés) CBEV1 / 1 A C nyelv története Dennis M. Ritchie AT&T Lab., 1972 rendszerprogramozás,

Részletesebben

Webprogramozás szakkör

Webprogramozás szakkör Webprogramozás szakkör Előadás 5 (2012.04.09) Programozás alapok Eddig amit láttunk: Programozás lépései o Feladat leírása (specifikáció) o Algoritmizálás, tervezés (folyamatábra, pszeudokód) o Programozás

Részletesebben

BASH SCRIPT SHELL JEGYZETEK

BASH SCRIPT SHELL JEGYZETEK BASH SCRIPT SHELL JEGYZETEK 1 TARTALOM Paraméterek... 4 Változók... 4 Környezeti változók... 4 Szűrők... 4 grep... 4 sed... 5 cut... 5 head, tail... 5 Reguláris kifejezések... 6 *... 6 +... 6?... 6 {m,n}...

Részletesebben

Gyakorló feladatok az 1. nagy zárthelyire

Gyakorló feladatok az 1. nagy zárthelyire Gyakorló feladatok az 1. nagy zárthelyire 2012. október 7. 1. Egyszerű, bevezető feladatok 1. Kérjen be a felhasználótól egy sugarat. Írja ki az adott sugarú kör kerületét illetve területét! (Elegendő

Részletesebben

Java II. I A Java programozási nyelv alapelemei

Java II. I A Java programozási nyelv alapelemei Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 02. 19. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve az annak

Részletesebben

Bevezetés a programozásba I.

Bevezetés a programozásba I. Elágazás Bevezetés a programozásba I. 2. gyakorlat, tömbök Surányi Márton PPKE-ITK 2010.09.14. Elágazás Elágazás Eddigi programjaink egyszer ek voltak, egy beolvasás (BE: a), esetleg valami m velet (a

Részletesebben

1. Gyakorlat. Rövid elméleti összefoglaló. típus változónév <= kezdőérték><, >;

1. Gyakorlat. Rövid elméleti összefoglaló. <tárolási osztály>típus <típus > változónév <= kezdőérték><, >; Rövid elméleti összefoglaló 1. Gyakorlat A C++ nyelv hatékony, általános célú programozási nyelv, amely hagyományos fejlesztőeszközként és objektum-orientált programozási nyelvként egyaránt használható.

Részletesebben

Bevezetés a programozásba I.

Bevezetés a programozásba I. Bevezetés a programozásba I. 3. gyakorlat Tömbök, programozási tételek Surányi Márton PPKE-ITK 2010.09.21. ZH! PlanG-ból papír alapú zárthelyit írunk el reláthatólag október 5-én! Tömbök Tömbök Eddig egy-egy

Részletesebben

A C# programozási nyelv alapjai

A C# programozási nyelv alapjai A C# programozási nyelv alapjai Tisztán objektum-orientált Kis- és nagybetűket megkülönbözteti Ötvözi a C++, Delphi, Java programozási nyelvek pozitívumait.net futtatókörnyezet Visual Studio fejlesztőkörnyezet

Részletesebben

Programozás BMEKOKAA146. Dr. Bécsi Tamás 2. előadás

Programozás BMEKOKAA146. Dr. Bécsi Tamás 2. előadás Programozás BMEKOKAA146 Dr. Bécsi Tamás 2. előadás Szintaktikai alapok Alapvető típusok, ismétlés C# típus.net típus Méret (byte) Leírás byte System.Byte 1Előjel nélküli 8 bites egész szám (0..255) char

Részletesebben

Algoritmusok pszeudókód... 1

Algoritmusok pszeudókód... 1 Tartalomjegyzék Algoritmusok pszeudókód... 1 Abszolút érték... 1 Hányados ismételt kivonással... 1 Legnagyobb közös osztó... 2 Páros számok szűrése... 2 Palindrom számok... 2 Orosz szorzás... 3 Minimum

Részletesebben

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása 1 Információk 2 A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin Elérhetőség mesko.katalin@tfk.kefo.hu Fogadóóra: szerda 9:50-10:35 Számonkérés időpontok Április 25. 9 00 Május 17. 9 00 Június

Részletesebben

Gyakorló feladatok. /2 Maradék /16 Maradék /8 Maradék

Gyakorló feladatok. /2 Maradék /16 Maradék /8 Maradék Gyakorló feladatok Számrendszerek: Feladat: Ábrázold kettes számrendszerbe a 639 10, 16-os számrendszerbe a 311 10, 8-as számrendszerbe a 483 10 számot! /2 Maradék /16 Maradék /8 Maradék 639 1 311 7 483

Részletesebben

Felvételi tematika INFORMATIKA

Felvételi tematika INFORMATIKA Felvételi tematika INFORMATIKA 2016 FEJEZETEK 1. Természetes számok feldolgozása számjegyenként. 2. Számsorozatok feldolgozása elemenként. Egydimenziós tömbök. 3. Mátrixok feldolgozása elemenként/soronként/oszloponként.

Részletesebben

Programozás I. gyakorlat

Programozás I. gyakorlat Programozás I. gyakorlat 2. gyakorlat Kifejezések, vezérlési szerkezetek, struktúrák Kifejezések Mit ír ki az alábbi program? #include int main() { int a = 20, b = 40; printf("%d\n", a > b);

Részletesebben

SZÁMÉRTÉKEK (ÁT)KÓDOLÁSA

SZÁMÉRTÉKEK (ÁT)KÓDOLÁSA 1 ELSŐ GYAKORLAT SZÁMÉRTÉKEK (ÁT)KÓDOLÁSA A feladat elvégzése során a következőket fogjuk gyakorolni: Számrendszerek közti átváltás előjelesen és előjel nélkül. Bináris, decimális, hexadexcimális számrendszer.

Részletesebben

Tartalomjegyzék Algoritmusok - pszeudókód... 1 42

Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Abszolút érték...1 Hányados ismételt kivonással...1 Legnagyobb közös osztó... 1 2 Páros számok szűrése...2 Palindrom számok... 2 3 Orosz szorzás...3 Minimum

Részletesebben

1. gyakorlat

1. gyakorlat Követelményrendszer Bevezetés a programozásba I. 1. gyakorlat Surányi Márton PPKE-ITK 2010.09.07. Követelményrendszer Követelményrendszer A gyakorlatokon a részvétel kötelező! Két nagyzárthelyi Röpzárthelyik

Részletesebben

Java programozási nyelv

Java programozási nyelv Java programozási nyelv 2. rész Vezérlő szerkezetek Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/23 Tartalomjegyzék

Részletesebben

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3)

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3) Programozás alapjai C nyelv 5. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.17. -1- Tömbök Azonos típusú adatok tárolására. Index

Részletesebben

Algoritmusok pszeudókód... 1

Algoritmusok pszeudókód... 1 Tartalomjegyzék Algoritmusok pszeudókód... 1 Abszolút érték... 1 Hányados ismételt kivonással... 1 Legnagyobb közös osztó... 1 Páros számok szűrése... 2 Palindrom számok... 2 Orosz szorzás... 2 Minimum

Részletesebben

Tömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása

Tömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása Tömbök kezelése Példa: Vonalkód ellenőrzőjegyének kiszámítása A számokkal jellemzett adatok, pl. személyi szám, adószám, taj-szám, vonalkód, bankszámlaszám esetében az elírásból származó hibát ún. ellenőrző

Részletesebben

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs Programozás I. 1. előadás: Algoritmusok alapjai Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember 7. Sergyán

Részletesebben

C programozási nyelv Pointerek, tömbök, pointer aritmetika

C programozási nyelv Pointerek, tömbök, pointer aritmetika C programozási nyelv Pointerek, tömbök, pointer aritmetika Dr. Schuster György 2011. június 16. C programozási nyelv Pointerek, tömbök, pointer aritmetika 2011. június 16. 1 / 15 Pointerek (mutatók) Pointerek

Részletesebben

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I.

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I. Számelmélet I. DEFINÍCIÓ: (Osztó, többszörös) Ha egy a szám felírható egy b szám és egy másik egész szám szorzataként, akkor a b számot az a osztójának, az a számot a b többszörösének nevezzük. Megjegyzés:

Részletesebben

Programozás I. gyakorlat

Programozás I. gyakorlat Programozás I. gyakorlat 1. gyakorlat Alapok Eszközök Szövegszerkesztő: Szintaktikai kiemelés Egyszerre több fájl szerkesztése pl.: gedit, mcedit, joe, vi, Notepad++ stb. Fordító: Szöveges file-ban tárolt

Részletesebben

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

Bánsághi Anna 2014 Bánsághi Anna 1 of 68 IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív

Részletesebben

1. Egyszerű (primitív) típusok. 2. Referencia típusok

1. Egyszerű (primitív) típusok. 2. Referencia típusok II. A Java nyelv eszközei 1. Milyen eszközöket nyújt a Java a programozóknak Korábban már említettük, hogy a Java a C nyelvből alakult ki, ezért a C, C++ nyelvben járatos programozóknak nem fog nehézséget

Részletesebben

ÁTVÁLTÁSOK SZÁMRENDSZEREK KÖZÖTT, SZÁMÁBRÁZOLÁS, BOOLE-ALGEBRA

ÁTVÁLTÁSOK SZÁMRENDSZEREK KÖZÖTT, SZÁMÁBRÁZOLÁS, BOOLE-ALGEBRA 1. Tízes (decimális) számrendszerből: a. Kettes (bináris) számrendszerbe: Vegyük a 2634 10 -es számot, és váltsuk át bináris (kettes) számrendszerbe! A legegyszerűbb módszer: írjuk fel a számot, és húzzunk

Részletesebben

OSZTHATÓSÁG. Osztók és többszörösök : a 3 többszörösei : a 4 többszörösei Ahol mindkét jel megtalálható a 12 többszöröseit találjuk.

OSZTHATÓSÁG. Osztók és többszörösök : a 3 többszörösei : a 4 többszörösei Ahol mindkét jel megtalálható a 12 többszöröseit találjuk. Osztók és többszörösök 1783. A megadott számok elsõ tíz többszöröse: 3: 3 6 9 12 15 18 21 24 27 30 4: 4 8 12 16 20 24 28 32 36 40 5: 5 10 15 20 25 30 35 40 45 50 6: 6 12 18 24 30 36 42 48 54 60 1784. :

Részletesebben

Egész számok. pozitív egész számok: 1; 2; 3; 4;... negatív egész számok: 1; 2; 3; 4;...

Egész számok. pozitív egész számok: 1; 2; 3; 4;... negatív egész számok: 1; 2; 3; 4;... Egész számok természetes számok ( ) pozitív egész számok: 1; 2; 3; 4;... 0 negatív egész számok: 1; 2; 3; 4;... egész számok ( ) 1. Írd a következõ számokat a halmazábra megfelelõ helyére! 3; 7; +6 ; (

Részletesebben

5. Gyakorlat. struct diak {

5. Gyakorlat. struct diak { Rövid elméleti összefoglaló 5. Gyakorlat Felhasználó által definiált adattípusok: A typedef egy speciális tárolási osztály, mellyel érvényes típusokhoz szinonim nevet rendelhetünk. typedef létező_típus

Részletesebben

Gyakorló feladatok Gyakorló feladatok

Gyakorló feladatok Gyakorló feladatok Gyakorló feladatok előző foglalkozás összefoglalása, gyakorlató feladatok a feltételes elágazásra, a while ciklusra, és sokminden másra amit eddig tanultunk Változók elnevezése a változók nevét a programozó

Részletesebben

Programozás I gyakorlat

Programozás I gyakorlat Programozás I. - 2. gyakorlat Változók, típusok, bekérés Tar Péter 1 Pannon Egyetem M szaki Informatikai Kar Rendszer - És Számítástudományi Tanszék Utolsó frissítés: September 21, 2009 1 tar@dcs.vein.hu

Részletesebben

1. Írjunk programot mely beolvas két számot és ellenőrzi hogy mindkét szám zérus-e:

1. Írjunk programot mely beolvas két számot és ellenőrzi hogy mindkét szám zérus-e: 1. Írjunk programot mely beolvas két számot és ellenőrzi hogy mindkét szám zérus-e: main() int number1, number2; printf("adjon meg két számot: "); scanf("%d %d", &number1, &number2); if ((number1 == 0)

Részletesebben

C programozás. 6 óra Függvények, függvényszerű makrók, globális és

C programozás. 6 óra Függvények, függvényszerű makrók, globális és C programozás 6 óra Függvények, függvényszerű makrók, globális és lokális változók 1.Azonosítók A program bizonyos összetevőire névvel (azonosító) hivatkozunk Első karakter: _ vagy betű (csak ez lehet,

Részletesebben

Bevezetés a programozásba I.

Bevezetés a programozásba I. Bevezetés a programozásba I. 6. gyakorlat C++ alapok, szövegkezelés Surányi Márton PPKE-ITK 2010.10.12. Forrásfájlok: *.cpp fájlok Fordítás: a folyamat, amikor a forrásfájlból futtatható állományt állítunk

Részletesebben

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés. Szekvenciális fájlkezelés Fájlok használata

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés. Szekvenciális fájlkezelés Fájlok használata Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 4. gyakorlat PLanG: 2011.10.04. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Fájlok

Részletesebben

I. Specifikáció készítés. II. Algoritmus készítés

I. Specifikáció készítés. II. Algoritmus készítés Tartalomjegyzék I. Specifikáció készítés...2 II. Algoritmus készítés...2 Egyszerű programok...6 Beolvasásos feladatok...10 Elágazások...10 Ciklusok...1 Vegyes feladatok...1 1 I. Specifikáció készítés A

Részletesebben

Programozás I gyakorlat

Programozás I gyakorlat Programozás I. - 2. gyakorlat Változók, kiiratás, bekérés Tar Péter 1 Pannon Egyetem M szaki Informatikai Kar Számítástudomány Alkalmazása Tanszék Utolsó frissítés: September 24, 2007 1 tar@dcs.vein.hu

Részletesebben

Rekurzió. Dr. Iványi Péter

Rekurzió. Dr. Iványi Péter Rekurzió Dr. Iványi Péter 1 Függvényhívás void f3(int a3) { printf( %d,a3); } void f2(int a2) { f3(a2); a2 = (a2+1); } void f1() { int a1 = 1; int b1; b1 = f2(a1); } 2 Függvényhívás void f3(int a3) { printf(

Részletesebben

Az algoritmusok alapelemei

Az algoritmusok alapelemei Az algoritmusok alapelemei Változók Olyan programozási eszközök, amelynek négy komponense van: - Név - Egyedi azonosító, a program szövegében a változó mindig a nevével jelenik meg, ez hordozza a komponenseket.

Részletesebben

Flex tutorial. Dévai Gergely

Flex tutorial. Dévai Gergely Flex tutorial Dévai Gergely A Flex (Fast Lexical Analyser) egy lexikáliselemz -generátor: reguláris kifejezések sorozatából egy C/C++ programot generál, ami szövegfájlokat képes lexikai elemek sorozatára

Részletesebben

1. Alapok. #!/bin/bash

1. Alapok. #!/bin/bash 1. oldal 1.1. A programfájlok szerkezete 1. Alapok A bash programok tulajnképpen egyszerű szöveges fájlok, amelyeket bármely szövegszerkesztő programmal megírhatunk. Alapvetően ugyanazokat a at használhatjuk

Részletesebben

SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS

SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS 2.ELŐADÁS A VB programozási nyelv Az Excel programozása 2 A VB programozási nyelv Adattípusok Adatok kezelése Vezérlőszerkezetek Adattípusok és műveletek Egész adattípusok

Részletesebben

Írjon olyan programot a standard könyvtár alkalmazásával, amely konzolról megadott valós adatokból meghatározza és kiírja a minimális értékűt!

Írjon olyan programot a standard könyvtár alkalmazásával, amely konzolról megadott valós adatokból meghatározza és kiírja a minimális értékűt! Írjon olyan programot a standard könyvtár alkalmazásával, amely konzolról megadott valós adatokból meghatározza és kiírja a minimális értékűt! valós adatokat növekvő sorrendbe rendezi és egy sorba kiírja

Részletesebben

Szelekció. Döntéshozatal

Szelekció. Döntéshozatal Szelekció Döntéshozatal Elágazásos algoritmus-szerkezet Eddig az ún. szekvenciális (lineáris) algoritmust alkalmaztunk a parancsok egyenként egymás után hajtüdnak végre. Bizonyos esetekben egy adott feltételtől

Részletesebben

Algoritmusok - pszeudókód... 1

Algoritmusok - pszeudókód... 1 Tartalomjegyzék Algoritmusok - pszeudókód... 1 Abszolút érték... 1 Hányados ismételt kivonással... 1 Legnagyobb közös osztó... 1 Páros számok szűrése... 2 Palindrom számok... 2 Orosz szorzás... 2 Minimum

Részletesebben

Assembly programozás: 2. gyakorlat

Assembly programozás: 2. gyakorlat Assembly programozás: 2. gyakorlat Számrendszerek: Kettes (bináris) számrendszer: {0, 1} Nyolcas (oktális) számrendszer: {0,..., 7} Tízes (decimális) számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális

Részletesebben

Bevezetés az informatikába

Bevezetés az informatikába Figyelem! A jegyzet fejlesztés alatt áll, ezért fokozott figyelmet kérek a használatánál. Bevezetés az informatikába Gyakorlati segédlet gazdasági informatikusok részére Készítette: Szeghalmy Szilvia Módosítva:

Részletesebben

Segédlet az Informatika alapjai I. című tárgy számrendszerek fejezetéhez

Segédlet az Informatika alapjai I. című tárgy számrendszerek fejezetéhez Segédlet az Informatika alapjai I. című tárgy számrendszerek fejezetéhez Sándor Tamás, sandor.tamas@kvk.bmf.hu Takács Gergely, takacs.gergo@kvk.bmf.hu Lektorálta: dr. Schuster György PhD, hal@k2.jozsef.kando.hu

Részletesebben

Forráskód formázási szabályok

Forráskód formázási szabályok Forráskód formázási szabályok Írta: Halmai Csongor, Webcenter Bt. A php és html kódrészletek Ugyanazon fájlon belül nem szerepelhet php kód és html tartalom. E kettő különválasztására smarty-t vagy más

Részletesebben

Java II. I A Java programozási nyelv alapelemei

Java II. I A Java programozási nyelv alapelemei Java2 / 1 Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2009. 02. 09. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve

Részletesebben

Megoldott programozási feladatok standard C-ben

Megoldott programozási feladatok standard C-ben Megoldott programozási feladatok standard C-ben MÁRTON Gyöngyvér Sapientia Erdélyi Magyar Tudományegyetem, Matematika-Informatika Tanszék Marosvásárhely, Románia mgyongyi@ms.sapientia.ro Tartalomjegyzék

Részletesebben

A C programozási nyelv III. Pointerek és tömbök.

A C programozási nyelv III. Pointerek és tömbök. A C programozási nyelv III. Pointerek és tömbök. Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv III. (Pointerek, tömbök) CBEV3 / 1 Mutató (pointer) fogalma A mutató olyan változó,

Részletesebben

Funkcionális és logikai programozás. { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem }

Funkcionális és logikai programozás. { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem } Funkcionális és logikai programozás { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem } http://www.ms.sapientia.ro/~mgyongyi ` 1 Jelenlét: Követelmények, osztályozás Az első 4 előadáson

Részletesebben

1. Jelölje meg az összes igaz állítást a következők közül!

1. Jelölje meg az összes igaz állítást a következők közül! 1. Jelölje meg az összes igaz állítást a következők közül! a) A while ciklusban a feltétel teljesülése esetén végrehajtódik a ciklusmag. b) A do while ciklusban a ciklusmag után egy kilépési feltétel van.

Részletesebben

Egyszerű programok készítése... 56 Kifejezések... 57 Bitszintű műveletek... 57 Relációs műveletek... 58

Egyszerű programok készítése... 56 Kifejezések... 57 Bitszintű műveletek... 57 Relációs műveletek... 58 Tartalomjegyzék Algoritmusok - pszeudókód... 1 Abszolút érték... 1 Hányados ismételt kivonással... 1 Legnagyobb közös osztó... 1 Páros számok szűrése... 2 Palindrom számok... 2 Orosz szorzás... 3 Minimum

Részletesebben

Programozás 3. Dr. Iványi Péter

Programozás 3. Dr. Iványi Péter Programozás 3. Dr. Iványi Péter 1 Egy operandus művelet operandus operandus művelet Operátorok Két operandus operandus1 művelet operandus2 2 Aritmetikai műveletek + : összeadás -: kivonás * : szorzás /

Részletesebben

Készítette: Nagy Tibor István

Készítette: Nagy Tibor István Készítette: Nagy Tibor István A változó Egy memóriában elhelyezkedő rekesz Egy értéket tárol Van azonosítója (vagyis neve) Van típusa (milyen értéket tárolhat) Az értéke értékadással módosítható Az értéke

Részletesebben

LibreOffice Makró Basic

LibreOffice Makró Basic 2017/01/12 13:05 1/11 LibreOffice Makró Basic < Basic LibreOffice LibreOffice Makró Basic Szerző: Sallai András Copyright Sallai András, 2013 Licenc: GNU Free Documentation License 1.3 Web: http://szit.hu

Részletesebben

A C programozási nyelv III. Pointerek és tömbök.

A C programozási nyelv III. Pointerek és tömbök. A C programozási nyelv III. Pointerek és tömbök. Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv III. (Pointerek, tömbök) CBEV3 / 1 Mutató (pointer) fogalma A mutató olyan változó,

Részletesebben

PPKE-ITK Bevezetés a programozásba 1.

PPKE-ITK Bevezetés a programozásba 1. PPKE-ITK Bevezetés a programozásba 1. 1. gyakorlat: Programozási alapok, PlanG utasítások, kifejezések, típusok Giachetta Roberto groberto@digitus.itk.ppke.hu http://digitus.itk.ppke.hu/~groberto Cél Olyan

Részletesebben

ELEMI PROGRAMOZÁSI TÉTELEK

ELEMI PROGRAMOZÁSI TÉTELEK ELEMI PROGRAMOZÁSI TÉTELEK 1. FELADATMEGOLDÁS PROGRAMOZÁSI TÉTELEKKEL 1.1 A programozási tétel fogalma A programozási tételek típusalgoritmusok, amelyek alkalmazásával garantáltan helyes megoldást adhatunk

Részletesebben

1. Alapok. Programozás II

1. Alapok. Programozás II 1. Alapok Programozás II Elérhetőség Név: Smidla József Elérhetőség: smidla dcs.uni-pannon.hu Szoba: I916 2 Irodalom Bjarne Stroustrup: A C++ programozási nyelv 3 Irodalom Erich Gamma, Richard Helm, Ralph

Részletesebben

Az értékelés a következők szerint történik: 0-4 elégtelen 5-6 elégséges 7 közepes 8 jó 9-10 jeles. A szóbeli vizsga várható időpontja

Az értékelés a következők szerint történik: 0-4 elégtelen 5-6 elégséges 7 közepes 8 jó 9-10 jeles. A szóbeli vizsga várható időpontja 2016/17 I. félév MATEMATIKA szóbeli vizsga 1 A szóbeli vizsga kötelező eleme a félév teljesítésének, tehát azok a diákok is vizsgáznak, akik a többi számonkérést teljesítették. A szóbeli vizsgán az alább

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák Fixpontos számok Pl.: előjeles kétjegyű decimális számok : Ábrázolási tartomány: [-99, +99]. Pontosság (két szomszédos szám különbsége): 1. Maximális hiba: (az ábrázolási tartományba eső) tetszőleges valós

Részletesebben

Programozási alapismeretek 3. előadás

Programozási alapismeretek 3. előadás Programozási alapismeretek 3. előadás Tartalom Ciklusok specifikáció+ algoritmika +kódolás Egy bevezető példa a tömbhöz A tömb Elágazás helyett tömb Konstans tömbök 2/42 Ciklusok Feladat: Határozzuk meg

Részletesebben

Bevezetés a C++ programozásba

Bevezetés a C++ programozásba Bevezetés a C++ programozásba A program fogalma: A program nem más, mint számítógép által végrehajtható utasítások sorozata. A számítógépes programokat különféle programnyelveken írhatjuk. Ilyen nyelvek

Részletesebben

C programozás. 1 óra Bevezetés

C programozás. 1 óra Bevezetés C programozás 1 óra Bevezetés A C nyelv eredete, fő tulajdonságai 1. Bevezető C nyelv alapelemei többsége a BCPL (Basic Combined Programming Language {1963}) Martin Richards B nyelv Ken Thompson {1970}

Részletesebben

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1 Halmazok 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 2 A fejezet legfontosabb elemei Halmaz megadási módjai Halmazok közti műveletek (metszet,

Részletesebben

Programozás 1. Dr. Iványi Péter

Programozás 1. Dr. Iványi Péter Programozás 1. Dr. Iványi Péter 1 C nyelv B.W. Kernighan és D.M. Ritchie, 1978 The C Programming language 2 C nyelv Amerikai Szabványügy Hivatal (ANSI), 1983 X3J11 bizottság a C nyelv szabványosítására

Részletesebben

TANMENETJAVASLAT. Dr. Korányi Erzsébet MATEMATIKA. tankönyv ötödikeseknek. címû tankönyvéhez

TANMENETJAVASLAT. Dr. Korányi Erzsébet MATEMATIKA. tankönyv ötödikeseknek. címû tankönyvéhez TANMENETJAVASLAT Dr. Korányi Erzsébet MATEMATIKA tankönyv ötödikeseknek címû tankönyvéhez A heti 3 óra, évi 111 óra B heti 4 óra, évi 148 óra Javaslat témazáró dolgozatra: Dr. Korányi Erzsébet: Matematika

Részletesebben

Programozás II. 2. Dr. Iványi Péter

Programozás II. 2. Dr. Iványi Péter Programozás II. 2. Dr. Iványi Péter 1 C++ Bjarne Stroustrup, Bell Laboratórium Első implementáció, 1983 Kezdetben csak precompiler volt C++ konstrukciót C-re fordította A kiterjesztés alapján ismerte fel:.cpp.cc.c

Részletesebben

Bevezetés a programozásba I.

Bevezetés a programozásba I. Bevezetés a programozásba I. 9. gyakorlat Intelligens tömbök, mátrixok, függvények Surányi Márton PPKE-ITK 2010.11.09. C++-ban van lehetőség (statikus) tömbök használatára ezeknek a méretét fordítási időben

Részletesebben

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. HA 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) HA 2 Halmazok HA 3 Megjegyzések A halmaz, az elem és az eleme fogalmakat nem definiáljuk, hanem alapfogalmaknak

Részletesebben

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája Adatszerkezetek Összetett adattípus Meghatározói: A felvehető értékek halmaza Az értékhalmaz struktúrája Az ábrázolás módja Műveletei Adatszerkezet fogalma Direkt szorzat Minden eleme a T i halmazokból

Részletesebben

1. Olvassuk be két pont koordinátáit: (x1, y1) és (x2, y2). Határozzuk meg a két pont távolságát és nyomtassuk ki.

1. Olvassuk be két pont koordinátáit: (x1, y1) és (x2, y2). Határozzuk meg a két pont távolságát és nyomtassuk ki. Számítás:. Olvassuk be két pont koordinátáit: (, y) és (2, y2). Határozzuk meg a két pont távolságát és nyomtassuk ki. 2. Olvassuk be két darab két dimenziós vektor komponenseit: (a, ay) és (b, by). Határozzuk

Részletesebben

A C# PROGRAMOZÁSI NYELV

A C# PROGRAMOZÁSI NYELV A C# PROGRAMOZÁSI NYELV 2010.02.23. Bevezetés C# nyelv jellemzői 2 Kis és NAGY betű érzékeny Minden utasítást pontos vessző zár. Utasítás zárójel a:,. .NET Framework keretrendszerek 3 Microsoft.NET Framework

Részletesebben

Tartalomjegyzék Algoritmusok - pszeudókód... 1 42

Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Abszolút érték...1 Hányados ismételt kivonással...1 Legnagyobb közös osztó... 1 2 Páros számok szűrése...2 Palindrom számok...2 Orosz szorzás...3 Minimum

Részletesebben

NULLADIK MATEMATIKA ZÁRTHELYI

NULLADIK MATEMATIKA ZÁRTHELYI A NULLADIK MATEMATIKA ZÁRTHELYI 20-09-2 Terem: Munkaidő: 0 perc. A dolgozat megírásához íróeszközön kívül semmilyen segédeszköz nem használható! Csak és kizárólag tollal tölthető ki a feladatlap, a ceruzával

Részletesebben

SZÁMÍTÁSOK A TÁBLÁZATBAN

SZÁMÍTÁSOK A TÁBLÁZATBAN SZÁMÍTÁSOK A TÁBLÁZATBAN Az Excelben az egyszerű adatok bevitelén kívül számításokat is végezhetünk. Ezeket a cellákba beírt képletek segítségével oldjuk meg. A képlet: olyan egyenlet, amely a munkalapon

Részletesebben

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport 10-es Keressünk egy egész számokat tartalmazó négyzetes mátrixban olyan oszlopot, ahol a főátló alatti elemek mind nullák! Megolda si terv: Specifika cio : A = (mat: Z n m,ind: N, l: L) Ef =(mat = mat`)

Részletesebben

7. gyakorlat. Fájlkezelés IO haladó Függvények haladó

7. gyakorlat. Fájlkezelés IO haladó Függvények haladó 7. gyakorlat Fájlkezelés IO haladó Függvények haladó Fájlkezelés A C-ben a fájlkezelés ún. fájlstream-eken keresztül történik, melyek puffereltek ha valamit a streamre küldünk, nem biztos, hogy rögtön

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA MATEmATIkA I 6 VI KOmPLEX SZÁmOk 1 A komplex SZÁmOk HALmAZA A komplex számok olyan halmazt alkotnak amelyekben elvégezhető az összeadás és a szorzás azaz két komplex szám összege és szorzata

Részletesebben

Információs Technológia

Információs Technológia Információs Technológia Rekurzió, Fa adatszerkezet Fodor Attila Pannon Egyetem Műszaki Informatika Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. november 18. Rekurzió Rekurzió

Részletesebben

az Excel for Windows programban

az Excel for Windows programban az Excel for Windows táblázatkezelőblázatkezel programban Mit nevezünk nk képletnek? A táblt blázatkezelő programok nagy előnye, hogy meggyorsítj tják és könnyebbé teszik a felhasználó számára a számítási

Részletesebben

Programozás I gyakorlat

Programozás I gyakorlat Programozás I. - 3. gyakorlat Operátorok, típuskonverziók, matematikai függvények Tar Péter 1 Pannon Egyetem M szaki Informatikai Kar Számítástudomány Alkalmazása Tanszék Utolsó frissítés: September 24,

Részletesebben

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism)

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism) Programozás alapjai C nyelv 8. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény

Részletesebben

6. A Pascal nyelv utasításai

6. A Pascal nyelv utasításai 6. A Pascal nyelv utasításai Írjunk programot, amely beolvas két valós számot és a két szám közül a kisebbikkel osztja a nagyobbikat! (felt0) program felt0; szam1, szam2, eredmeny : real; writeln('kérek

Részletesebben

A JavaScript főbb tulajdonságai

A JavaScript főbb tulajdonságai JavaScript alapok A JavaScript főbb tulajdonságai Script nyelv azaz futás közben értelmezett, interpretált nyelv Legfőbb alkalmazási területe: a HTML dokumentumok dinamikussá, interaktívvá tétele Gyengén

Részletesebben

Programozás alapjai. 7. előadás

Programozás alapjai. 7. előadás 7. előadás Wagner György Általános Informatikai Tanszék Jótanács (1) Tipikus hiba a feladat elkészítésekor: Jótanács (2) Szintén tipikus hiba: a file-ból való törléskor, illetve a file-nak új elemmel való

Részletesebben

7. Számelmélet. 1. Lehet-e négyzetszám az a pozitív egész szám, amelynek tízes számrendszerbeli alakjában 510 darab 1-es és valahány 0 szerepel?

7. Számelmélet. 1. Lehet-e négyzetszám az a pozitív egész szám, amelynek tízes számrendszerbeli alakjában 510 darab 1-es és valahány 0 szerepel? 7. Számelmélet I. Nulladik ZH-ban láttuk: 1. Lehet-e négyzetszám az a pozitív egész szám, amelynek tízes számrendszerbeli alakjában 510 darab 1-es és valahány 0 szerepel? ELTE 2006. október 27. (matematika

Részletesebben

Programozási tételek. Dr. Iványi Péter

Programozási tételek. Dr. Iványi Péter Programozási tételek Dr. Iványi Péter 1 Programozási tételek A programozási tételek olyan általános algoritmusok, melyekkel programozás során gyakran találkozunk. Az algoritmusok általában számsorozatokkal,

Részletesebben