Változók és adattípusok Változók és adattípusok
|
|
- Alexandra Király
- 6 évvel ezelőtt
- Látták:
Átírás
1 előző foglalkozás összefoglalása, ismétlő gyakorlatok változók elnevezése, értékadás, többszörös értékadás műveletek egész és tört számokkal, string-ekkel logikai változók és logikai műveletek típusátalakítás, néhány beépített függvény
2 Mi a program? utasítások sorozata valamilyen feladat megoldására amit egy számítógép hajt végre 2
3 Mi a programozás? programok készítése, mely általában a következő tevékenységeket jelenti: 1. feladat megértése 2. tervezés 3. kódolás 4. tesztelés 5. hibák javítása 6. továbbfejlesztés 3
4 Mi a programozási nyelv? programok írására szolgáló mesterséges nyelv utasításkészlet ( szótár ) szintaktikai szabályok ( nyelvtan ) sokféle programozási nyelv létezik pl. Scratch, Python, JavaScript, PHP, Java, C, Ada... 4
5 A Python nyelv és az IDLE környezet Python könnyen elsajátítható és használható sok előre megírt modult tartalmaz modul = hasznos programocskák halmaza nagy cégek is használják Google, Pixar, NASA,... IDLE (Integrated Development and Learning Environment) integrált fejlesztő és tanuló környezet alkalmas Python programok írására és futtatására 5
6 IDLE ablakok File New File vagy CTRL-N terminálablak (ebben fut a program) kódablak (ebben írjuk a programot) 6
7 IDLE ablakok terminálablak (ebben fut a program) Run Run Module vagy F5 kódablak (ebben írjuk a programot) Futtatás előtt az IDLE szeretné elmenteni a programot. Hozz létre egy könyvtárat, amibe Python programjaidat mented! A Python programok neve bármi lehet, a kiterjesztésük általában.py (például HelloWorld.py) 7
8 Változók egy változóra gondolhatsz úgy, mint egy névvel ellátott tárhelyre a változóban valamilyen értéket tárolhatsz (pl. egy számot vagy egy szöveget) szam = 6 print(szam) masikszam = 2*szam print(masikszam) szam = 18 print(szam) a tárolt értéket a változó nevének leírásával hívhatod elő a változó értékét bármikor felülírhatod 8
9 Adattípusok egyszerű beépített adattípusok egész szám (integer) tört (float) szöveg (string): "..." vagy '...' igaz/hamis (Boolean): True, False a = 5 b = 6.5 c = "szöveg" d = 'ez is szöveg' e = True c = -10 egy változó típusát nem kell előre megmondani, akkor dől el, amikor értéket kap! 9
10 Konzol input és output nev = input("hogy hívnak? ") kor = input("hány éves vagy? ") print("hello " + nev + "!") print("biztos jó " + kor + " évesnek lenni.") 10
11 Feltételes elágazás egy programrész végrehajtását feltételhez kötheted az if utasítással (az if jelentése magyarul ha) az if párja az else (jelentése egyébként); az else utáni programrész akkor hajtódik végre, ha az if feltétele nem teljesül Figyeld meg a behúzásokat! szam = int(input("írj be egy számot! ")) if (szam > 100): print("ez egy nagy szám.") else: print("ez egy kicsi szám.") Ügyelj a kettőspontra! 11
12 Feltételes elágazás Az azonos méretű behúzással rendelkező, egymás utáni sorok egy összetartozó blokkot alkotnak if <feltétel>: else: A <feltétel> egy kifejezés, melynek értéke igaz (True) vagy hamis (False) lehet Ez az utasításblokk hajtódik végre ha a <feltétel> igaz Ez az utasításblokk hajtódik végre ha a <feltétel> hamis 12
13 Feltételes elágazás if <feltétel>: igen <feltétel> igaz? nem else: 13
14 Ismétlés while ciklussal sokszor előfordul, hogy egy programrész végrehajtását addig kell ismételni, amíg valamilyen feltétel fennáll ezt a célt szolgálja a while ciklus (a while jelentése amíg): szam = 0 while (szam <= 100): szam = int(input("írj be egy 100-nál nagyobb számot! ")) print("köszönöm!") 14
15 Ismétlés while ciklussal while <feltétel>: A <feltétel> egy kifejezés, melynek értéke igaz (True) vagy hamis (False) lehet Itt is a behúzás jelzi a while-hoz tartozó, ismételendő utasításblokkot Ez az utasításblokk mindaddig újra és újra végrehajtódik amíg a <feltétel> igaz 15
16 Ismétlés while ciklussal while <feltétel>: igen <feltétel> igaz? nem 16
17 Gondoltam egy számra! Házi feladat Olyan programot kezdtünk el írni, mely kisorsol egy véletlen számot 1 és 100 között, majd arra kéri a felhasználót, hogy találja ki a sorsolt számot. A program úgy segíti a felhasználót, hogy annak minden tippje után kiírja, hogy a sorsolt szám nagyobb vagy kisebb, mint a felhasználó tippje. A program mindaddig kéri a felhasználó tippjeit, amíg a felhasználó ki nem találja a sorsolt számot. Egészítsd ki a hiányos programot! 17
18 Gondoltam egy számra! from random import randint szam = randint(1, 100) print("gondoltam egy számra 1 és 100 között.")... while (...): tipp =... if (...): print("nem, ennél kisebbre gondoltam.") else: if (...): print("nem, ennél nagyobbra gondoltam.") else: print("igen, eltaláltad!") 18
19 Gondoltam egy számra! from random import randint szam = randint(1, 100) print("gondoltam egy számra 1 és 100 között.") tipp = 0 while (szam!= tipp): tipp = int(input("melyik számra gondoltam? ")) if (tipp > szam): print("nem, ennél kisebbre gondoltam.") else: if (tipp < szam): print("nem, ennél nagyobbra gondoltam.") else: print("igen, eltaláltad!") 19
20 Lépésenkénti végrehajtás Próbáld ki! Indítsd el a Debugger-t a terminálablakban! (Debug Debugger) A kinyíló Debug Control ablakban lépésenként futtathatod a programot, miután a szokásos módon elindítottad (pl. F5 billentyűvel). A Step és az Over gombokkal léptetheted a programot utasításról utasításra. A Step minden függvénybe belép, az Over átlépi a függvényhívásokat. Figyeld meg a változók (szam és tipp) értékét a futás során! Ellenőrizd a feltételek teljesülését az if/else és while utasítások végrehajtásánál! 20
21 Ismétlő gyakorlatok Írj programot! Írj programot, mely kiírja a 7-tel osztható számokat 1-től 70-ig! Módosítsd a programot úgy, hogy azok mellé a számok mellé egy *-ot is kiírjon, amiben van 7-es számjegy! Írj programot! Írj programot, mely kiírja 2 hatványait 1-től 1000-ig! A számokat írjuk egy sorba, pontosvesszővel elválasztva! Azaz, ilyen kimenetet várunk: 1; 2; 4; 8;... 21
22 Ismétlő gyakorlatok n = 7 while (n <= 70): print(n) n = n + 7 n = 7 while (n <= 70): if ((n == 7) or (n == 70)): print(n, "*") else: print(n) n = n
23 Ismétlő gyakorlatok sor = "" n = 1 while (n <= 1000): sor = sor + str(n) + "; " n = 2*n print(sor) n = 1 while (n <= 1000): print(n, end="; ") n = 2*n 23
24 Változók elnevezése a változók nevét a programozó választja egy változónév nem lehet foglalt Python kulcsszó, mint pl. if, else, while, def, and,... a változónevek betűket és számokat is tartalmazhatnak, de... nem kezdődhetnek számmal nem lehet bennük szóköz vagy olyan speciális karakter, mint #, &, $,... a változó nevek tartalmazhatnak _ (aláhúzás) karaktert 24
25 Változók elnevezése válasszunk rövid, de kifejező neveket! pl. egy háromszög magassága lehet magassag vagy néha egyszerűen csak m pl. egy bekért név és életkor lehet nev és kor ha mégis hosszabb nevet kell választani, akkor kövessünk egységes elnevezési mintát bármilyen mintát használhatnánk, de a Python programozók az alábbi mintát követik: haromszog_magassag, kor_sugar,... 25
26 Változók elnevezése Melyik helytelen? Az alábbi változónevek közül melyik helytelen? Melyik az, ami helyes, de kerülendő? És melyik az, ami nem python-os? oldal_a szam#1 elso_betu qwert tablaoszlop12 _spec teglalap_atlo 2.sor szoveghossz 3osztoi korsugar else gombmegsehatterszin $200 osszeg eger_pozicio_y sebesseg_x 26
27 Változók elnevezése oldal_a szam#1 elso_betu qwert tablaoszlop12 _spec teglalap_atlo 2.sor szoveghossz 3osztoi korsugar else gombmegsehatterszin $200 osszeg eger_pozicio_y sebesseg_x 27
28 Értékadás az értékadás az = jellel történik az első értékadással hozzuk létre a változót további értékadással változtathatjuk a változóban tárolt értéket az értékadás meghatározza a változó típusát is szam = 6 szam2 = 5*(szam+1) szam = 12 szam = szam + 1 szam += 1 n = 15 pi = msg = "Hello!" n = pi 28
29 Többszörös értékadás a Pythonban egyszerre több változóhoz is rendelhetünk értéket: a, b, c = 1, 2, 3 ennek segítségével kényelmesen cserélhetjük fel két változó értékét: x, y = 1, 2 x, y = y, x 29
30 Műveletek egész számokkal alapműveletek: +, -, *, / további hasznos műveletek: hatványozás: ** egész osztás: // maradékos osztás: % >>> 2** >>> 15/2 7.5 >>> 15//2 7 >>> 15%2 1 30
31 Műveletek tört számokkal alapműveletek: +, -, *, / próbáljuk ki ezeket is: hatványozás: ** egész osztás: // maradékos osztás: % >>> 2.5** >>> 15.5/ >>> 15.5//2 7.0 >>> 15.5%
32 Műveletek precedenciája sorrend 1. ** 2. *, /, //, % 3. +, - ha valami nem egyértelmű, használjunk zárójeleket! >>> 5+10/ >>> 5*4**2 80 >>> 10/2* >>> 10/2+5*6** >>> 10/2+5*6**(4-2)
33 Beépített függvények minimum és maximum min(), max() kerekítés round() >>> min(5, 10, 15) 5 >>> max(5, 10, 15) 15 >>> max(5.4, 6.25, 8.9) 8.9 >>> round(15.2) 15 >>> round(15.6) 16 33
34 Stringek egy szöveg karakterek sorozatából áll az ilyen karakterláncokat string-eknek nevezzük a stringet jelölhetjük a "..." vagy a '...' jelekkel msg = "Hello!" msg = 'Hello!' msg = "Ez egy 'A' betű." msg = 'Ez egy "idézet".' 34
35 String-kezelés szöveg hosszának megállapítása len() szöveg átalakítása kis- vagy nagybetűssé lower(), upper() keresés szövegben find() előfordulás számlálása count() >>> s = "Hello!" >>> len(s) 6 >>> s.upper() 'HELLO!' >>> s.lower() 'hello!' >>> s.find('o') 4 >>> s.find('b') -1 >>> s.count('l') 2 >>> s.count('b') 0 35
36 Típusátalakítás sokszor szükség van egy változóban tárolt érték típusának átalkítására str(): egész és tört számokból csinál string-et int() és float(): egészet és törtet csinál string-ből mi történik, ha a float() bemenete egy egész? mi történik, ha az int() bemenete egy tört? >>> str(12) '12' >>> str(15.6) '15.6' >>> int('12') 12 >>> float('15.6') 15.6 >>> float(12) 12.0 >>> int(15.6) 15 36
37 Egy mese tanulságai Egészítsd ki! Egészítsd ki az alábbi programot értelemszerűen! Ügyelj arra, hogy a volt szó minden előfordulását megszámolja a program, a kis- és nagybetűsöket egyaránt! szoveg = "Egyszer volt, hol nem volt, volt egyszer egy király. Volt ennek a királynak három fia." print("a szöveg hossza: " + ) print("a 'volt' szó ennyiszer fordul elő: " + ) print("a 'volt' szó első előfordulásának helye: " + ) print("a 'király' szó ennyiszer fordul elő: " + ) print("a 'király' szó első előfordulásának helye: " + ) 37
38 Egy mese tanulságai szoveg = "Egyszer volt, hol nem volt, volt egyszer egy király. Volt ennek a királynak három fia." szoveg = szoveg.lower() print("a szöveg hossza: " + str(len(szoveg))) print("a 'volt' szó ennyiszer fordul elő: " + str(szoveg.count('volt'))) print("a 'volt' szó első előfordulásának helye: " + str(szoveg.find('volt'))) print("a 'király' szó ennyiszer fordul elő: " + str(szoveg.count('király'))) print("a 'király' szó első előfordulásának helye: " + str(szoveg.find('király'))) 38
39 Logikai műveletek Boolean típusú (logikai) változók csak True (igaz) vagy False (hamis) értéket vehetnek fel ilyen változókkal logikai műveleteket végezhetünk: 1. not (negáció) 2. and (és) 3. or (vagy) >>> True and False False >>> True or False True >>> not True False 39
40 Logikai műveletek A B A and B F F F F T F T F F T T T A B A or B F F F F T T T F T T T T A F T not A T F 40
41 Feltételek kiértékelése Mit ír ki? Mit ír ki ez a program? X, Y, Z = 100, 25, 70 if ((X > Y) or (Y > Z)): print("alma") else: print("körte") if ((Z < X) and not(z > Y)): print("banán") else: print("narancs") 41
42 Összefoglalás változók elnevezése értékadás és többszörös értékadás műveletek egész és tört számokkal beépített függvények min(), max(), round() string-ek és string-kezelés len(), lower(), upper(), find(), count() típusátalakítás str(), int(), float() logikai műveletek and, or, not 42
43 Egy szám osztói Feladat Írj programot, mely bekér egy pozitív egész számot, majd kiszámolja és kiírja annak osztóit! Az osztók egy sorban, pontosvesszővel elválasztva jelenjenek meg! A program várt működése pl. a következő: Írj be egy pozitív egész számot: osztói: 1; 3; 5; 15 43
44 Egy szám osztói Megoldási terv Kérd be a számot, és azonnal alakítsd át egész számmá! Hozz létre egy változót, amiben a kiírandó osztókat gyűjtöd majd! Mivel az 1 minden számnak osztója, ezért a változó kezdő értéke lehet 1. Ehhez fűzöd majd a további osztókat. Minden n számra 2-től a megadott szám feléig, vizsgáld meg, hogy n osztója-e a számnak! Ha igen, akkor n-et fűzd hozzá az osztókat tároló változó értékéhez! Végül fűzd hozzá az osztókhoz magát a számot, és írd ki az osztókat tároló változó értékét! 44
45 Egy szám osztói Ötletek n osztója egy X számnak, ha X-et n-nel elosztva 0 maradékot kapunk. Ezt így tesztelheted a programodban: if (X%n == 0): Meg kell vizsgálnod minden n számra 2-től a megadott szám feléig, hogy n osztója-e a számnak. Ezt egy while ciklussal lehet megoldani. A ciklus belsejében ne felejtsd el n aktuális értékének vizsgálata után n értékét megnövelni eggyel. Különben a programod végtelen ciklusba kerül, és soha nem áll le. 45
46 Tökéletes számok Feladat Egy pozitív egész számot tökéletesnek nevezünk, ha a szám megegyezik az önmagánál kisebb osztóinak összegével. Pl. a 6 tökéletes szám, mert az önmagánál kisebb osztói az 1, 2, 3, és ezek összege pont 6. Az előző feladat mintájára, írj programot, mely bekér egy pozitív egész számot, majd megállapítja, hogy az tökéletes szám-e vagy nem! A program várt működése pl. a következő: Írj be egy pozitív egész számot: 6 Tökéletes szám! Írj be egy pozitív egész számot: 12 Nem tökéletes szám. 47
47 Tökéletes számok Megoldási terv Kérd be a számot, és azonnal alakítsd át egész számmá! Hozz létre egy változót, amiben az osztók összegét tárolod majd! Mivel az 1 minden számnak osztója, ezért a változó kezdő értéke lehet 1. Ehhez adod majd hozzá a további osztókat. Minden n számra 2-től a megadott szám feléig, vizsgáld meg, hogy n osztója-e a számnak! Ha igen, akkor n-et add hozzá az osztók összegét tároló változó értékéhez! Végül ellenőrizd, hogy az osztók összege megegyezik-e a számmal, és az ellenőrzés eredményétől függően írd ki a megfelelő üzenetet a képernyőre! 48
48 Tökéletes számok keresése Feladat Az előző feladatban készített programmal megpróbálhatsz tökéletes számokat keresni, de hamar rájössz majd, hogy ez kézzel elég hosszadalmas. Írj programot, mely egy megadott felső határig az összes számot megvizsgálja, és kiírja a tökéletes számokat! A program várt működése pl. a következő: Tökéletes szám keresésének felső határa: 100 Ezeket a tökéletes számokat találtam:
49 Tökéletes számok keresése Megoldási ötlet Lényegében az előző programodat kell beletenni egy while ciklus belsejébe, mely az összes számon végigmegy 6-tól (tudjuk, hogy 6-nál nincs kisebb tökéletes szám) a bekért felső határig. 51
50 További anyagok on-line:
51 További anyagok könyvek Gérard Swinnen, Tanuljunk meg programozni Python nyelven, Koós Antal, Python a gépben, TypoTeX
52 Készítette: Buttyán Levente CoderDojo Szentendre
Python bevezető foglalkozás Python bevezető foglalkozás
Python bevezető foglalkozás program, programozás, programnyelvek a Python nyelv és az IDLE környezet változók és adattípusok konzol input és output (input(), print()) vezérlési szerkezetek (if/else, while)
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ó
Vezérlési szerkezetek Vezérlési szerkezetek: feltételes elágazás és ciklusok
: feltételes elágazás és ciklusok töbszörös elágazás (if-elif-else) kilépés while ciklusból (break), ciklus folytatása (continue), és a while ciklus feltételéhez tartozó else ág a for ciklus és a range()
Scratch bevezető foglalkozás Scratch bevezető foglalkozás
a program fogalmának bevezetése a Scratch fejlesztőkörnyezet bemutatása a Scratch lehetőségeinek bemutatása példákon keresztül gyakorlás a példák módosításával Mi a program? utasítások sorozata valamilyen
Animáció készítése Scratch-ben
Animáció készítése Scratch-ben az előző foglalkozás összefoglalása animációs lehetőségek a Scratch-ben időzítés és szinkronizáció gyakorlás animációs kisfilm készítésével Mi a program? utasítások sorozata
Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):
Python Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása alatt
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
Interaktív alkalmazások készítése Scratch-ben
Interaktív alkalmazások készítése Scratch-ben az előző foglalkozás összefoglalása változók szereplők mozgatása, érintés érzékelése távolság és idő érzékelése szöveg bekérése felhasználótól Ismétlés animációs
Szoftvertervezés és -fejlesztés I.
Szoftvertervezés és -fejlesztés I. Operátorok Vezérlési szerkezetek Gyakorlás 1 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.
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
Programozá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ő
Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14.
Informatika 1 2011 Második előadás, vezérlési szerkezetek Szabó Adrienn 2011. szeptember 14. Tartalom Algoritmusok, vezérlési szerkezetek If - else: elágazás While ciklus For ciklus Egyszerű típusok Összetett
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
Imperatív programozás
Imperatív programozás 2. Előadás Python alapok Elérhetőség Tejfel Máté Déli épület, 2.616 matej@elte.hu http://matej.web.elte.hu Python Script nyelv Értelmezett (interpretált) Dinamikus típusrendszer Gyors
Occam 1. Készítette: Szabó Éva
Occam 1. Készítette: Szabó Éva Párhuzamos programozás Egyes folyamatok (processzek) párhuzamosan futnak. Több processzor -> tényleges párhuzamosság Egy processzor -> Időosztásos szimuláció Folyamatok közötti
AWK programozás, minták, vezérlési szerkezetek
10 AWK programozás, minták, vezérlési szerkezetek AWK adatvezérelt szkriptnyelv text processing, adat kiterjesztés, tagolt adatok automatizált soronkénti feldolgozása a forrásállományt soronként beolvassa
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}...
AWK programozás, minták, vezérlési szerkezetek
10 AWK programozás, minták, vezérlési szerkezetek AWK futtatási módok AWK parancs, közvetlen programkódmegadás: awk 'PROGRAMKÓD' FILE példa: ls -l awk '{print $1, $5}' a programkód helyére minden indentálás
Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):
Javascript Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása
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.
BASH script programozás II. Vezérlési szerkezetek
06 BASH script programozás II. Vezérlési szerkezetek Emlékeztető Jelölésbeli különbség van parancs végrehajtása és a parancs kimenetére való hivatkozás között PARANCS $(PARANCS) Jelölésbeli különbség van
Imperatív programozás
Imperatív programozás 7. Előadás Függvények, láthatóság (folytatás) Modulok Kivételkezelés Beágyazott függvény def lnko(x, y): def kivon(m, n): return m - n while not (x == y) : if x > y : x = kivon(x,y)
Listák, szótárak, fájlok Listák, szótárak, fájlok
lista fogalma, használata listák másolása (alap szintű, teljes körű) szótárak fogalma, használata adatbázis alkalmazás fejlesztése műveletek fájlokkal (megnyítás, írás, olvasás, lezárás) rejtjelező alkalmazá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
Programozási nyelvek Python
Programozási nyelvek Python A nyelv története és jellemzői 2 A nyelv története Tervező Guido van Rossum (1956, Hollandia) Befolyásoló nyelvek ABC (pl. blokkok jelölése behúzással); Modula-3; C; C++; Unix
Függvények Függvények
teknőc parancsok ismétlése függvények fogalma, használata grafikon rajzoló program Reversi játékprogram függvények lokális változói rekurzió és fraktál-szerű ábrák rajzolása Emlékeztető töbszörös elágazás
Python tanfolyam Python bevezető I. rész
Python tanfolyam Python bevezető I. rész Mai tematika Amiről szó lesz (most): Interpretált vs. fordított nyelvek, GC Szintakszis Alaptípusok Control flow: szekvencia, szelekció, iteráció... Függvények
Java Programozás 1. Gy: Java alapok. Ismétlés ++
Java Programozás 1. Gy: Java alapok Ismétlés ++ 24/1 B ITv: MAN 2018.02.18 Feladat Készítsünk egy komplett konzolos alkalmazást, mely generál egy számot 0 és 100 között (mindkét határt beleértve), feladatunk
Informatika terméktervezőknek
Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások
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`)
Bevezetés a programozásba I.
Bevezetés a programozásba I. 5. gyakorlat Surányi Márton PPKE-ITK 2010.10.05. C++ A C++ egy magas szint programozási nyelv. A legels változatot Bjarne Stroutstrup dolgozta ki 1973 és 1985 között, a C nyelvb
Szkriptnyelvek. 1. UNIX shell
Szkriptnyelvek 1. UNIX shell Szkriptek futtatása Parancsértelmez ő shell script neve paraméterek shell script neve paraméterek Ebben az esetben a szkript tartalmazza a parancsértelmezőt: #!/bin/bash Szkriptek
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
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
2018, Diszkrét matematika
Diszkrét matematika 3. előadás mgyongyi@ms.sapientia.ro Sapientia Egyetem, Matematika-Informatika Tanszék Marosvásárhely, Románia 2018, őszi félév Miről volt szó az elmúlt előadáson? számtartományok: természetes
AWK programozás Bevezetés
09 AWK programozás Bevezetés AWK adatvezérelt szkriptnyelv text processing, adat kiterjesztés, tagolt adatok automatizált soronkénti feldolgozása a forrásállományt soronként beolvassa és feldolgozhatóvá
Felvételi vizsga mintatételsor Informatika írásbeli vizsga
BABEȘ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR A. tételsor (30 pont) Felvételi vizsga mintatételsor Informatika írásbeli vizsga 1. (5p) Egy x biten tárolt egész adattípus (x szigorúan pozitív
A Python programozási nyelv
A Python programozási nyelv Takács Gábor Széchenyi István Egyetem Matematika és Számítástudomány Tanszék 1 / 47 Jellemzők + értelmezett nyelv + típusai dinamikusak + szintaxisa tömör,
Operá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
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
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
2016, Diszkrét matematika
Diszkrét matematika 8. előadás Sapientia Egyetem, Műszaki és Humántudományok Tanszék Marosvásárhely, Románia mgyongyi@ms.sapientia.ro 2016, őszi félév Miről volt szó az elmúlt előadáson? a Fibonacci számsorozat
Ismerkedés a Python programnyelvvel. és annak micropython változatával
Ismerkedés a Python programnyelvvel és annak micropython változatával A Python programozási nyelv története Az alapötlet 1980-ban született, 1989 decemberében kezdte el fejleszteni Guido van Rossum a CWI-n
Hálózatok építése és üzemeltetése
Hálózatok építése és üzemeltetése Python 1 Python nyelv Alapok 2 Általános jellemzők A Python programozási nyelv egy általános célú magas szintű nagyon széles körben elterjedt ingyenes program nyelv, amely
INFORMATIKA javítókulcs 2016
INFORMATIKA javítókulcs 2016 ELMÉLETI TÉTEL: Járd körbe a tömb fogalmát (Pascal vagy C/C++): definíció, egy-, két-, több-dimenziós tömbök, kezdőértékadás definíciókor, tömb típusú paraméterek átadása alprogramoknak.
Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r
Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. február 18. Minimum és maximumkeresés u s i n g n a m e s p a c e s t d ; i n t main ( ) { c o u t
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
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
1. Egészítsük ki az alábbi Python függvényt úgy, hogy a függvény meghatározza, egy listába, az első n szám faktoriális értékét:
Az írásbeli vizsgán, az alábbiakhoz hasonló, 8 kérdésre kell választ adni. Hasonló kérdésekre lehet számítani (azaz mi a hiba, egészítsük ki, mi a függvény kimeneti értéke, adjuk meg a függvényhívást,
van neve lehetnek bemeneti paraméterei (argumentumai) lehet visszatérési értéke a függvényt úgy használjuk, hogy meghívjuk
függvények ismétlése lista fogalma, használata Game of Life program (listák használatának gyakorlása) listák másolása (alap szintű, teljes körű) Reversi 2 Emlékeztető a függvények lényegében mini-programok,
6. fejezet: Ciklusok
6. fejezet: Ciklusok Mint a nyelvekben általában, itt is léteznek ciklusok. Az alapvető három ciklus-típus: elöltesztelő, hátultesztelő és számláló. Lássuk ezeket sorban! Elöltesztelő = while. A while
Bevezetés a Python programozási nyelvbe
Bevezetés a Python programozási nyelvbe 8. Gyakorlat modulok random számok (utolsó módosítás: 2017. aug. 3.) Szathmáry László Debreceni Egyetem Informatikai Kar 2017-2018, 1. félév Modulok Amint a programunk
PYTHON. Avagy hosszú az út a BioPythonig
PYTHON Avagy hosszú az út a BioPythonig Miért a Python? Mert ez áll a legközelebb az ember által beszélt nyelvhez. Mert ez a leggyorsabb az ismert script nyelvek közül Mert rengeteg modul érhető el hozzá
3 A C programozási nyelv szintaktikai egységei
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
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
Alkalmazott modul: Programozás 4. előadás. Procedurális programozás: iteratív és rekurzív alprogramok. Alprogramok. Alprogramok.
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás 4. előadás Procedurális programozás: iteratív és rekurzív alprogramok Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
Programozás I. Matematikai lehetőségek Műveletek tömbökkel Egyszerű programozási tételek & gyakorlás V 1.0 OE-NIK,
Programozás I. Matematikai lehetőségek Műveletek tömbökkel Egyszerű programozási tételek & gyakorlás OE-NIK, 2013 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk
Programozás alapjai 5. gyakorlat Vezérlési szerkezetek egymásba ágyazása
Programozás alapjai 5. gyakorlat Vezérlési szerkezetek egymásba ágyazása 1. feladat: Eldönteni egy számról, hogy pozitív, negatív vagy 0. Próbálja megoldani a feladatot switch szerkezettel is. Mikor használható
Mintavé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
A Python programozási nyelv
A Python programozási nyelv Takács Gábor Széchenyi István Egyetem Matematika és Számítástudomány Tanszék 1 / 1 Jellemzők + értelmezett nyelv + típusai dinamikusak + szintaxisa tömör, elegáns
Objektumorientált Programozás III.
Objektumorientált Programozás III. Vezérlési szerkezetek ismétlés Matematikai lehetőségek Feladatok 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő
2018, Diszkre t matematika. 8. elo ada s
Diszkre t matematika 8. elo ada s MA RTON Gyo ngyve r mgyongyi@ms.sapientia.ro Sapientia Egyetem, Matematika-Informatika Tansze k Marosva sa rhely, Roma nia 2018, o szi fe le v MA RTON Gyo ngyve r 2018,
Programozási segédlet
Programozási segédlet Programozási tételek Az alábbiakban leírtam néhány alap algoritmust, amit ismernie kell annak, aki programozásra adja a fejét. A lista korántsem teljes, ám ennyi elég kell legyen
Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 2. előadás
Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606 Dr. Bécsi Tamás 2. előadás Console I/O bővebben Lásd mintaprogram 2015.09.21. Számítástechnika I. 2. Előadás 2 Számábrázolásról
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
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
Programozá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
Bevezetés a programozásba
Bevezetés a programozásba 1. Előadás Bevezetés, kifejezések http://digitus.itk.ppke.hu/~flugi/ Egyre precízebb A programozás természete Hozzál krumplit! Hozzál egy kiló krumplit! Hozzál egy kiló krumplit
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
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
INFORMATIKA tétel 2019
INFORMATIKA tétel 2019 ELIGAZÍTÁS: 1 pont hivatalból; Az 1-4 feladatokban (a pszeudokód programrészletekben): (1) a kiír \n utasítás újsorba ugratja a képernyőn a kurzort; (2) a / operátor osztási hányadost
Programozá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
file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>
I. Alapok Interaktív shell-ben vagy shell-scriptben megadott karaktersorozat feldolgozásakor az első lépés a szavakra tördelés. A szavakra tördelés a következő metakarakterek mentén zajlik: & ; ( ) < >
Programozás alapjai. 2. előadás
2. előadás Általános Informatikai Tanszék A számítógépes feladatmegoldás eszközei Adatok (Amiken utasításokat hajtunk végre) Utasítások (Amiket végrehajtunk) Program struktúra Adatok Konstans (a programon
Szerző. Varga Péter ETR azonosító: VAPQAAI.ELTE Email cím: Név: vp.05@hotmail.com Kurzuskód:
Szerző Név: Varga Péter ETR azonosító: VAPQAAI.ELTE Email cím: vp.05@hotmail.com Kurzuskód: IP-08PAEG/27 Gyakorlatvezető neve: Kőhegyi János Feladatsorszám: 20 1 Tartalom Szerző... 1 Felhasználói dokumentáció...
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
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
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,
// keressük meg a legnagyobb faktoriális értéket, ami kisebb, // mint százmillió
BME MOGI Gépészeti informatika 3. 1. feladat Végezze el a következő feladatokat! Kérjen be számokat 0 végjelig, és határozza meg az átlagukat! A feladat megoldásához írja meg a következő metódusokat! a.
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,
Bevezetés a programozásba. 6. Előadás: C++ bevezető
Bevezetés a programozásba 6. Előadás: C++ bevezető ISMÉTLÉS PLanG features Utasítások Értékadás, KI:, BE: Programkonstrukciók Elágazás Ciklus Típusok Egész, valós, logikai, szöveg, karakter, fájl Típuskonstrukciók
Algoritmizá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
BABEŞ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR BBTE Matek-Infó verseny 1. tételsor INFORMATIKA írásbeli. A versenyzők figyelmébe:
BABEŞ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR BBTE Matek-Infó verseny 1. tételsor INFORMATIKA írásbeli A versenyzők figyelmébe: 1. A tömböket 1-től kezdődően indexeljük. 2. A rácstesztekre
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.
C 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
Kifejezések. Kozsik Tamás. December 11, 2016
Kifejezések Kozsik Tamás December 11, 2016 Kifejezések Lexika Szintaktika Szemantika Lexika azonosítók (változó-, metódus-, típus- és csomagnevek) literálok operátorok, pl. + zárójelek: (), [], {},
Matematikai programok
Matematikai programok Mátrixalapú nyelvek MatLab Wettl Ferenc diái alapján Budapesti M szaki Egyetem Algebra Tanszék 2017.11.07 Borbély Gábor (BME Algebra Tanszék) Matematikai programok 2017.11.07 1 /
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,
2019, Funkcionális programozás. 2. el adás. MÁRTON Gyöngyvér
Funkcionális programozás 2. el adás Sapientia Egyetem, Matematika-Informatika Tanszék Marosvásárhely, Románia mgyongyi@ms.sapientia.ro 2019, tavaszi félév Mir l volt szó? Követelmények, osztályozás Programozási
10. gyakorlat Struktúrák, uniók, típusdefiníciók
10. gyakorlat Struktúrák, uniók, típusdefiníciók Házi - (f0218) Olvass be 5 darab maximum 99 karakter hosszú szót úgy, hogy mindegyiknek pontosan annyi helyet foglalsz, amennyi kell! A sztringeket írasd
Komputeralgebra Rendszerek
Komputeralgebra Rendszerek Programozás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. február 23. TARTALOMJEGYZÉK 1 of 28 TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Értékadás MAPLE -ben SAGE -ben 3
Vezérlési szerkezetek. Szelekció Ciklusok
Vezérlési szerkezetek Szelekció Ciklusok Szelekciós vezérlés A program egy feltétel teljesülése alapján választja ki, hogy mely műveleteket hajtsa végre. Alakja: if ( feltétel ) { műveletek, ha feltétel
I. ALAPALGORITMUSOK. I. Pszeudokódban beolvas n prim igaz minden i 2,gyök(n) végezd el ha n % i = 0 akkor prim hamis
I. ALAPALGORITMUSOK 1. Prímszámvizsgálat Adott egy n természetes szám. Írjunk algoritmust, amely eldönti, hogy prímszám-e vagy sem! Egy számról úgy fogjuk eldönteni, hogy prímszám-e, hogy megvizsgáljuk,
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
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 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
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
BABEŞ-BOLYAI TUDOMÁNYEGYETEM MATEMATIKA-INFORMATIKA KAR Felvételi verseny - minta Informatika írásbeli
BABEŞ-BOLYAI TUDOMÁNYEGYETEM MATEMATIKA-INFORMATIKA KAR Felvételi verseny - minta Informatika írásbeli A versenyzők figyelmébe: 1. Minden tömböt 1-től kezdődően indexelünk. 2. A rácstesztekre (A rész)
A függvény kód szekvenciáját kapcsos zárójelek közt definiáljuk, a { } -ek közti részt a Bash héj kód blokknak (code block) nevezi.
Függvények 1.Függvények...1 1.1.A függvény deníció szintaxisa... 1..Függvények érték visszatérítése...3 1.3.Környezettel kapcsolatos kérdések...4 1.4.Lokális változók használata...4 1.5.Rekurzív hívások...5.kód
Alkalmazott modul: Programozás. Programozási tételek, rendezések. Programozási tételek Algoritmusok és programozási tételek
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás, rendezések 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok és programozási tételek
HTML. Ismerkedés a JavaScripttel. A JavaScript lehet ségei. A JavaScript kód helye. Önálló JavaScript fájlok
HTML Ismerkedés a JavaScripttel webprogramozó A weblapokat HTML nyelven készíthetjük el. A HTML egyszer leírónyelv, nem alkalmas válaszolni a felhasználóknak, nem tud döntéseket hozni, nem tud végrehajtani