Programozás alapjai C nyelv 1. gyakorlat
|
|
- Andor Orsós
- 5 évvel ezelőtt
- Látták:
Átírás
1 Programozás alapjai C nyelv 1. gyakorlat Szeberényi Imre BME IIT <szebi@iit.bme.hu> Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Történeti áttekintés Blaise Pascal ( ), mechanikus 6 digites összeadó/kivonó gép Charles Babbage ( ) Analitical Engine - a mai digitális számítógépek előfutára, Bár a tervek jók voltak, a kor technológiai színvonalán elkészítésükre nem volt esély. Ada Byron ( ) Az első példaprogramok az Analitical Engine-re Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Történeti áttekintés Hermann Hollerith ( ) Elektromos, lyukkártya alapú gép népszámlálási adatok feldolgozására (1896-ban megalapítja a Tabulating Machine Company-t, melyet 1924-től IBM-ként ismerünk) Howard Aiken (IBM 1943) MARK I. telefonreléken alapuló gép 18m hosszú, 2.5m magas gép, kb 300 ms egész összeadási sebesség Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
2 Történeti áttekintés Neumann János (1946) "Előzetes gondolatok egy számító berendezés logikai tervéről" című tanulmány EDVAC (1951) ezen alapuló gyakorlati megvalósítás 1951 Mikroprogramozás elve 1971 Intel Intel iapx Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Neumann modell jellemzői Utasítás és adat azonos közegben és formában van tárolva (tárolt program). Az utasításszámláló által címzett adat lesz a következő utasítás. Adat vagy utasítás? Csak annak értelmezésétől függ. Szekvenciális utasítás végrehajtás. Egydimenziós, lineáris címzésű memória. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Neumann modell Operatív tár BE ALU KI Vezérlő egység Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
3 Processzor ALU Belső busz Busz interfész cím adat vezérlő jelek Regiszterek Vezérlő és utasítás dekódoló Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Mai számítógép Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Jellegzetes gépi utasítások Egyszerű műveletek, de gyors végrehajtás: adatok mozgatása (ld, st, in, out) aritmetikai műveletek (add, sub, mul, div) logikai műveletek (and, or, shift) vezérlésátadó műveletek (jp, jz, call, ret) veremkezelő műveletek (push, pop) Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
4 Gépek programozása/használata Gépi kódban mindent a legutolsó műveletig Könyvtárak a közös feladatokra Monitorok - kötegelt feldolgozás Kezdeti op. rendszerek B/K, fájl Mai operációs rendszerek több felhasználó, több taszk, védelem, hálózat, valós idő,... Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Szoftver komponensek 1. felhasználó számítógép 3. felhasználó 2. felhasználó operációs rendszer 4. felhasználó alkalmazói porgramok Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Operációs rendszer feladatai Operációs rendszer feladatai file fájlkezelés tárgazdálkodás felhasználói felület hálózatkezelés ütemezés védelem perifériakezelés Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
5 Programozás kódolás Fő lépései: specifikáció tervezés algoritmus választás adatszerkezet választás nyelv választása kódolás tesztelés dokumentálás Nagyon fontos a lépések folyamatos ellenőrzése, dokumentálása! Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Programozási paradigmák Imperatív Deklaratív Objektum-orientált, Aspektus-orientált Üzenet-orientált, Függvény-orientált Adatfolyam-orientált, Esemény-orientált Szimbolikus... Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Program, algoritmus Algoritmus + Adatstruktúra = program Algoritmus Tevékenységek és döntések egy sorozata Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
6 Algoritmus megadása Szóban: Olvass be egy számot és írd ki hogy páros-e! Folyamatábrával Struktogrammal Mondatszerű leírással (pszeudokód) Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Folyamatábra Start A n A páros? i páratlan páros Stop Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Stuktogram be: A nem A páros? igen ki: páratlan ki: páros Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
7 Pszeudokód Olvassd be A-t Ha A páros akkor írd ki: páros különben írd ki: páratlan vége be: A Ha A páros akkor ki: páros különben ki: páratlan vége Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I C programozási nyelv Egy kis történelem B, BCPL (1970) - típus nélküli nyelvek FORTRAN, ALGOL UNIX (1969) 1973-ban újraírják C nyelven (~8000 C sor sor assembly nyelven) A C nyelvet a legkülönbözőbb gépeken implementálták (mikro -> mainframe). Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I C nyelv jellemzői Magas szintű nyelvekre jellemző adatszerkezetek és vezérlési struktúrák. Hatékony gépközeli megfogalmazás. Rendszerprogramozási nyelv. Függvényorientált, egyszintű. Rekurzív fv. hívási lehetőség. Kevésbé szigorú típusellenőrzés. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
8 C nyelv jellemzői (2) Standard függvénykészlet, ami nem része a nyelvnek de elengedhetetlen. Nyelvi szinten közvetlenül nem támogatja a dinamikus adatszerkezeteket. Nyelvi szinten nem támogatja a konkurens programozást és az ahhoz tartozó szinkronizációs mechanizmusokat. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I C nyelv jellemzői (3) Magas szintű nyelvek C nyelv Olvasható assembly Gépi nyelvek (assembly) Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Hagyományos C fordító C forrás (.c) PP Előfeld. forrás C0 Közb. kód Szerk. gépi kód (.obj) Ass Gépi nyelv (assembly) C1 Más obj. Könyvtár (.lib) Link Futtatható kód (.exe) Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
9 Hagyományos C fordító (2) Közbülső kód minden olyan információt hordoz, ami a kódgeneráláshoz szükséges. C1 átírása egy új architektúrához 2-3 mérnökhónapba telik. Ezen kívül implementálni kell a könyvtári függvényeket, melyek többnyire C nyelven vannak megírva. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I preprocesszor dolgozza fel Első program #include <stdio.h> main() azonosító { printf( Hello Cicus!\n ); } c:> cc elso.c c:> elso.exe c:> Hello Cicus! c:> könvtári függvény Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Nyelvek szabályainak megadása Erőteljes magyarázat Leíró vagy metanyelv (pl. BNF) szabványokban, könyvekben (pl. K&R) Szintaxis diagram referencia kártyákon Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
10 Szintaxis diagram irányított gráf nem terminális szimbólum tovább bontható Terminális szimbólum nem bontható tovább Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Szintaxis diagram példák előjeles dec. szám: + dec. szám - dec. szám: dec. számjegy dec. számjegy: Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I BNF (Backus-Naur Form) <nem terminális> tovább bontható fogalom v. szimb. ::= definíció vagy kapcsolat Példa: <előjeles dec. szám> ::= + <dec. szám> <dec. szám> -<dec. szám> Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
11 EBNF (Extended BNF) <nem terminális> tovább bontható fogalom v. szimb. ::= definíció vagy kapcsolat < > + ismétlődés egyszer v. többször < > * ismétlődés nullaszor v. többször { } u.a. mint a * (gyakran használják) [ ] ismétlődés nullaszor v. egyszer ( ) csoportosítás, de a {}-t is használják a csillag használatakor Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I EBNF példák <előjeles dec. szám> ::= [ + - ] <dec. szám> <dec. szám> ::= <dec. számjegy> + <dec. számjegy> ::= <dec. szám> ::= <dec. számjegy> [ <dec. szám> ] <azonosító> ::= <betű> { <betű> <számjegy> } <azonosító> ::= <betű> { <betű> <számjegy> } * <azonosító> ::= <betű> <betű> <számjegy> Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I C nyelv szintaktikája EBNF-hez hasonló, de más jelölésekkel: fordítási_egység: külső_deklaráció fordítási_egység külső_deklaráció külső_deklaráció: függvénydefiníció deklaráció függvénydefiníció: deklaráció_sp. opc deklarátor dekl_lista. opc összetett_ut. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
12 összetett utasítás standard függvény hívása Első program újból #include <stdio.h> main() { printf( Hello Cicus!\n ); } fv. argumentum standard I/O-ra vonatkozó definiciók külső deklaráció Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Két szám összege Start a, b c:= a + b program = algoritmus + adatstruktúra Az adatokat változókban tároljuk c Stop Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Változó, azonosító, típus Változókban tároljuk az adatokat. A változókat azonosítóval nevezzük el. A változó típusa meghatározza: az értékkészletet, a konstansokat, a művelethalmazt, néha belső tárolási formát is, bár ezt többnyire az implementáció határozza meg. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
13 C nyelv típusai Egyszerű típusok karakter, egész, valós, felsorolás Összetett vagy származtatott típusok tömb, struktúra, unió, függvény, mutató, bitmező Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Változók deklarálása A C nyelvben minden változót deklarálni kell. int AlMa; char ch; float x; Memóriában keletkezik egy egész típusú változó tárolására alkalmas hely Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Két egész szám összege #include <stdio.h> main() { int a, b, c; formátum lista (string) változó scanf( %d %d, &a, &b); c = a + b; printf( c = %d\n, c); } formátum megadás következik Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
14 Egész típus (int) értékkészlet: egészek tárolására alkalmas [ INT_MIN, INT_MAX ] <limits.h>-ban definiált konstansok: decimális (12), oktális (012), hexa (0x12), előjeletlen (12u), hosszú (12L) művelethalmaz (operátorok): értékadó aritmetikai, logikai, bitenkénti, relációs belső ábrázolás: legtöbb implementációban kettes komplemens. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Egész típus (példák) register int a, b; long int hosszu; unsigned int ui; short int rovid; a = 123; ui = 123; b = 0123; hosszu = 0x23AL; rovid = 34; Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Adatok ábrázolása bit -> kétállapotú (igaz, hamis), (1, 0) (piros, zöld), (hideg, meleg) stb. n db bit -> 2 n különböző információ A jelentés (értelmezés) tőlünk függ. Előjeletlen egészekre kézenfekvő. Hogyan érdemes előjeles számokat ábrázolni? Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
15 Előjeles egészek ábrázolása előjeles abszolútértékes eltolt nullpontú (egyes) komplemens kettes komplemens A továbbiakban 4 biten vizsgáljuk meg ezen módszerek lényegét. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I előjel Előjeles abszolútértékes abszolút érték Néhány példa: 0001 = = = = = = = -0 Összeadás egyszerű összeadóval: 0001 = = = -2 Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Eltolt nullpontú Legyen pl. a nulla az 1000 érték! Néhány példa: 0000 = = = = = = = +7 Összeadás egyszerű összeadóval: 0111 = = = -8 Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
16 Komplemens v. egyes kompl. Ha X negatív, akkor abszolút értékét komplementáljuk (bitenként negáljuk), egyébként binárisan ábrázoljuk. Néhány példa: 0001 = = = 0 ~ = -1 ~ = -5 Összeadás egyszerű összeadóval: 1110 = = = -0 Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Kettes komplemens Ha X negatív, akkor abszolút értékét komplementáljuk majd hozzáadunk egyet, egyébként binárisan ábrázoljuk. Néhány példa: 0001 = = = 0 ~ = -1 ~ = -5 Összeadás egyszerű összeadóval: 1111 = = = 0 Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Kettes komplemens (2) A legmagasabb helyiértékű bit előjel bitként viselkedik. A szám abszolút értékének kiszámításához az előző szabályt kell követni (komplemens +1) Példa: 1110 =? 0001 Def. szabály: = -2 X, ha X nem negatív X 2 n - X, ha X negatív Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
17 Eredmény hihetősége 0101 = = =?-6 ~ = 6 Két pozitív szám összege negatív lett! Miért? Kiléptünk a számábrázolási tartományból! (A +10 már nem ábrázolható 4 biten!) A legtöbb magas szintű nyelv nem jelzi az egész aritmetika túlcsordulását! Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Feladat: Hány bites az int? Ötlet: Egy int értéket állítsunk 1-re! Szorozzuk addig kettővel, amíg az eredmény pozitív! Számoljuk meg, hogy hányszor tudtuk szorozni! Szorzás kettővel: Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Valós típus (float, double) értékkészlet: valós értékek tárolására [ FLT_MIN, FLT_MAX ], [DBL_MIN, DBL_MAX] <float.h>-ban definiált konstansok: 3., 3.14, 5e-2, -4.12f, 3.2L művelethalmaz: értékadó, aritmetikai, relációs belső ábrázolás: lebegőpontos Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
18 Valós típus (példák) float f1, f2; double d1, d2; long double ld1, ld2; f1 = 3.; /* törtrész elmaradt */ f2 =.312; /* egészrész elmaradt */ d1 = 45.34; ld1 = 1e-23; /* tizedespont elmaradt */ Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Valós számok ábrázolása Fixpontos ábrázolás Lebegőpontos ábrázolás Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Fixpontos ábrázolás Fixpontos ábrázolás (8 biten a példa kedvéért): előjel egészrész. kettedespont Néhány példa: = = = = törtrész Legkisebb absz: Legnagyobb absz: Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
19 Lebegőpontos ábrázolás Lebegőpontos ábrázolás (8 biten a példa kedvéért): előjel (s) karakterisztika (k) eltolt nullp. kettedespont. mantissza (m) X = (-1) s * 2 k * m ahol: 1 <= m < * 1.5 = * 1.125= * 1.75 = * 1.00 = Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Lebegőpontos ábrázolás(2) Lebegőpontos ábrázolás (8 biten a példa kedvéért): X = (-1) s *2 k * m ahol: 1 <= m < 2, ezért m 1.xxx alakú (+1 bit) min(k) = -4, min(m) = = min( X ) = 2-4 * (1+2-4 ) max(k) = 3, max(m) = max( X ) = 2 3 * ε = 2-4 Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Valós számok halmaza A ábrázolás miatt nem csak egy alsó és felső határ keletkezik, hanem a folytonos számegyenes egymástól nem megkülönböztethető számokat tartalmazó darabokra esik szét. x-ε x x+ε -max -min 0 min max Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
20 IEEE szabvány Egyszeres pontosság 32 biten: s = 1 bit, k = 8 bit (eltolt nullpontú +127), m = 23 bit s k m' m = m-1 Speciális értékek: k = 255 m 0 --> Nem érvényes szám k = 255 m = 0 --> ± k = 0 m = 0 --> 0 0 < k < 255 m 0 --> X = (-1) s *2 k-126 * m k = 0 m 0 --> X = (-1) s *2-126 * m Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I IEEE szabvány (2) min(k) = -126, min(m) = 2-23 min( X ) = * 2-23 = e-45 max(k) = 127, max(m) 2 max( X ) * 2 = = 3.4e+38 ε = e-7 Nem egyezik az FLT_MIN értékkel! (1.175e-38) Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Adatok beolvasása/kiírása Elvégzi adatok konvertálását a belső és külső ábrázolásnak megfelelően. A külső ábrázolás szöveges, a belső gépi. printf(formátum, adat1, adat2, adat3,...) scanf(formátum, cím1, cím2, cím3,...) printf("a=%d b=4.2%f", a, 9.84); formátum adat scanf("%d %f", &a &b); cím Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
21 Print függvény (printf) A formátumlistából tudja, hogy milyen formában kell kiírnia a belső ábrázolású adatot. Nem nyelvi elem! Nincs lehetőség annak ellenőrzésére, hogy a formátumlista és a paraméterek száma/típusa összhangban van-e. Az inkonzisztencia veszélyes hibaforrás is lehet. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I printf formátuma %[flags][size][.prec][lengt]type type: diouxxpfeeggcsn% d, i, u decimális egész (u - előjeletlen) o oktális egész x, X hexadecimális egész p pointer f lebegőpontos (±dd.pp) e, E tudományos lebegőpontos (±dd.ppe±xx) g, G e vagy f, amelyik a rövidebb c karakter s string n kiírt karakterek számát az arg-ba teszi (int *) Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I printf formátuma (2) %[flags][size][.prec][length]type length: hll h short, vagy unsigned short típushoz l long vagy unsigned long típushoz L long double típushoz Lebegőpontos formátumban a float és double értékek egyaránt kiírathatók. Integer formátumban bármely skalár típus kiíratható. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
22 printf formátuma (3) %[flags][size][.prec]type flags: -+#0 - balra igazítás + előjel a pozitív értékre is szóköz: pozitiv érték előjele szóköz lesz (alap); e és f formátumoknál mindig van tizedespont # oktális számok 0-val hexa számok 0x-szel 0 bevezető nullák kiírása Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I printf formátuma (4) %[flags][size][.prec]type size: Egész szám vagy * * Esetén a méretet az argumentumlista következő eleme adja, ami int típusú kell hogy legyen. Értelmezés: minimális mezőszélesség (ha nem fér bele, akkor nem csonkol!); Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I printf formátuma (5) %[flags][size][.prec]type prec: Egész szám vagy * * Esetén a méretet az argumentumlista következő eleme adja, ami int típusú kell hogy legyen. Értelmezés formátumfüggő: int formátum: a számjegek minimális száma e és f formátum: a tizedesjegyek száma; g formátum: lényeges számjegyek száma s formátum: karakterek maximális száma Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
23 printf példák printf("a=%d b=%03x c=%3.1f", 1, 18, 9.86); printf("a=%d b=%03x", 1, 18, 9.84); printf("a=%d b=%03x c=3.1%f", 1, 18); int i = 2005; printf("%f", i); printf("%c", i); a=1 b=012 c=9.9 Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I Scan függvény (scanf) A formátumlistából tudja, hogy milyen belső formába kell konvertálnia a beolvasott adatot. A formátumlista nem speciális karaktereit megkövetelt inputként kezeli (illeszt). Az illeszkedést a visszatérési értékben jelzi. Nem nyelvi elem! Nincs lehetőség annak ellenőrzésére, hogy a formátumlista és a paraméterek száma/típusa összhangban van-e. Az inkonzisztencia nagyon veszélyes hibaforrás is lehet. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I scanf formátuma %[*][size][lengt]type type: diouxxpfeeggcsn% d, u decimális egész (u - előjeletlen) i decimális egész (oktális, hexa) o oktális x, X hexadecimális p pointer f,e,e,g,g lebegőpontos szám c karakter s string Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
24 scanf formátuma (2) [...] Karaktersorozat illesztés. A zárójelekben levő szereplő karakterek (illesztési halmaz) sorozatát beolvassa és a char * argumentumba teszi lezáró nullával. [A-Z] Karakter sorozat illesztés az intervallumba eső karakterekre (pl. nagybetűk). [^...] Karakter sorozat illesztés. A halmazra nem illeszkedő karaktersorozatot olvas be. []...-] ] és - jelek is a halmazban vannak. A ] jel csak elöl lehet, - csak a végén. n beolvasott karakterek számát az arg-ba teszi Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I scanf formátuma (3) %[*][size][length]type length: hll h short, vagy unsigned short típushoz l long, unsigned long, vagy double típushoz L long double típushoz Nagyon fontos a helyes méret megadása. Rossz megadás végzetes hibához vezethet. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I scanf formátuma (4) %[*][size][lengt]type *: A beolvasott érték nem tárolódik, azaz a címlistán nem tartozik hozzá cím. size: egész szám, ami a mező maximális méretét adja meg. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
25 scanf működése A scanf megpróbálja az inputot illeszteni a formátumra, mint mintára. A nem %-kal kezdődő karaktereket mintának tekinti, aminek pontosan illeszkedni kell. Kivéve a whitespace karakterek, melyek tetszőleges számú whitespace karakterből álló sorozatot jelentenek az inputon. Visszatérési értékben jelzi, hogy hány beolvasást végzett el sikeresen. Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I scanf példák scanf("%d%d", &a, &b); // két decimális szám scanf("%d-%d", &a, &b); // dec.szám kötőjellel scanf("a=%d", &a); // a=decimális szám scanf("%*[a-z]=%d", &a); // AZON=dec.szám char c; scanf("%s", &c); double x; scanf("%f", &x); karakterbe olvas stringet double-be float-ot Megjegyzés: printf-fel lehet %f-fel double-t kírni. Miért? Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I
Programozás alapjai C nyelv 1. gyakorlat
Programozás alapjai C nyelv 1. gyakorlat Szeberényi Imre BME IIT Történeti áttekintés Blaise Pascal (1623-1662), mechanikus 6 digites összeadó/kivonó gép Charles Babbage (1792-1871)
RészletesebbenA programozás alapjai előadás. A C nyelv típusai. Egész típusok. C típusok. Előjeles egészek kettes komplemens kódú ábrázolása
A programozás alapjai 1 A C nyelv típusai 4. előadás Híradástechnikai Tanszék C típusok -void - skalár: - aritmetikai: - egész: - eger - karakter - felsorolás - lebegőpontos - mutató - függvény - union
RészletesebbenA 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észletesebbenA 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észletesebbenInformációs Technológia
Információs Technológia Programozási nyelvek kialakulása, a C nyelv Fodor Attila Pannon Egyetem Műszaki Informatika Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2009 szeptember
RészletesebbenAssembly 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észletesebbenMiről lesz ma szó? A PROGAMOZÁS ALAPJAI 1. Programtervezési stratégiák. Top-down tervezés. Top-down tervezés. Bottom-up tervezés. 4.
212. február 28. A PROGAMOZÁS ALAPJAI 1 Vitéz András egyetemi adjunktus BME Híradástechnikai Tanszék vitez@hit.bme.hu Miről lesz ma szó? Programtervezési stratégiák Top-down Bottom-up Függvények Szintaxis
RészletesebbenProgramozá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észletesebbenAritmetikai utasítások I.
Aritmetikai utasítások I. Az értékadó és aritmetikai utasítások során a címzési módok különböző típusaira látunk példákat. A 8086/8088-as mikroprocesszor memóriája és regiszterei a little endian tárolást
RészletesebbenProgramozá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észletesebbenProgramozá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észletesebbenProgramozá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észletesebbenBevezetés az informatikába Tételsor és minta zárthelyi dolgozat 2014/2015 I. félév
Bevezetés az informatikába Tételsor és minta zárthelyi dolgozat 2014/2015 I. félév Az informatika története (ebből a fejezetből csak a félkövér betűstílussal szedett részek kellenek) 1. Számítástechnika
Részletesebben5. Fejezet : Lebegőpontos számok
5. Fejezet : Lebegőpontos The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley College Linda
RészletesebbenMutatók és címek (ism.) Programozás alapjai C nyelv 8. gyakorlat. Indirekció (ism) Néhány dolog érthetőbb (ism.) Változók a memóriában
Programozás alapjai C nyelv 8. gyakorlat Szeberényi mre BME T Programozás alapjai. (C nyelv, gyakorlat) BME-T Sz.. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény
Részletesebben3. gyakorlat. Kettes számrendszer: {0, 1} Tízes számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális számrendszer): {0, 1, 2,..., 9, A, B, C, D, E, F}
3. gyakorlat Számrendszerek: Kettes számrendszer: {0, 1} Tízes számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális számrendszer): {0, 1, 2,..., 9, A, B, C, D, E, F} Alaki érték: 0, 1, 2,..., 9,... Helyi
RészletesebbenProgramozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós augusztus 29. Széchenyi István Egyetem, Gy r
Programozás alapjai (GKxB_INTM023) Széchenyi István Egyetem, Gy r 2019. augusztus 29. Feladat: írjuk ki az els 10 természetes szám négyzetét! #i n c l u d e i n t main ( v o i d ) { p r
RészletesebbenProgramozá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észletesebbenProgramozá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észletesebbenC 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észletesebbenFüggvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3)
Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Függvények C program egymás mellé rendelt függvényekből áll. A függvény (alprogram) jó absztrakciós eszköz a programok
RészletesebbenProgramozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)
Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.05. -1- Függvények C program egymás mellé rendelt függvényekből
RészletesebbenMit 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észletesebbenDr. Oniga István DIGITÁLIS TECHNIKA 2
Dr. Oniga István DIGITÁLIS TECHNIKA 2 Számrendszerek A leggyakrabban használt számrendszerek: alapszám számjegyek Tízes (decimális) B = 10 0, 1, 8, 9 Kettes (bináris) B = 2 0, 1 Nyolcas (oktális) B = 8
RészletesebbenInformatikai Rendszerek Alapjai
Informatikai Rendszerek Alapjai Egész és törtszámok bináris ábrázolása http://uni-obuda.hu/users/kutor/ IRA 5/1 A mintavételezett (egész) számok bináris ábrázolása 2 n-1 2 0 1 1 0 1 0 n Most Significant
RészletesebbenBevezetés az informatikába gyakorló feladatok Utoljára módosítva:
Tartalom 1. Számrendszerek közti átváltás... 2 1.1. Megoldások... 4 2. Műveletek (+, -, bitműveletek)... 7 2.1. Megoldások... 8 3. Számítógépes adatábrázolás... 10 3.1. Megoldások... 12 A gyakorlósor lektorálatlan,
Részletesebben5. Fejezet : Lebegőpontos számok. Lebegőpontos számok
5. Fejezet : Lebegőpontos The Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley College Linda
RészletesebbenThe Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003
. Fejezet : Számrendszerek The Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach. kiadás, Irv Englander John Wiley and Sons Wilson Wong, Bentley College Linda Senne,
Részletesebben1.1. A forrásprogramok felépítése Nevek és kulcsszavak Alapvető típusok. C programozás 3
Darvay Zsolt Típusok és nevek a forráskódban Állandók és változók Hatókörök és az előfeldolgozó Bevitel és kivitel Kifejezések Utasítások Mutatók Függvények Struktúrák és típusok Állománykezelés C programozás
RészletesebbenHarmadik gyakorlat. Számrendszerek
Harmadik gyakorlat Számrendszerek Ismétlés Tízes (decimális) számrendszer: 2 372 =3 2 +7 +2 alakiérték valódi érték = aé hé helyiérték helyiértékek a tízes szám hatványai, a számjegyek így,,2,,8,9 Kettes
RészletesebbenProgramozá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észletesebbenAdatszerkezetek Tömb, sor, verem. Dr. Iványi Péter
Adatszerkezetek Tömb, sor, verem Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot
RészletesebbenSegé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észletesebbenBevezetés az informatikába gyakorló feladatok Utoljára módosítva:
Tartalom 1. Számrendszerek közti átváltás... 2 1.1. Megoldások... 4 2. Műveletek (+, -, bitműveletek)... 7 2.1. Megoldások... 8 3. Számítógépes adatábrázolás... 12 3.1. Megoldások... 14 A gyakorlósor lektorálatlan,
RészletesebbenProgramozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek
Programozás alapjai gyakorlat 4. gyakorlat Konstansok, tömbök, stringek Házi ellenőrzés (f0069) Valósítsd meg a linuxos seq parancs egy egyszerűbb változatát, ami beolvas két egész számot, majd a kettő
RészletesebbenOOP I. Egyszerő algoritmusok és leírásuk. Készítette: Dr. Kotsis Domokos
OOP I. Egyszerő algoritmusok és leírásuk Készítette: Dr. Kotsis Domokos Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendı anyag vázlatát képezik. Ismeretük
RészletesebbenJava 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észletesebbenProgramozás alapjai gyakorlat. 2. gyakorlat C alapok
Programozás alapjai gyakorlat 2. gyakorlat C alapok 2016-2017 Bordé Sándor 2 Forráskód, fordító, futtatható állomány Először megírjuk a programunk kódját (forráskód) Egyszerű szövegszerkesztőben vagy fejlesztőkörnyezettel
RészletesebbenSegédanyagok. Formális nyelvek a gyakorlatban. Szintaktikai helyesség. Fordítóprogramok. Formális nyelvek, 1. gyakorlat
Formális nyelvek a gyakorlatban Formális nyelvek, 1 gyakorlat Segédanyagok Célja: A programozási nyelvek szintaxisának leírására használatos eszközök, módszerek bemutatása Fogalmak: BNF, szabály, levezethető,
Részletesebben4. Fejezet : Az egész számok (integer) ábrázolása
4. Fejezet : Az egész számok (integer) ábrázolása The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson
Részletesebben5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix
2. Adattípusonként különböző regisztertér Célja: az adatfeldolgozás gyorsítása - különös tekintettel a lebegőpontos adatábrázolásra. Szorzás esetén karakterisztika összeadódik, mantissza összeszorzódik.
Részletesebben2. Fejezet : Számrendszerek
2. Fejezet : Számrendszerek The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley College
RészletesebbenC 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észletesebbenJá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észletesebbenMintavételes szabályozás mikrovezérlő segítségével
Automatizálási Tanszék Mintavételes szabályozás mikrovezérlő segítségével Budai Tamás budai.tamas@sze.hu http://maxwell.sze.hu/~budait Tartalom Mikrovezérlőkről röviden Programozási alapismeretek ismétlés
RészletesebbenElőző óra összefoglalása. Programozás alapjai C nyelv 3. gyakorlat. Karakter típus (char) Karakter konstansok. Karaktersorozatot lezáró nulla
Programozás alapja C yelv 3. gyakorlat Szeberéy Imre BME IIT Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -- Előző óra összefoglalása Algortmus leírása Sztaxs leírása
RészletesebbenAlapfogalmak. Dr. Kallós Gábor A Neumann-elv. Számolóeszközök és számítógépek. A számítógép felépítése
Alapfogalmak Dr. Kallós Gábor 2007-2008. A számítógép felépítése A Neumann-elv A számítógéppel szemben támasztott követelmények (Neumann János,. Goldstine, 1945) Az elv: a szekvenciális és automatikus
RészletesebbenB I T M A N B I v: T M A N
Műszaki informatika Tesztek+Megoldások B I v: T 2015.04.19 M A N 1/42 Tesztek + Megoldások Alapfogalmi kitérő kérdéssor IPA kérdéssor CPA kérdéssor 2/42 Ellenőrző kérdések 1. 1. Melyik Neumann elv következménye
RészletesebbenMá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észletesebbenProgramozás alapjai C nyelv 10. gyakorlat. Standard függvények. Union
Programozás alapjai C nyelv 10. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.21. -1- Standard függvények Standard függvények amelyeket
RészletesebbenDigitális rendszerek. Utasításarchitektúra szintje
Digitális rendszerek Utasításarchitektúra szintje Utasításarchitektúra Jellemzők Mikroarchitektúra és az operációs rendszer közötti réteg Eredetileg ez jelent meg először Sokszor az assembly nyelvvel keverik
RészletesebbenKifejezések. Kozsik Tamás. December 11, 2016
Kifejezések Kozsik Tamás December 11, 2016 Kifejezés versus utasítás C/C++: kifejezés plusz pontosvessző: utasítás kiértékeli a kifejezést jellemzően: mellékhatása is van például: értékadás Ada: n = 5;
RészletesebbenFixpontos és lebegőpontos DSP Számrendszerek
Fixpontos és lebegőpontos DSP Számrendszerek Ha megnézünk egy DSP kinálatot, akkor észrevehetjük, hogy két nagy család van az ajánlatban, az ismert adattipus függvényében. Van fixpontos és lebegőpontos
Részletesebben1. 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észletesebbenGyakorló 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észletesebbenProgramozás alapjai 2.Gy: A C nyelv alapjai P R O
Programozás alapjai 2.Gy: A C nyelv alapjai. P R O A L A G 1/32 B ITv: MAN 2018.10.02 Code::Blocks Indítsa el mindenki! 2/32 1 Code::Blocks Új projekt 2 3 4 5 3/32 Code::Blocks Forráskód Kód fordítása:
RészletesebbenDigitális technika VIMIAA hét
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK VIMIAA02 14. hét Fehér Béla BME MIT Rövid visszatekintés, összefoglaló
RészletesebbenDigitális technika VIMIAA hét
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA02 14. hét Fehér Béla BME MIT Digitális technika
RészletesebbenC programozás. { Márton Gyöngyvér, 2009 } { Sapientia, Erdélyi Magyar Tudományegyetem } http://www.ms.sapientia.ro/~mgyongyi
C programozás Márton Gyöngyvér, 2009 Sapientia, Erdélyi Magyar Tudományegyetem http://www.ms.sapientia.ro/~mgyongyi 1 Könyvészet Kátai Z.: Programozás C nyelven Brian W. Kernighan, D.M. Ritchie: A C programozási
RészletesebbenProgramozás alapjai. 5. előadás
5. előadás Wagner György Általános Informatikai Tanszék Cserélve kiválasztásos rendezés (1) A minimum-maximum keresés elvére épül. Ismétlés: minimum keresés A halmazból egy tetszőleges elemet kinevezünk
RészletesebbenMáté: Számítógép architektúrák
Bit: egy bináris számjegy, vagy olyan áramkör, amely egy bináris számjegy ábrázolására alkalmas. Bájt (Byte): 8 bites egység, 8 bites szám. Előjeles fixpontok számok: 2 8 = 256 különböző 8 bites szám lehetséges.
RészletesebbenProgramozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar
Programozás I. 3. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Antal Gábor 1 Primitív típusok Típus neve Érték Alap érték Foglalt tár Intervallum byte Előjeles egész 0 8 bit
RészletesebbenPásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez
Pásztor Attila Algoritmizálás és programozás tankönyv az emeltszintű érettségihez 3. ADATTÍPUSOK...26 3.1. AZ ADATOK LEGFONTOSABB JELLEMZŐI:...26 3.2. ELEMI ADATTÍPUSOK...27 3.3. ÖSSZETETT ADATTÍPUSOK...28
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! valós adatokat növekvő sorrendbe rendezi és egy sorba kiírja
Részletesebben1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba
Hibaforrások Hiba A feladatok megoldása során különféle hibaforrásokkal találkozunk: Modellhiba, amikor a valóságnak egy közelítését használjuk a feladat matematikai alakjának felírásához. (Pl. egy fizikai
RészletesebbenProgramozás I gyakorlat. 10. Stringek, mutatók
Programozás I gyakorlat 10. Stringek, mutatók Karakter típus A char típusú változókat karakerként is kiírhatjuk: #include char c = 'A'; printf("%c\n", c); c = 80; printf("%c\n", c); printf("%c\n",
RészletesebbenMatematikai alapok. Dr. Iványi Péter
Matematikai alapok Dr. Iványi Péter Számok A leggyakrabban használt adat típus Egész számok Valós számok Bináris számábrázolás Kettes számrendszer Bitek: és Byte: 8 bit 28 64 32 6 8 4 2 bináris decimális
RészletesebbenA C++ nyelvben a függvény nevek túlterhelésével biztonságosabbá tehetnénk az adatok kiírását és beolvasását.
1. Motiváció C nyelvben a printf és a scanf függvények használata a programozótól nagy körültekintést igényel. A változó számú argumentum miatt a fordító nem tudja ellenőrizni, hogy a formátum mezőben
RészletesebbenC 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észletesebbenTamás Péter (D. 424) Mechatronika, Optika és Gépészeti Informatika Tanszék (D 407)
Tamás Péter (D. 424) Mechatronika, Optika és Gépészeti Informatika Tanszék (D 407) 1 Előadás Bevezetés az informatikába Adatszerkezetek Algoritmusok, programozási technológiák Számítástudomány alapjai
RészletesebbenS z á m í t ó g é p e s a l a p i s m e r e t e k
S z á m í t ó g é p e s a l a p i s m e r e t e k 7. előadás Ami eddig volt Számítógépek architektúrája Alapvető alkotóelemek Hardver elemek Szoftver Gépi kódtól az operációs rendszerig Unix alapok Ami
Részletesebben7. gyakorlat Sorozatok, Fájlkezelés
7. gyakorlat Sorozatok, Fájlkezelés Házi ellenőrzés - f0124 Írj programot, amelyben a felhasználónak egy, a program által meghatározott számot kell kitalálnia! A felhasználó tippjét a program vagy elfogadja,
Részletesebben10. gyakorlat Tömb, mint függvény argumentum
10. gyakorlat Tömb, mint függvény argumentum 1. feladat: A 6. gyakorlat 1. feladatát oldja meg a strukturált programtervezési alapelv betartásával, azaz minden végrehajtandó funkciót külön függvényben
RészletesebbenKé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észletesebbenAdattípusok. Dr. Seebauer Márta. Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár
Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Adattípusok Dr. Seebauer Márta főiskolai tanár seebauer.marta@roik.bmf.hu Az adatmanipulációs fa z adatmanipulációs fa
RészletesebbenA C nyelv aritmetikai típusai. Struktúrák.
Aritmetikai típusok Struktúrák Typedef A C nyelv aritmetikai típusai. Struktúrák. A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka
RészletesebbenÖsszeadás BCD számokkal
Összeadás BCD számokkal Ugyanúgy adjuk össze a BCD számokat is, mint a binárisakat, csak - fel kell ismernünk az érvénytelen tetrádokat és - ezeknél korrekciót kell végrehajtani. A, Az érvénytelen tetrádok
RészletesebbenAdatszerkezetek 1. Dr. Iványi Péter
Adatszerkezetek 1. Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot kódoltan tároljuk
RészletesebbenProgramozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Előfeldolgozó rendszer Tömbök. Dr. Bécsi Tamás 4. Előadás
Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Előfeldolgozó rendszer Tömbök Dr. Bécsi Tamás 4. Előadás A?: operátor Nézzük meg a következő kifejezést: if (a>b) z=a; else z=b; Ez felírható
RészletesebbenAlgoritmizálás és adatmodellezés tanítása 1. előadás
Algoritmizálás és adatmodellezés tanítása 1. előadás Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az
RészletesebbenAdatbázis rendszerek Gy: Algoritmusok C-ben
Adatbázis rendszerek 1. 1. Gy: Algoritmusok C-ben 53/1 B ITv: MAN 2015.09.08 Alapalgoritmusok Összegzés Megszámlálás Kiválasztás Kiválasztásos rendezés Összefésülés Szétválogatás Gyorsrendezés 53/2 Összegzés
RészletesebbenProgramozás alapjai 9.Gy: Struktúra 2.
Programozás alapjai 9.Gy: Struktúra 2. Ördögi részletek P R O A L A G 35/1 B ITv: MAN 2018.11.10 Euró árfolyam statisztika Az EURO árfolyamát egy negyedéven keresztül hetente nyilvántartjuk (HUF / EUR).
RészletesebbenLEBEGŐPONTOS SZÁMÁBRÁZOLÁS
LEBEGŐPONTOS SZÁMÁBRÁZOLÁS A fixpontos operandusoknak azt a hátrányát, hogy az ábrázolás adott hossza miatt csak korlátozott nagyságú és csak egész számok ábrázolhatók, a lebegőpontos számábrázolás küszöböli
Részletesebben1. 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észletesebbenStruktúrák (struct) A struktúra szerkezetét meghatározó deklaráció általános formája:
Struktúrák (struct) A struktúra egy olyan összetett adatszerkezet, amely nemcsak azonos típusú elemeket rendelhet össze. A struktúra definíciójában leírjuk, hogy a struktúra hogyan épül fel. A struktúra
RészletesebbenKinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések. 1. Mi a programozás?
Bevezetés Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések Forráskód Hibajegyzék p2p.wrox.com xiii xiii xiv xiv xvi xvii xviii
RészletesebbenDigitális technika VIMIAA01
BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 Fehér Béla BME MIT Digitális Rendszerek Számítógépek
RészletesebbenMiről lesz ma szó? A PROGAMOZÁS ALAPJAI 1. Bemutatkozás. Bemutatkozás. Bemutatkozás. Bemutatkozás. 1. előadás. A tárgy címe: A programozás alapjai 1
Miről lesz ma szó? A PROGAMOZÁS ALAPJAI 1 Ajánlott irodalom A programozás fogalma Vitéz András egyetemi adjunktus BME Híradástechnikai Tanszék vitez@hit.bme.hu 2012. február 7. A tárgy címe: A tárgy adminisztratív
RészletesebbenMechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe
Mechatronika és mikroszámítógépek 2017/2018 I. félév Bevezetés a C nyelvbe A C programozási nyelv A C egy általános célú programozási nyelv, melyet Dennis Ritchie fejlesztett ki Ken Thompson segítségével
Részletesebbensallang avagy Fordítótervezés dióhéjban Sallai Gyula
sallang avagy Fordítótervezés dióhéjban Sallai Gyula Az előadás egy kis példaprogramon keresztül mutatja be fordítók belső lelki világát De mit is jelent, az hogy fordítóprogram? Mit csinál egy fordító?
RészletesebbenProgramozott soros szinkron adatátvitel
Programozott soros szinkron adatátvitel 1. Feladat Név:... Irjon programot, mely a P1.0 kimenet egy lefutó élének időpontjában a P1.1 kimeneten egy adatbitet ad ki. A bájt legalacsonyabb helyiértéke 1.
RészletesebbenLaborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)
Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD) Bevezetés A laborgyakorlatok alapvető célja a tárgy későbbi laborgyakorlataihoz szükséges ismeretek átadása, az azokban szereplő
RészletesebbenÓbudai Egyetem. C programozási nyelv
Óbudai Egyetem Kandó Kálmán Villamosmérnöki Kar C programozási nyelv Struktúrák és Unionok Dr. Schuster György 2016. október 6. Óbudai Egyetem Kandó Kálmán Villamosmérnöki Kar C programozási 2016. októbernyelv
RészletesebbenBevezetés Kiíratás Beolvasás Formázás Fájlkezelés Gyakorló feladatok C++ I/O. Bevezetés. Izsó Tamás február 20. Izsó Tamás C++ I/O / 1
C++ I/O Bevezetés Izsó Tamás 2014. február 20. Izsó Tamás C++ I/O / 1 Section 1 Bevezetés Izsó Tamás C++ I/O / 2 Irodalom Izsó Tamás C++ I/O / 3 Paraméter illesztés függvénynév túlterhelés esetén 1 Pontos
RészletesebbenC programozási nyelv
C programozási nyelv Struktúrák Dr Schuster György 2011 június 16 Dr Schuster György () C programozási nyelv Struktúrák 2011 június 16 1 / 11 Struktúrák Struktúrák A struktúra egy olyan összetett adatszerkezet,
RészletesebbenProgramozás C++ -ban 2007/1
Programozás C++ -ban 2007/1 1. Különbségek a C nyelvhez képest Több alapvető különbség van a C és a C++ programozási nyelvek szintaxisában. A programozó szempontjából ezek a különbségek könnyítik a programozó
RészletesebbenMűveletek lebegőpontos adatokkal
Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Műveletek lebegőpontos adatokkal Dr. Seebauer Márta főiskolai tanár seebauer.marta@roik.bmf.hu Műveletek az IEEE 754
RészletesebbenBevezetés az informatikába
Bevezetés az informatikába 3. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.
RészletesebbenOperációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED
UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED AWK - szintaxis, vezérlési szerkezetek Operációs rendszerek 11. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Csuvik
RészletesebbenAdatok ábrázolása, adattípusok
Adatok ábrázolása, adattípusok Összefoglalás Adatok ábrázolása, adattípusok Számítógépes rendszerek működés: információfeldolgozás IPO: input-process-output modell információ tárolása adatok formájában
Részletesebben