Előző óra összefoglalása. Programozás alapjai C nyelv 3. gyakorlat. Karakter típus (char) Karakter konstansok. Karaktersorozatot lezáró nulla

Hasonló dokumentumok
Programozás alapjai C nyelv 3. gyakorlat. Előző óra összefoglalása. Karakter típus (char) Algoritmus leírása. C nyelv tulajdonságai

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

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. (GKxB_INTM023) Dr. Hatwágner F. Miklós augusztus 29. Széchenyi István Egyetem, Gy r

Fü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. Függvények. Függvények(2)

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

1.1. A forrásprogramok felépítése Nevek és kulcsszavak Alapvető típusok. C programozás 3

ALGORITMUSOK, ALGORITMUS-LEÍRÓ ESZKÖZÖK

J. Carelman: Leegyszer!sített számológép. Programozás I. A C programozás alapjai 1. Gyakorlat. Gyakorlatok

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

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

A 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

Mutató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 gyakorlat. 2. gyakorlat C alapok

A C# PROGRAMOZÁSI NYELV

1. Írd fel hatványalakban a következõ szorzatokat!

OOP I. Egyszerő algoritmusok és leírásuk. Készítette: Dr. Kotsis Domokos

Informatika terméktervezőknek

Szoftvertervezés és -fejlesztés I.

Webprogramozás szakkör

C programozás. { Márton Gyöngyvér, 2009 } { Sapientia, Erdélyi Magyar Tudományegyetem }

Java II. I A Java programozási nyelv alapelemei

A C programozási nyelv I. Bevezetés

A C programozási nyelv I. Bevezetés

GYAKORLATIAS JAVA MINTA

Információs Technológia

A C# programozási nyelv alapjai

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

S z á m í t ó g é p e s a l a p i s m e r e t e k

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

Mintavételes szabályozás mikrovezérlő segítségével

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

Programozás alapjai C nyelv 10. gyakorlat. Standard függvények. Union

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

Karakterkészlet. A kis- és nagybetűk nem különböznek, a sztringliterálok belsejét leszámítva!

Kifejezések. Kozsik Tamás. December 11, 2016

Pénzügyi algoritmusok

Objektumorientált Programozás III.

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

10.M ALGEBRA < <

Készítette: Nagy Tibor István

Programozás alapjai C nyelv 1. gyakorlat

Programozás alapjai C nyelv 1. gyakorlat

Feladat: Hogyan tudunk létrehozni egy olyan vector nevű tömb típust, amely egy háromdimenziós térbeli vektort reprezentál?

Operációs Rendszerek II. labor. 2. alkalom

Feladatok és megoldások a 11. heti gyakorlathoz

Készítette: Nagy Tibor István

Occam 1. Készítette: Szabó Éva

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

Programozási nyelvek JAVA EA+GY 1. gyakolat

file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 2. előadás

C programozási nyelv

Adatbázis és szoftverfejlesztés elmélet

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

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

BASH script programozás II. Vezérlési szerkezetek

ALGEBRA. egyenlet megoldásait, ha tudjuk, hogy egész számok, továbbá p + q = 198.

C programozás. { Márton Gyöngyvér, 2009 } { Sapientia, Erdélyi Magyar Tudományegyetem }

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

Mérési adatok feldolgozása Méréselmélet PE_MIK MI_BSc, VI_BSc 1

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

A primitív függvény létezése. Kitűzött feladatok. határérték, és F az f egy olyan primitívje, amelyre F(0) = 0. Bizonyítsd be,

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

Java II. I A Java programozási nyelv alapelemei

C változók. Feladat: Deklaralj egy valos, egy karakter es ket egesz tipusu valtozot! int main() {

Bevezetés a programozásba I.

Komputeralgebra Rendszerek

Azonos névleges értékű, hitelesített súlyokból alkotott csoportok együttes mérési bizonytalansága

Algoritmusok és adatszerkezetek I. 10. előadás

Típusok és konstansok

Programozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r

Objektumorientált Programozás IV.

Objektumorientált Programozás I.

Bevezetés a programozásba

Vezérlési szerkezetek

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós március 3. Széchenyi István Egyetem, Gy r

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

Smalltalk 2. Készítette: Szabó Éva

Szoftvertechnológia alapjai Java előadások

Programozás BMEKOKAA146. Dr. Bécsi Tamás 1. Előadás

Bevezetés a programozásba. 8. Előadás: Függvények 2.

5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás

Programozási nyelvek (ADA)

VII. A határozatlan esetek kiküszöbölése

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás

Programozási nyelvek I. 5. előadás (Gregorics Tibor anyagának felhasználásával)

7. fejezet: Mutatók és tömbök

Bevezetés a programozásba I.

OAF Gregorics Tibor: Minta dokumentáció a 4. házi feladathoz 1. Feladat. Megoldás

Szelekció. Döntéshozatal

Függvények. Programozás I. Hatwágner F. Miklós november 16. Széchenyi István Egyetem, Gy r

Java programozási nyelv

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

Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14.

Vezérlési szerkezetek. Szelekció Ciklusok

Operációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

N - edik gyökvonás. Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma)

Átírás:

Programozás alapja C yelv 3. gyakorlat Szeberéy Imre BME IIT <szeb@t.bme.hu> 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 C yelv tulajdosága Hagyomáyos C fordító C yelv szerkezete, első C program Változó, típus fogalma Belső és külső ábrázolás forma Egész és valós típus belső ábrázolása Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -2- Karakter típus (char) Egészek (byte) fogható fel és általába em egatív. értékkészlet: karakterek tárolására alkalmas [ CHAR_MIN, CHAR_MAX ] <lmts.h>-ba defált kostasok: a, 9, \, \2, \x2, művelethalmaz: azoos az t műveletevel belső ábrázolás: adott gép kódkészlete többyre ASCII Karakter kostasok Aposztrofok ( ) közé zárt: yomtatható karakterek: A, Z specáls szekvecák: \, \t, \v, \b, \r, \f, \a \\, \?, \, \, max. 3 oktáls, vagy tetszőleges számú hexa számjegy: \ooo, \xhh (Kterjesztett karaktertípus: L A ) Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -3- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -4- Karaktersorozat Ncs karaktersorozat típus, de va kostas: Karaktersorozatot lezáró ulla Mdg va egy ajádék lezáró ulla a sorozat végé. Macskakörmök ( ) közé zárt: yomtatható karaktarek: Alama specáls szekvecák: \talma\ oktáls, vagy hexa számjegy: \23\23 (Kterjesztett karakterkészlet eseté: L Alma ) Hello \ Valahol a memórába: H e l l o \ \ Lezáró ulla Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -5- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -6-

Változók mérete (szeof operátor) szeof kfejezés, vagy szeof(típus) szeof(char) --> byte (8 bt) szeof(short) >= 2 byte (6 bt) szeof(log) >= 4 byte(32 bt) szeof(short) <= szeof(t) szeof(t) <= szeof(log) szeof(float) <= szeof(double) Az t mdg az adott archtektúra legoptmálsabb egésze. Kfejezés, utasítás Operátorok alkalmazásával kfejezések jöek létre. Pl: 5 + 6 vagy a = 2 Az utasítások legegyszerűbb fajtája a kfejezésutasítás: kfejezés ; Pl: 5 + 6 ; vagy a = 2; Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -7- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -8- Összetett utasítás Kapcsos zárójelekkel összefogott utasítássorozat. pl: a = 3; c = 5 * 2; Potosabba: összetett_utasítás: deklarácós_lsta. opc utasítás_lsta Változók deklarálása újból deklarácó: deklarácó_sp. kezdet_dekl_lsta opc ; deklarácó_sp.: típus_spec. deklarácó_sp. opc tárolás_osztály_sp. deklarácó_sp. opc típus_mősítő deklarácó_sp. opc regster usged t A2; usged t regster a2; log; Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -9- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -- Tárolás osztály, típusmősítők, Páros-páratla Típus specfkátor: vod, char, short, t, log, float, double, sged, usged, struktúra_v_uo_spec, felsorolás_spec, típus_év Tárolás osztály spec. auto, regster, statc, exter Típus mősítők cost, volatle vezérlés szerkezet páros a a páros? páratla Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -2-

Elágazás (f) f ( kfejezés ) utasítás else utasítás2 Példa: f (a < b ) x = a; else x = b; f (x > y) x = x - y; utasítás egy kjárat kfejezés utasítás2 Páros-páratla (2) #clude <stdo.h> ma() t A; scaf( %d, &a); f (a % 2 == ) prtf( páros\ ); else prtf( páratla\ ); Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -3- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -4- Első páratla szám Elöl vzsgáló cklus (whle) := pt:= calzálás elöl vzsgáló cklus < pt := + pt:= pt + 2 whle ( kfejezés ) utasítás Példa: whle ( <= ) prtf( %d\, ); = + ; egy kjárat kfejezés utasítás Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -5- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -6- Első páratla szám (2) Első Fboacc szám #clude <stdo.h> ma() t,, pt; scaf( %d, &); = ; pt = ; whle ( < ) prtf( %d\, pt); = + ; pt = pt + 2; := a:= b:= calzálás elöl vzsgáló cklus < a := + c:= a +b a:=b, b:=c Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -7- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -8-

vod ma() t a, b, c; t, ; Fboacc scaf("%d", &); a = b = ; = ;// még em írtuk k whle ( < ) prtf(" d", a); = + ; // + kírás törtét c = a + b; a = b; b = c; Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -9- Operátorok Artmetka operátorok (+ - * / %) Relácós operátorok ( < <= > >= ==!= ) Logka operátorok ( &&! ) Btekét operátorok (& ^ ~) Léptető operátorok ( >> << ) Értékadó operátorok ( = += *=...) Feltételes operátor (?:) Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -2- Artmetka operátorok Relácós operátorok + - * / % / - egészek között: egészrész (5 / 2 2) % - maradék képzés (5 % 2 ) < ksebb <= ksebb vagy egyelő > agyobb >= agyobb vagy egyelő == egyelő!= em egyelő Eredméyük v. hams v. gaz Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -2- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -22- Logka operátorok Ncs logka típus, de va logka operátor. Artmetka típus értékkészlete vagy Háttér koverzó = hams, a több gaz Logka művelet Logka operátorok (2) Logka vagy: Sorred!! kfejezés kfejezés2 Példák: a < 3 a > 5 c > 3 a > 5 ; f (a < 3 a > 5) c = 8 ; Logka és: kfejezés && kfejezés2 Logka tagadás: Sorred!!! kfejezés Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -23- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -24-

Btekét operátorok & btekét és 3 & 5 btekét vagy 3 5 7 ^ btekét kzáró vagy 3 ^ 5 6 ~ btekét egálás (egyes komplemes) ~3-4 & Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -25- ^ ~ Léptető operátorok << logka tolás balra pl: 5 << = 5 = 28 << = 28 = Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -26- Léptető operátorok(2) >> logka tolás jobbra (előjeletle) pl: 5 >> = 5 = 2 28 >> = 28 = 64 Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -27- Léptető operátorok(3) >> artmetka tolás jobbra (előjeles) (mplemetácó függő) pl: 5 >> = 5 = 2-28 >> = -28 = -64 Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -28- Értékadó operátorok Az értékadás s kfejezés többszörös értékadás. Pl: a = b = c = 2 Mde kétoperadusú operátor kombálható az értékadással. Rövdebb írásmód. Egyszerű optmalzálás lehetőség. pl: a += 3 a = a + 3 a *= c a = a * c x /= y x = x / y Balérték (lvalue) Olya érték (kfejezés), am értékadás bal oldalá szerepelhet. Az operátorok egy része balértéket géyel (pl. értékadó op.), de va olya operátor s, am balértéket állít elő. Legegyszerűbb balérték a változó eve. Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -29- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -3-

páratla Páros-páratla II. a a páratla? a > páros Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -3- hátul vzsgáló cklus Hátul vzsgáló cklus (do whle) do utasítás whle ( kfejezés ) ; Példa: do prtf( %d\, ); = + ; whle ( <= ); egy kjárat utasítás kfejezés Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -32- Páros-páratla II. (2) #clude <stdo.h> ma() Logka értékké kovertálódk t a; do scaf( %d, &a); f (a & ) prtf( Páratla\ ); else prtf( Páros\ ); whle ( a > ); Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -33- For cklus for ( kfejezés; kfejezés2; kfejezés3) utasítás Példák: for ( = ; <=; += ) prtf( %d\, ); for (;;) ; egy kjárat kfejezés2 utasítás Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -34- kfejezés kfejezés3 Páros-páratla III. Feladat: Olvassuk be fájl végég, vagy amíg szám következk az puto, maxmum egész számot és írjuk k, hogy páros v. páratla számot olvastuk! Vázlat: cv. előkészítés = whle <= AND tuduk_olvas kír; = + cv. övelés Páros-páratla III. (2) #clude <stdo.h> Sorred ma() fv.érték t, a; for (=; <= && scaf( %d,&a) == ; +=) f (a & ) prtf( Páratla\ ); else prtf( Páros\ ); Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -35- Programozás alapja I. (C yelv, gyakorlat) BME-IIT Sz.I. 25..3.. -36-