Programozás alapjai, programtervezés

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

Download "Programozás alapjai, programtervezés"

Átírás

1 Programozás alapjai, programtervezés Mûszertechnika Oktatás Kft. Összállította: Kertész György tanfolyami jegyzete alapján Kovalcsik Géza 1107 Budapest Szállás u. 21 Telefon: Tel/Fax: Levélcím: 1475 Budapest Pf. 167

2 Ezúton is szeretném megköszönni Kertész Györgynek a segítségét, melyben hozzájárult ahhoz, hogy az Excel programozása könyv CD mellékletében közreadjam az általa készített Programozás alapjai, programtervezés címû jegyzet kivonatát. Ugyanitt szeretném köszönetemet nyilvánítani a Mûszertechnika Oktatás Kft-nek is. A jegyzet a Mûszertechnika Oktatás Kft tulajdona. Ennek megfelelõen bármilyen módon felhasználni akár az egészet, akár egyes részleteit csak az Õ hozzájárulásukkal lehet.

3 Bevezetés Elsõként gondoljuk át, hogy mi is valójában egy program? Egyáltalán mit jelent a program szó? Használjuk ezt a szót a napi társalgásban is. Például így: ez, vagy az a rendezvény egy jó program volt. Vagy máskor így: mi lesz a vasárnapi program? Mi volt a közös ebben a két mondatban? Az, hogy az esemény, ami adott helyen történik és meghatározott ideig tart, programnak neveztünk. Persze ez még nem elegendõ ahhoz, hogy valamit programnak tekintsünk. Mindkét esetben sok külsõ tényezõtõl függött az, hogy a program hogyan zajlott. Nevezzük tehát programnak azt az adott helyen és idõben meghatározott eseményt vagy eseménysorozatot, ami a külsõ tényezõket figyelembe véve, esetenként más-más módon folyhat le. A számítógép egy programozható eszköz, ami a megfelelõ programok nélkül nem képes mûködni. A számítógép programja is egy adott helyen a számítógépünkön, adott idõben a program indításától kezdve, a környezeti változásokat a megfelelõ pillanatban kiértékelve a körülmények figyelembevételével, alkalmanként máshogy folyik. A számítógép programok a számítógépet, annak központi egységét vezérlik. A vezérlés eszközei csak olyanok lehetnek, amiket a számítógép ki tud értékelni. A körülmények kiértékelésének, bár más-más programnyelvrõl legyen is szó, azonos módjai vannak, hiszen a kiértékelést minden esetben a számítógép végzi. Ez teszi lehetõvé azt,

4 hogy egy programot úgy tervezhessünk meg, hogy elõbb elkészítjük a program tervét, és utána választunk programnyelvet. Egy jó tervnek bármelyik programnyelven megvalósíthatónak kell lennie. Az egyes programnyelveket egy-egy feladatkör megoldására tervezték. A nyelv megválasztása így nem teljesen mindegy. Ez a gondolat nem az elõzõ állítás tagadása, csak egyszerûen azt jelenti, hogy a szerszámokat arra használjuk, amire kitalálták. Olyan ez, mint amikor egy szöget a csavarhúzó fejével szeretnénk a falba verni. Ha elég nagy a csavarhúzó, akkor a mûvelet valószínûleg sikerülni fog, de gondolom mindenki inkább kalapácsot fog használni. A mi esetünkben nem kérdés a nyelv megválasztása Visual Basic for Application, de a tervezés során nem a nyelv ismerete lesz a legfontosabb tudnivalónk. A könyvben már láttunk egy lehetséges utat a program megtervezésére és megvalósítására. Ha komolyan foglalkozunk programok készítésével, akkor minden esetben a feladat megfogalmazása és megtervezése fogja meghatározni munkánk eredményét. Ez a melléklet elsõsorban azoknak szól, akiknek még nincs gyakorlatuk összetett programok készítésében, de a könyv olvasása felkeltette érdeklõdésüket ez iránt a szép alkotó munka iránt.

5 Feladatmegoldás A megvalósításra szánt programozási feladatok során találkozunk gyorsan, egyszerûen átlátható feladatokkal, és olyanokkal, melyeknél már a megoldandó probléma megértése is nehéz. Az elsõ esetben csak akkor gondolunk programozásra, ha valamilyen mûveletsort gyakran hajtunk végre. Ilyenek a statisztikai feldolgozások és az adminisztratív feladatok többsége. A második esetben a feladat bonyolultabb, megoldása sok külsõ feltételtõl függhet. E körbe tartoznak a tudományos, az ipari tervezési és irányítási feladatok. A valóságban elõforduló esetek mindegyikére nem lehet példát adni. Mit kezdhetünk az egyszerû adatokkal dolgozó, de sok és sokféle eredményt adó alkalmazásokkal, melyek adminisztratív területen is sûrûn elõfordulnak, vagy a másik oldalról azokkal, melyek bonyolult adathalmazokból egyszerû következtetéseket vonnak le? Be kell látnunk, hogy a feladatokat nem válogathatjuk a fenti egyszerûséggel. Észrevehetünk azonban egy fontos szempontot: minden esetben adatokról és eredményekrõl beszéltünk. Szerencsésebb megközelítés, ha ezek alapján gondolkodunk. Egy program tervezése során a feladatot két kérdéssel közelítjük meg: Mit szeretnék eredményként kapni? és Milyen adatokból állítható elõ a kívánt eredmény? A számítástechnika fogalmaival: a program a bemeneti (input) adatokból egy meghatározott utasítássor végrehajtásával (procedure) létrehozza a kimeneti (output) adatokat. Az adatok beadásától az eredmény megjelenéséig nekünk kell meghatároznunk a megfelelõ lépéseket.

6 Azt a lépéssorozatot, ami a bemeneti adatokból létrehozza az eredményt, algoritmusnak nevezzük. A programozási feladatokat minden esetben felbonthatjuk az adatbeolvasás, feldolgozás és eredmény megjelenítése részekre. Erre a felbontásra gyakorlatilag mindig lehetõségünk van. Még olyan elsõ látásra nehezen ide sorolható esetekben is, mint például egy ébresztõóra program, melyben a bemeneti adat egyrészt az idõ múlása, másrészt a beállított ébresztési idõ, s ahol a kimenet az eltelt idõ jelzése, és az ébresztés. Arra a kérdésre, hogy mitõl lesz egy feladat egyszerû, vagy bonyolult, szintén nem lehet rávágni a nyilvánvalónak tûnõ választ. Sok rosszálmú programozó köszönheti kínjait a tervezéskori hibás megközelítésnek. Az egyszerû feladat (ahol a bemenetbõl egyszerûen alakítható ki a kimenet) is lehet nehezen megoldható, ha akár a kapok ; akár az adok kérdésre nem tudjuk a megfelelõ választ meghatározni. Régi tapasztalat, hogy a számítógépes programtól várt kimeneti eredménynél csak a bemeneten rendelkezésre álló adatokról tudunk nehezebben információt szerezni. Nem is az a baj, hogy a majdani felhasználó ne mondaná el készségesen a válaszokat, hanem az, hogy nehéz kiválogatni a kívánt kimenethez szükséges bemeneti adatokat. Sokféle bemeneti adat állhat rendelkezésre, de nem feltétlenül szükséges mindegyik, illetve egyik származhat a másikból. Nagyon fontos, hogy meg tudjuk határozni a szükséges és elégséges bemeneti adatok körét. Erre csak a kimeneti igények ismeretében van lehetõségünk. Tudnunk kell jól megfogalmazni a kérdéseket, és jól kiértékelni a válaszokat. A fenti probléma megoldása általában papíron a szervezõ gondja. Az életben persze ez sem ilyen egyszerû. Mindenképpen ismernünk kell a feladatmegoldás ilyen értel-

7 mû elõkészítését, hiszen másképp nem tudnánk értelmezni a szervezõ által megadott adatokat. Nem is beszélve azokról az esetekrõl, amikor a szervezési feladatok is a programozóra hárulnak. Foglaljuk össze, a fentiek alapján mit is nevezhetünk feladatmegoldásnak: a szükséges kimeneti adatok megfogalmazása után meghatározzuk az ezek elõállításához szükséges bemeneti adatokat, majd ezek alapján leírjuk, hogy a bemenetbõl milyen átalakítással kapjuk meg a kimenetet. Ezt a tervezési módszert az angol nyelvû szakirodalom az Input, Procedure és a Output szavak kezdõbetûinek az összeolvasásával IPO módszernek nevezi. A programkészítés lépései A feladat meghatározása, specifikáció A specifikáció egy olyan leírás, amely rögzíti a feladattal szemben támasztott igényeket, követelményeket. Ebben meg kell határozni azt, hogy mi a feladat, azt milyen környezetben kell megvalósítani, milyen bemenettel rendelkezünk és milyen kimenetet, eredményt várunk el a programtól. A specifikáció minõsége, korrektsége alapvetõen meghatározza a további munka sikerét. A hiányos feladat-meghatározás alapján készített

8 programról általában csak a program tesztelése során az ellenõrzéskor, vagy a program használatbavételekor derül ki, hogy nem azt teszi, amit vártunk tõle. A feladat meghatározását a programozó általában készen kapja. Ez elsõ hallásra azt jelenthetné, hogy a programozó nem felelõs annak hibáiért. Lehet így gondolkozni, de nem célravezetõ. A programozónak rendelkeznie kell annyi rálátással az adott területre, hogy a nem kellõen pontos, vagy feltételezhetõen hiányos részekre, rá tudjon kérdezni. Sokszor arra is szükség lehet, hogy egyes részleteket önállóan dolgozzon ki. Vagyis a feladat meghatározásának egy párbeszédnek kell lennie a megrendelõ és a program írója között. A feladat meghatározása A feladatok meghatározása során körültekintõen kell eljárnunk. Fel kell becsülni a célokat és lehetõségeket. Itt még azt is el kell döntenünk, hogy a feladat egyáltalán megvalósítható vagy nem. A feladatot a következõ szempontok szerint fogalmazzuk meg: A megfogalmazás legyen teljes, érthetõ, egyértelmû, pontos, tömör, szemléletes,

9 elõrelátó, jól felépített, tagolt. Ha az input, procedure, output tervezési módszert követjük, akkor a bemeneti és kimeneti adatokkal kapcsolatban a következõ szempontokat vegyük figyelembe: Input adatok: Mik az input adatok? Milyen a beviteli formájuk (adattípus)? Mik a bevihetõ értékek? Az adatbevitelt hogyan kell befejezni? Milyen speciális megszorítások vannak? Milyen kapcsolatok állnak fenn a beviendõ adatok között? Output adatok: Milyen adatokat kell megõrizni? Milyen formában kell megõrizni az adatokat? Mennyi adatról van szó? Melyik adatokat kell megjeleníteni? Hogyan állíthatjuk elõ ezeket az adatokat?

10 Tervezés A program egy idõben zajló folyamat leírása. Azt várjuk el tõle, hogy a feladatot oldja meg, illetve a feladatban kitûzött célokat valósítsa meg. A specifikációból, vagy más szóval a feladat-meghatározásából, a forrásprogram, mint a fordítás alapjául szolgáló szöveg, nem egyszerû begépeléssel jön létre. A feladatot meg kell értenünk, el kell képzelnünk a megoldás menetét, majd részletesen ki kell dolgoznunk. E folyamatban helyezkedik el a tervezés, mint olyan lépés, mely leegyszerûsíti és pontossá, hatékonnyá teszi a programkészítés folyamatát. A tervezés során arra törekszünk, hogy az emberi gondolkodással, emberi nyelven elképzelt megoldást olyan világos egyszerû szerkezetekkel fogalmazzuk meg melyek könnyen megfeleltethetõk lesznek a majdani programlépéseknek. A jó programterv nem kötõdik programnyelvhez, számítógéptípushoz, általános fogalmakkal dolgozik. Az egyes feladatok megoldásához meg kell határoznunk a megfelelõ algoritmust. A megoldandó feladatot bontsuk kisebb részekre. Kevés ember van, aki egy nagyobb feladatot egy lépésben meg tud oldani. Egy almát sem eszünk meg egyetlen harapással. A feladat megoldása szempontjából így kisebb jobban áttekinthetõ részekkel kell dolgoznunk. Hogyan bontsuk részekre a programozási feladatainkat? Arra kell törekednünk, hogy a részek minél kevésbé függjenek egymástól. Tehát az egyes részek önállóan is hasz-

11 nálhatóak legyenek. Ez a fejlesztési szemlélet nem csak a tervezés során teszi érthetõvé a programot, hanem késõbb könnyebb lesz a programot karbantartani is. Kódolás A kódolás az a lépés, melyet a kívülálló általában programozási tevékenységnek tart, hiszen azt látja, hogy megszállott emberek püfölik a számítógép billentyûzetét és nem figyelnek a külvilágra. Itt készül el a terv alapján a forrásprogram, az adott nyelv szabályai szerinti és annak eszközkészletére hivatkozó kód, melyet lefordítva jutunk a gépi kódú programhoz. Abban, hogy ez a fázis milyen sokáig tart, mennyire hatékony, nagy szerepe van az elõzõ lépések jó megoldásának. A rossz tervbõl szinte soha nem lesz jó program, míg a jó terv alapján hibátlan, jószerével csak elírásokat tartalmazó program készülhet. Sikerélményt nem az okoz, ha több napi fúrás-faragás után rájövünk a hibára, hanem az, amikor a kódolás gyors, egyszerû, a begépelt program a fordítás után úgy mûködik, ahogy elképzeltük. Régi mondás, hogy csak az lehet jó, ami szép is. Ha ezt gondolatmenetünk tisztaságára, megoldásaink egyszerûségére, követhetõségére, átláthatóságára értjük, elhihetjük: minél többet fúrjuk-faragjuk a programot, annál több rejtett hibát fog tartalmazni, annál nehezebb lesz igazán kijavítani. Murphy szerint: az elsõ hibátlan programot még írják. A kódolás eredménye a program maga. Ezt forráslistának nevezzük.

12 A forráslista akkor jó, ha: pontosan a programterv alapján készült, áttekinthetõ, olvasható, tömör és egyértelmû magyarázó megjegyzéseket tartalmaz. Tesztelés A munka során rendszeresen ellenõrizzük megoldásaink helyességét. Ilyen ellenõrzéseket nemcsak a kódolás során végzünk, hanem már a terv lépéseit is tesztelhetjük. Nyilvánvaló, hogy a terv elolvasásával is megállapítható, mi fog történni. Az ilyen ellenõrzéseket asztali- vagy száraztesztnek nevezzük. A programot természetesen mûködés közben is ki kell próbálnunk. Az ellenõrzés körülményeit gondosan meg kell határoznunk. Nem elég a mûködésnek megfelelõ (rendeltetésszerû) használatnak kitennünk. Gyakori hiba, például, ha a program egy számra vár, de a programban nem ellenõrizzük, hogy a felhasználó valóban számot írt-e be? A programozónak nem szabad csak azt ellenõrizni, hogy programja a számokra hogyan reagál, hiszen a felhasználó szöveget is beírhat, amitõl a programnak nem szabad megbolondulnia. Különös gondosságot igényel, hogy a programban elõforduló döntéseket minden szélsõ helyzetre megvizsgáljuk.

13 A fejlesztés lezáró ellenõrzése lehet az úgynevezett béta-teszt, ami azt jelenti, hogy a kész programot kipróbálásra átadjuk egy vagy több majdani felhasználónak, akik tapasztalataikat, a felfedezett hiányosságokat elmondják nekünk. Ilyen teszt csak a nagyobb méretû és felhasználói körû programoknál szokásos. A tesztelés eszköze a nyomkövetés. A korszerû fejlesztõrendszerek, így a Visual Basic for Application is, lehetõvé teszik a program speciális, lépésenkénti futtatását, és közben az egyes adatok, változók értékeinek a figyelését. A figyelmetlenségbõl, átgondolatlanságból eredõ hibák nagy része kiszûrhetõ így. Gyakran használjuk e lépés megnevezésére az angol debugging szót, ami szó szerint poloskátlanítást jelent. A tesztelés tulajdonképpen nem más, mint egy próbafuttatás. A próbafuttatás alatt sok hibáját fedezhetjük fel a megírt programnak. A tesztadatokat úgy kell összeállítani, hogy minden lehetséges értéket felvegyenek. A program tesztelésekor a következõkre kell figyelemmel lennünk: A program pontosan úgy mûködik-e mint azt a feladat meghatározásában leírtuk? Ne lehessen a programot elrontani. Elég hatékony-e? Biztonságos-e a használata? Felhasználóbarát-e? Mennyire szolgálja ki a felhasználó igényeit? A külsõ megjelenése elég esztétikus?

14 Sehol nem idegesítõ? Mennyire illeszkedik a szabványokhoz, szokásokhoz? Dokumentáció A program dokumentációja több részbõl áll. Egyik részét képezi a fejlesztéskor létrehozott írásos anyag: a specifikáció, a terv, a programkód, az abba beírt megjegyzések és a tesztek kiinduló adatai, eredményei. Másik része a felhasználáshoz szükséges segédanyag: installációs leírás, kezelési utasítás, technikai referencia. A fejlesztési dokumentáció minõsége (érthetõség, olvashatóság) fontos a kivitel, a hibakeresés és a késõbbi fejleszthetõség szempontjából is. Célszerû a program forráskódját is öndokumentáló módon elkészíteni. Ez azt jelenti, hogy a szöveget ellátjuk magyarázó megjegyzésekkel, illetve a befoglalt részeket beljebb tabuláljuk, az egyes részeket világosan elhatároljuk stb. Összefoglalóan: betartunk olyan szerkesztési konvenciókat, amelyek lehetõvé teszik, hogy a programkód szövegét bárki elolvasva megérthesse azt (akár magunk is egy késõbbi alkalommal).

15 A fejlesztõi dokumentációnak a következõket kell tartalmaznia: A feladat meghatározása. A programterv. A forrásprogram. A kész program forrás kódú listája. Tesztadatok listája. A felhasználói dokumentációnak más feladatokat kell kielégítenie, mint a fejlesztõi dokumentációnak. A felhasználói dokumentációnak a következõ részekbõl kell állnia: A feladat leírása, vagyis mire használható a program. Milyen legkisebb hardver konfiguráción használható. Milyen legkisebb szoftver környezetben használható. Hogyan lehet használatba venni. Telepítés. Hogy lehet elindítani a programot? A program használatának részletes leírása. Hibalehetõségek, hibaüzenetek magyarázata, útmutatás, teendõk leírása.

16 A programnyelvek elemei A számítógépes programok adatokkal, vezérlésekkel dolgoznak, így fontos ismernünk ezek típusait. Az adat fogalmáról megállapítottuk, hogy a körülöttünk lévõ dolgok bármely mérhetõ és nem mérhetõ jellemzõjét így nevezhetjük, ha azt egyértelmûen le tudjuk írni. Az információ fogalmával is találkoztunk: az adatokból levont következtetések eredménye. Ez utóbbi a számítógép számára ugyanúgy jelenik meg, mint az eredeti adat, ezért most nem fogunk közöttük különbséget tenni, egyszerûen mindkettõt adatnak nevezzük. A számítógépeken, függetlenül a programnyelvtõl, az adatokat különbözõ formában tároljuk. Ahhoz, hogy egy programot megvalósítsunk, ezeket az adatformákat ismernünk kell. Adattípusok Az adatokat a program futása alatt változókban õrizzük meg az éppen futó program számára. A változó nem más mint a számítógép operatív memóriájában egy névvel ellátott hely, ami alkalmas az adatok tárolására. Az egyes helyfoglalásokat deklarálással valósíthatjuk meg. Az egyes helyfoglalások, deklarálások alkalmával azt is meghatározhat-

17 juk, hogy az adatot milyen formában kívánjuk megõrizni. Ezzel annyi helyet fogunk lefoglalni az adataink számára, amennyire szükség van. A jegyzetben a Visual Basic for Application nyelvben használható változótípusokat mutatjuk be, de a felsorolt típusokat más programnyelvekben is meg fogjuk találni. Numerikus típusok Számszerû értékek ábrázolására szolgálnak. Megkülönböztetünk egész és valós típusokat. Az egész típusok nevükbõl adódóan egész számokat ábrázolhatnak, míg a valós típusok valós, azaz egész és tört számokat. Mindkét esetben beszélhetünk az ábrázolható számok intervallumáról (a legkisebb és a legnagyobb érték között). Az egész típusoknál a pontosság kérdése nem vetõdik fel, annál inkább érdekes a valós típusoknál. Az egész típusokat tárolási módjuk és méretük alapján osztályozhatjuk.

18 Egészszámok: adattípus hossza intervallum Byte 1 byte 0-tól 255-ig Integer 2 byte tól ig Long 4 byte tól ig Valós számok: Single 4 byte Negatív számok: -3,402823E38-tól 1,401298E-45 Nulla Pozitív számok: 1,401298E-45-tõl 3,402823E38-ig Double 8 byte Negatív számok: -1, E308-tól -4, E-324-ig Nulla Pozitív számok: 4, E-324-tól 1, E308-ig

19 Currency 8 byte ,5808-tól ,5807-ig Date 8 byte 100-január 1-tõl 9999-december 31-ig Szöveges típusok A program a szöveges adatokat éppúgy képes feldolgozni, azokkal mûveleteket végezni, mint a számértékekkel. A Visual Basic for Application programnyelvben kétféle String típusú változót deklarálhatunk. Fix hosszúságút és változó hosszúságút. A változó hosszúságú szöveges változó hossza körülbelül 2 milliárd karakter tárolását teszi lehetõvé. A fix hosszúságú szöveges változók hossza maximum 64 kbyte lehet. Egy tíz karakter hosszúságú szöveg befogadására alkalmas változót a következõ módon kell deklarálnunk: Dim Szoveges As String *10

20 Logikai típus A számítástechnika szinte legfontosabb adattípusa, bár ezt elsõ látásra nem is gondolnánk. Logikai típusú adat, kell minden döntéshez, ami a program mûködését befolyásolja. A logikai típus tárolásához 1 bit szükséges, hiszen értéke csak kétféle (hamis és igaz) lehet. A kényelem (sebesség, egyszerû programozás) érdekében az IBM PC-re írt programnyelvek általában egy egész byte-ot elhasználnak egy bit helyett. A VBA két byte-ot foglal le a Boolean típusú változóknak. Az érték True vagy False lehet. Mutató típus A mutató típus a memória egy címét tárolja, azaz egy címre mutat, ahol adat, objektum vagy alprogram található. A VBA nyelvben objektumokra hivatkozhatunk mutató típusú változóval. Az adattípus deklarálása során az Object kulcsszót használjuk. Mutató típusú változónak a Set paranccsal adhatunk értéket. Erre példa a következõ programrészlet: Dim Lap As Object Set Lap = Worksheets(1)

21 A Set utasítás segítségével a Worksheets(1) munkalapot elneveztük Lap névvel. A program további részeiben a Lap változóval hivatkozhatunk rámutathatunk a Worksheets(1) munkalapra. Általános adattípus Ha a program futása során egy változónak úgy adunk értéket, hogy elõre nem tudjuk annak az adattípusát, akkor a Variant változótípust használhatjuk. Adatszerkezetek Az egyedi tárolású adatok nem elégítenek ki minden igényt, hiszen sokszor fordul elõ, hogy több önálló, esetleg eltérõ típusú adat képez olyan egységet, amit a gépi feldolgozás során is szeretnénk megõrizni. Az adattípusok adatszerkezetekbe szervezhetõk, s azok újabb szerkezetekbe ágyazódhatnak. Mindig a program igényeihez legjobban alkalmazkodó szerkezeteket alakítsunk ki. A legalapvetõbb esetekre a programnyelvek általában kínálnak megoldást:

22 A tömb azonos típusú, méretû adatok ismétlõdése a memóriában, index-szel, az adat tömbön belüli sorszámával hivatkozhatunk a egy-egy elemére. Erre a könyvben a változókról szóló részben találunk példákat. Rekord típusú változóban eltérõ típusú, méretû adatok együttesét tárolhatjuk. Ezeket a változótípusokat nekünk kell meghatároznunk. A VBA nyelvben erre a TYPE utasítást használjuk. Az így meghatározott változók a felhasználó típusú változók. Type felhaszntípus elemnév As típusnév [ elemnév As típusnév] változók felsorolása... End Type A Type utasítás argumentumai a következõk: felhaszntípus A felhasználó által definiált típus neve. Erre az általános változó elnevezés szabályai érvényesek. elemnév A felhasználó által definiált típus elemének neve. Erre az általános változó elnevezés szabályok érvényesek

23 típusnév Az elõbb felsorolt típusok egyike lehet (típusnév nem lehet objektum adattípus). Felhasználói változótípust a következõ leírás szerint határozhatunk meg: Type HelysegAdat HelysegKod (1 To 100) As Integer Orszag As String * 30 End Type A felhasználó által meghatározott változótípust a továbbiakban ugyanúgy használhatjuk egy-egy változó típusának a megjelölésére, mintha a VBA beépített adattípusa lenne: Dim Ibafa As Helysegadat Az elõzõ példában a HelysegAdat tartalmazza a Helysegod statikus tömböt, és az Orszag stringet. Az Ibafa rekordnak ugyanaz a szerkezete, mint a HelysegAdatnak. A következõ példában a Type utasítással egy 3 elemû, a felhasználó által definiált típust hozunk létre, ennek segítségével megadunk egy ilyen típusú változót, és minden elemhez hozzárendelünk adatokat.

24 Type TesztRekord VevoSzam As Long VevoNev As String * 36 Hitel As String * 24 End Type Dim Vevo As TesztRekord Vevo.VevoSzám = Val(InputBox$( Írja be a vevõ számát: )) Vevo.VevoNév = InputBox$( Írja be a vevõ nevét: ) Vevõ.Hitel= InputBox$( Írjon be hitelezési információt: ) Utasítások típusai A programokban használt utasításokat az adott nyelvtõl függetlenül csoportosíthatjuk: értékadás vezérlésátadás direkt: ugrás, alprogramhívás, visszatérés feltételes: elágazás, ciklus egyéb

25 Vezérlõszerkezetek A program mûködését, az utasítások végrehajtási sorrendjét befolyásoló utasításokat összefoglalóan vezérlésátadó utasításoknak nevezzük. Magyarázzuk meg a kifejezést: Az utasítások azt mondják meg a processzornak, hogy milyen adatokkal, mit kell tennie, azaz vezénylik, vezérlik a processzor mûködését. A processzor az utasításokat sorban, egymás után hajtja végre. Vezérlésátadásról akkor beszélünk, amikor ettõl az automatizmustól eltérünk. A vezérlésátadó utasítások azt határozzák meg, melyik programrészlet utasításai vezérlik ezentúl a processzort. Feltételes vezérlésátadó utasításnak azokat az utasításokat nevezzük, melyek valamilyen feltétel teljesülésétõl függõen hajtják végre a program egyik vagy másik utasítássorozatát. A feltétel vizsgálata során egy vagy több változó vagy objektum állapotának pillanatnyi értékét vizsgáljuk. A vizsgálat eredménye minden esetben egy logikai érték. A modern struktúrált programozásban a feltételes vezérlésátadó utasítás és az általa végrehajtott, vagy éppen kikerült utasítások egymástól elválaszthatatlanok, egy vezérlõszerkezetet alkotnak. A vezérlõszerkezeteket két fõ és több alcsoportba oszthatjuk:

26 Elágazások Szelekciók egyágú: a vizsgált feltétel igaz értéke esetén a befoglalt utasítás végrehajtódik, egyébként nem kétágú: a feltétel igaz és hamis értéke esetén más-más ág hajtódik végre többágú: egy kifejezés értékétõl függ, hogy melyik ág hajtódik végre, vagy az ágak külön feltétellel rendelkeznek, közülük csak egy hajtódhat végre Ciklusok Iterációk elõl tesztelõ: a ciklus elején megvizsgálja a meghatározott feltétel teljesülését. Ha a feltétel igaz, akkor végrehajtja a ciklustestbe írt utasításokat, majd újra a feltételt vizsgálja. Mindaddig ismétli a ciklustestbe írt utasításokat, amíg a feltétel igaznak bizonyul. hátul tesztelõ: A ciklustestbe írt utasításokat legalább egyszer végrehajtja, mert a ciklustest végén vizsgálja a kilépés feltételét. A ciklustestbe írt utasítások végrehajtását, akkor hagyja abba, ha feltétel igaz.

27 Összegezve A programnyelvek ugyanazokkal az eszközökkel dolgoznak, csak az egyes utasítások szintaktikája, nyelvi megvalósítása más. Vagyis más szabályok szerint kell leírni a különbözõ programnyelvek utasításait, de az építõkövek megegyeznek. Ez teszi lehetõvé a nyelvtõl független programtervezést.

28 feltétel 1 Igaz utasítás(ok) feltétel 2 Igaz utasítás(ok) Hamis Hamis A program építõelemei A program tervezése során hasznos az egyes eljárásokat valamilyen grafikus módszer segítségével ábrázolni. Ennek egy korai változata a folyamatábra. Jegyzetünkben nem ennek a megtanulása a cél, de most az egyes vezérlõszerkezetek szemléltetésére ezt használjuk. A program tevékenységeit, szerkezetét ezzel a módszerrel mindenki számára olvashatóvá tehetjük. Ezzel a módszerrel a programnyelvtõl függetlenül írjuk le a program folyamatait. feltétel n Igaz utasítás(ok) Hamis utasítás(ok) A folyamatábra elemei Folyamatábra rajzolásakor két síkidomot és összekötõ vonalakat használunk: A folyamatábrát felülrõl lefelé kell olvasni, az utasítások, feltételek felülrõl lefelé követik egymást. Ha az elágazás miatt nem a következõ utasításnál folytatódik a

29 program, akkor a vonal végére rajzolt nyílhegy után kell haladnunk, ez megkönnyíti az értelmezést. Ugyancsak kitesszük a nyílhegyeket a csomópontokba befutó vonalak végén is. Szokás jelezni az ábrázolt program vagy eljárás elejét és végét külön, lekerekített sarkú négyszögbe írt start és stop, vagy begin és end szavakkal. A start illetve begin szavakat célszerû helyettesíteni a program vagy eljárás nevével. A rajztechnika a hosszabb, bonyolultabb eljárások ábrázolására is alkalmas. Elõfordulhat, hogy a rajz méretei miatt, átláthatóságának érdekében a nagyon távoli csomópontokat összekötõ vonalakat nem rajzoljuk le, hanem végeiket kis körökbe írt számokkal jelöljük meg.

30 Vezérlõszerkezetek Ebben a fejezetben részletesen megvizsgáljuk a vezérlõszerkezetek fajtáit, azok mûködését. A folyamatábra mellett VBA nyelvû példát is láthatunk. Szelekciók feltétel Igaz Hamis Egyágú szelekció A feltétel igaz True értéke esetén az igaz ág (Then ág) utasítását vagy utasításait hajtja végre a program, egyébként ezt kihagyva a program a csomópontot követõ utasításnál folytatódik. utasítás(ok) Kétágú szelekció A feltétel igaz értéke esetén az igaz ág (Then ág) utasítása, utasításai, egyébként a hamis ág (Else ág) utasítása, utasításai hajtódik végre, majd a program a csomópontot követõ utasításnál folytatódik. feltétel igaz utasítás(ok) hamis utasítás(ok)

31 feltétel 1 Igaz utasítás(ok) feltétel 2 Igaz utasítás(ok) Hamis Hamis Többágú szelekció A többágú szelekció kétágú elágazások egymásba-ágyazásából épül fel. A vizsgálat az 1. feltétel vizsgálatával indul. Ha ez igaz, akkor a hozzátartozó utasításokat hajtja végre és a program az egész szelekciós szerkezet után folytatódik. Ha az elsõ feltétel eredménye hamis, akkor a következõ feltétel vizsgálatára kerül sor, ha ez igaz, úgy az ehhez tartozó utasítás hajtódik végre, s így tovább. Bármely feltétel igaz értéke esetén a többit már nem vizsgálja. Ha egyik feltétel sem volt igaz értékû, akkor a vezérlés az utolsó feltétel hamis ágában álló utasításhoz (n+1) kerül. Az ebben az ágban álló utasítás el is maradhat, vagyis az utolsó feltétel lehet egyágú is. feltétel n Igaz Hamis utasítás(ok) utasítás(ok)

32 Elöltesztelõ iterációk a vezérlõváltozó kezdeti értékének a beállítása feltétel Igaz utasítás(ok) vezérlõváltozó növelése Hamis For... Next típus A For... Next típusú ciklus egy vezérlõváltozó értékét rendre megnöveli, s a ciklustestben található utasításokat minden növelés után végrehajtja. A folyamat addig tart, míg a vezérlõváltozó értéke meg nem haladja a ciklus elsõ sorában meghatározott végértéket. A vezérlõváltozó értékének vizsgálata a ciklustestbe írt utasításokat megelõzi, így abban az esetben, ha a kezdõérték eleve nagyobb a végértéknél, akkor a ciklusba zárt utasítások egyszer sem kerülnek végrehajtásra. A vezérlõváltozó növelése akkor következik be, amikor a program a Next utasításra lép. Ezután visszaadja a vezérlést a For utasítást tartalmazó sornak. Itt ismét a vezérlõváltozó ellenõrzésére kerül sor. A VBA nyelvben két For Next típusú vezérlést is találunk. Az egyik vezérlõváltozója egy számértéket tartalmazó kifejezés, a másik pedig egy objektum. Az objektum típusú For Each... Next ciklus egy gyûjtemény elemeit

33 veszi sorra. Ebben az esetben a ciklust egy gyûjtemény hivatkozással határozhatjuk meg. A For Each ciklus addig ismétlõdik, amíg a gyûjtemény minden objektumát sorra nem veszi. A For... Next típusú ciklusszervezés esetén az ismétlések számát elõre meghatározzuk. Do... Loop típus A Do... Loop típusú iterációt felhasználhatjuk mind elöltesztelõ, mind pedig hátultesztelõ ciklusként. Ez csak az írás módjától függ. Ha ugyanis a Do utasítássorba írjuk a feltétel vizsgálatát, akkor elõltesztelõ ciklust feltétel iterációt alakíthatunk ki, ha pedig a Loop utasítás Igaz utasítás(ok) Hamis mellé, akkor hátultesztelõt. Ebben az esetben egy külsõ változó értékének megváltozásával vezérelhetjük a ciklusok végrehajtási számát. Természetesen a vizsgált változónak változnia kell a ciklustesten belül, különben a ciklus végtelenszer ismétlõdik meg. Az iteráció elsõ sorában a feltétel teljesülését vizsgálhatjuk úgy is, hogy akkor lépünk a ciklusba, ha a feltétel igaz (While), és úgy is hogy amíg a feltétel nem igaz (Until). Mindkét vizsgálatot a ciklus elején hajtjuk végre, így az iterációnk elõl-tesztelõ lesz.

Programtervezés. Dr. Iványi Péter

Programtervezés. Dr. Iványi Péter Programtervezés Dr. Iványi Péter 1 A programozás lépései 2 Feladat meghatározás Feladat kiírás Mik az input adatok A megoldáshoz szükséges idő és költség Gyorsan, jót, olcsón 3 Feladat megfogalmazása Egyértelmű

Részletesebben

Java programozási nyelv

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

Részletesebben

Programozás alapjai (ANSI C)

Programozás alapjai (ANSI C) Programozás alapjai (ANSI C) 1. Előadás vázlat A számítógép és programozása Dr. Baksáné dr. Varga Erika adjunktus Miskolci Egyetem, Informatikai Intézet Általános Informatikai Intézeti Tanszék www.iit.uni-miskolc.hu

Részletesebben

Webprogramozás szakkör

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

Részletesebben

Algoritmusok. Dr. Iványi Péter

Algoritmusok. Dr. Iványi Péter Algoritmusok Dr. Iványi Péter Egyik legrégebbi algoritmus i.e. IV század, Alexandria, Euklidész két természetes szám legnagyobb közös osztójának meghatározása Tegyük fel, hogy a és b pozitív egész számok

Részletesebben

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 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észletesebben

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

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

Részletesebben

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

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

Részletesebben

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

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

Részletesebben

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

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

Részletesebben

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

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

Részletesebben

A C# programozási nyelv alapjai

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

Részletesebben

Bevezetés a programozásba

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

Részletesebben

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

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

Részletesebben

A fizetendő összegből a 35 év fölötti tulajdonos 20 % kedvezményt kap.

A fizetendő összegből a 35 év fölötti tulajdonos 20 % kedvezményt kap. Elágazás Az elágazás, olyan vezérlési szerkezet, amely az utasítások egy adott csoportját attól függően hajtja végre, hogy egy adott logikai feltétel teljesül-e. Legegyszerűbb változata a kétirányú elágazás,

Részletesebben

A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai

A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai A programozás alapjai 1 1. előadás Híradástechnikai Tanszék Amiről szólesz: A tárgy címe: A programozás alapjai A számítógép részegységei, alacsony- és magasszintű programnyelvek, az imperatív programozási

Részletesebben

Algoritmizálás, adatmodellezés tanítása 6. előadás

Algoritmizálás, adatmodellezés tanítása 6. előadás Algoritmizálás, adatmodellezés tanítása 6. előadás Tesztelési módszerek statikus tesztelés kódellenőrzés szintaktikus ellenőrzés szemantikus ellenőrzés dinamikus tesztelés fekete doboz módszerek fehér

Részletesebben

ALGORITMIKUS SZERKEZETEK ELÁGAZÁSOK, CIKLUSOK, FÜGGVÉNYEK

ALGORITMIKUS SZERKEZETEK ELÁGAZÁSOK, CIKLUSOK, FÜGGVÉNYEK ALGORITMIKUS SZERKEZETEK ELÁGAZÁSOK, CIKLUSOK, FÜGGVÉNYEK 1. ELÁGAZÁSOK ÉS CIKLUSOK SZERVEZÉSE Az adatszerkezetek mellett a programok másik alapvető fontosságú építőkövei az ún. algoritmikus szerkezetek.

Részletesebben

A programozás alapjai

A programozás alapjai A programozás alapjai Változók A számítógép az adatokat változókban tárolja A változókat alfanumerikus karakterlánc jelöli. A változóhoz tartozó adat tipikusan a számítógép memóriájában tárolódik, szekvenciálisan,

Részletesebben

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

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

Részletesebben

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

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

Részletesebben

Feladat. Bemenő adatok. Bemenő adatfájlok elvárt formája. Berezvai Dániel 1. beadandó/4. feladat 2012. április 13. Például (bemenet/pelda.

Feladat. Bemenő adatok. Bemenő adatfájlok elvárt formája. Berezvai Dániel 1. beadandó/4. feladat 2012. április 13. Például (bemenet/pelda. Berezvai Dániel 1. beadandó/4. feladat 2012. április 13. BEDTACI.ELTE Programozás 3ice@3ice.hu 11. csoport Feladat Madarak életének kutatásával foglalkozó szakemberek különböző településen különböző madárfaj

Részletesebben

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter

Adatszerkezetek 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észletesebben

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. 1. Mi a programozá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. 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észletesebben

OOP 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 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észletesebben

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

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

Részletesebben

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

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

Részletesebben

AWK programozás, minták, vezérlési szerkezetek

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

Részletesebben

AZ ALGORITMUS. az eredményt szolgáltatja

AZ ALGORITMUS. az eredményt szolgáltatja ALGORITMUSOK AZ ALGORITMUS Az algoritmus problémamegoldásra szolgáló elemi lépések olyan sorozata, amely a következő jellemzőkkel bír: Véges: véges számú lépés után befejeződik, és eredményt szolgáltat

Részletesebben

Információtartalom vázlata

Információtartalom vázlata 1. Az Ön cégétől árajánlatot kértek egy üzleti portál fejlesztésére, amelynek célja egy online áruház kialakítása. Az árajánlatkérés megválaszolásához munkaértekezletet tartanak, ahol Önnek egy vázlatos

Részletesebben

Szkriptnyelvek. 1. UNIX shell

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

Részletesebben

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

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

Részletesebben

Bevezetés a programozásba. 5. Előadás: Tömbök

Bevezetés a programozásba. 5. Előadás: Tömbök Bevezetés a programozásba 5. Előadás: Tömbök ISMÉTLÉS Specifikáció Előfeltétel: milyen körülmények között követelünk helyes működést Utófeltétel: mit várunk a kimenettől, mi az összefüggés a kimenet és

Részletesebben

A digitális analóg és az analóg digitális átalakító áramkör

A digitális analóg és az analóg digitális átalakító áramkör A digitális analóg és az analóg digitális átalakító áramkör I. rész Bevezetésként tisztázzuk a címben szereplő két fogalmat. A számítástechnikai kislexikon a következőképpen fogalmaz: digitális jel: olyan

Részletesebben

A KÓDOLÁS TECHNIKAI ELVEI

A KÓDOLÁS TECHNIKAI ELVEI 1. A KÓDOLÁS FOGALMA A KÓDOLÁS TECHNIKAI ELVEI A kódolás a forrásnyelvű (pl. C#, Java) program elkészítését jelenti. Ha a megoldást gondosan megterveztük, akkor ez általában már csak rutinszerű, technikai

Részletesebben

A szerzõrõl... xi Bevezetés... xiii

A szerzõrõl... xi Bevezetés... xiii TARTALOMJEGYZÉK A szerzõrõl...................................................... xi Bevezetés...................................................... xiii I. rész A Visual Basic 2005 környezet 1. óra Irány

Részletesebben

Programozási alapismeretek 1. előadás

Programozási alapismeretek 1. előadás Programozási alapismeretek 1. előadás Tartalom A problémamegoldás lépései programkészítés folyamata A specifikáció Az algoritmus Algoritmikus nyelvek struktogram A kódolás a fejlesztői környezet 2/33 A

Részletesebben

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

7. fejezet: Mutatók és tömbök 7. fejezet: Mutatók és tömbök Minden komolyabb programozási nyelvben vannak tömbök, amelyek gondos kezekben komoly fegyvert jelenthetnek. Először is tanuljunk meg tömböt deklarálni! //Tömbök használata

Részletesebben

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

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ő

Részletesebben

Informatika tanítási módszerek

Informatika tanítási módszerek Informatika tanítási módszerek Programozás tanítási módszerek módszeres, algoritmusorientált; adatorientált; specifikációorientált; feladattípus-orientált; nyelvorientált; utasításorientált; matematikaorientált;

Részletesebben

Operációs rendszerek gyak.

Operációs rendszerek gyak. Operációs rendszerek gyak. AWK programozás Hirling Dominik Szegedi Tudományegyetem AWK AWK: a pattern scanning and processing language mintaelemző-és feldolgozó nyelv bármilyen szövegből minták alapján

Részletesebben

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

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

Részletesebben

Amortizációs költségelemzés

Amortizációs költségelemzés Amortizációs költségelemzés Amennyiben műveleteknek egy M 1,...,M m sorozatának a futási idejét akarjuk meghatározni, akkor egy lehetőség, hogy külön-külön minden egyes művelet futási idejét kifejezzük

Részletesebben

Az informatika kulcsfogalmai

Az informatika kulcsfogalmai Az informatika kulcsfogalmai Kulcsfogalmak Melyek azok a fogalmak, amelyek nagyon sok más fogalommal kapcsolatba hozhatók? Melyek azok a fogalmak, amelyek más-más környezetben újra és újra megjelennek?

Részletesebben

AWK programozás, minták, vezérlési szerkezetek

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

Részletesebben

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. 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,

Részletesebben

29. Visszalépéses keresés 1.

29. Visszalépéses keresés 1. 29. Visszalépéses keresés 1. A visszalépéses keresés algoritmusa Az eddig megismert algoritmusok bizonyos értelemben nyílegyenesen haladtak elôre. Tudtuk, hogy merre kell mennünk, és minden egyes lépéssel

Részletesebben

PROGRAMOZÁS tantárgy. Gregorics Tibor egyetemi docens ELTE Informatikai Kar

PROGRAMOZÁS tantárgy. Gregorics Tibor egyetemi docens ELTE Informatikai Kar PROGRAMOZÁS tantárgy Gregorics Tibor egyetemi docens ELTE Informatikai Kar Követelmények A,C,E szakirány B szakirány Előfeltétel Prog. alapismeret Prog. alapismeret Diszkrét matematika I. Óraszám 2 ea

Részletesebben

B I T M A N B I v: T M A N

B I T M A N B I v: T M A N Műszaki informatika IPA Tesztek+Megoldások B I v: T 2014.02.15 M A N 1/41 Ellenőrző kérdések Alapfogalmi kitérő kérdéssor IPA kérdéssor 2/41 Ellenőrző kérdések 1. 1. Melyik Neumann elv következménye a

Részletesebben

B I T M A N B I v: T M A N

B 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észletesebben

Utasítások. Excel VII. Visual Basic programozás alapok. A Visual Basic-kel megoldható feladatok típusai Objektumok, változók Alprogramok

Utasítások. Excel VII. Visual Basic programozás alapok. A Visual Basic-kel megoldható feladatok típusai Objektumok, változók Alprogramok Alkalmazott Informatikai Intézeti Tanszék MŰSZAKI INFORMATIKA Dr.Dudás László 0. Excel VII. Visual Basic programozás alapok A Visual Basic-kel megoldható feladatok típusai Objektumok, változók Alprogramok

Részletesebben

Egyszerű programozási tételek

Egyszerű programozási tételek Egyszerű programozási tételek 2. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. szeptember 15. Sergyán (OE NIK) AAO 02 2011. szeptember 15.

Részletesebben

S 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 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észletesebben

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

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

Részletesebben

Vezérlési szerkezetek

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

Részletesebben

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

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

Részletesebben

Bevezetés a programozásba I 3. gyakorlat. PLanG: Programozási tételek. Programozási tételek Algoritmusok

Bevezetés a programozásba I 3. gyakorlat. PLanG: Programozási tételek. Programozási tételek Algoritmusok Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 3. gyakorlat PLanG: 2011.09.27. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok

Részletesebben

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban OpenCL alapú eszközök verifikációja és validációja a gyakorlatban Fekete Tamás 2015. December 3. Szoftver verifikáció és validáció tantárgy Áttekintés Miért és mennyire fontos a megfelelő validáció és

Részletesebben

10. gyakorlat Struktúrák, uniók, típusdefiníciók

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

Részletesebben

Pá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 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

Java II. I A Java programozási nyelv alapelemei

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

Részletesebben

1. Alapok. #!/bin/bash

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

Részletesebben

9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum.

9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum. Programozási tételek Programozási feladatok megoldásakor a top-down (strukturált) programtervezés esetén három vezérlési szerkezetet használunk: - szekvencia - elágazás - ciklus Eddig megismertük az alábbi

Részletesebben

A PROGRAMOZÁS ALAPJAI 3. Készítette: Vénné Meskó Katalin

A PROGRAMOZÁS ALAPJAI 3. Készítette: Vénné Meskó Katalin 1 A PROGRAMOZÁS ALAPJAI 3 Készítette: Vénné Meskó Katalin Információk 2 Elérhetőség meskokatalin@tfkkefohu Fogadóóra: szerda 10:45-11:30 Számonkérés Időpontok Dec 19 9:00, Jan 05 9:00, Jan 18 9:00 egy

Részletesebben

Programozás Minta programterv a 1. házi feladathoz 1.

Programozás Minta programterv a 1. házi feladathoz 1. Programozás Minta programterv a 1. házi feladathoz 1. Gregorics Tibor 1. beadandó/0.feladat 2008. december 6. EHACODE.ELTE gt@inf.elte.hu 0.csoport Feladat Egy osztályba n diák jár, akik m darab tantárgyat

Részletesebben

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Készítette: Gipsz Jakab Neptun-azonosító: ABC123 E-mail: gipszjakab@seholse.hu Kurzuskód: IT-13AAT1EG 1 A fenti

Részletesebben

Algoritmusok Tervezése. 4. Előadás Visual Basic 1. Dr. Bécsi Tamás

Algoritmusok Tervezése. 4. Előadás Visual Basic 1. Dr. Bécsi Tamás Algoritmusok Tervezése 4. Előadás Visual Basic 1. Dr. Bécsi Tamás Bevezetés A BASIC (Beginner s All-purpose Symbolic Instruction Code) programnyelvet oktatási célokra hozták létre 1964-ben. Az általános

Részletesebben

Felvételi vizsga mintatételsor Informatika írásbeli vizsga

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

Részletesebben

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

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

Részletesebben

Programozási segédlet

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

Részletesebben

Számítógép architektúra

Számítógép architektúra Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Számítógép architektúra Dr. Seebauer Márta főiskolai tanár seebauer.marta@roik.bmf.hu Irodalmi források Cserny L.: Számítógépek

Részletesebben

I. A DIGITÁLIS ÁRAMKÖRÖK ELMÉLETI ALAPJAI

I. A DIGITÁLIS ÁRAMKÖRÖK ELMÉLETI ALAPJAI I. A DIGITÁLIS ÁRAMKÖRÖK ELMÉLETI ALAPJAI 1 A digitális áramkörökre is érvényesek a villamosságtanból ismert Ohm törvény és a Kirchhoff törvények, de az elemzés és a tervezés rendszerint nem ezekre épül.

Részletesebben

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10.

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10. Programozás I. 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2012. szeptember 10. Sergyán (OE NIK) Programozás I. 2012. szeptember 10. 1 /

Részletesebben

AWK programozás Bevezetés

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á

Részletesebben

7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II.

7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II. 7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II. A gyakorlat célja: 1. A shell vezérlő szerkezetei használatának gyakorlása. A használt vezérlő szerkezetek: if/else/fi, for, while while, select, case,

Részletesebben

Algoritmusok helyességének bizonyítása. A Floyd-módszer

Algoritmusok helyességének bizonyítása. A Floyd-módszer Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk

Részletesebben

A fordítóprogramok szerkezete. Kódoptimalizálás. A kódoptimalizálás célja. A szintézis menete valójában. Kódoptimalizálási lépések osztályozása

A fordítóprogramok szerkezete. Kódoptimalizálás. A kódoptimalizálás célja. A szintézis menete valójában. Kódoptimalizálási lépések osztályozása A fordítóprogramok szerkezete Forrásprogram Forrás-kezelő (source handler) Kódoptimalizálás Fordítóprogramok előadás (A,C,T szakirány) Lexikális elemző (scanner) Szintaktikus elemző (parser) Szemantikus

Részletesebben

Java II. I A Java programozási nyelv alapelemei

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

Részletesebben

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós augusztus 29. Széchenyi István Egyetem, Gy r

Programozá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észletesebben

Adatok ábrázolása, adattípusok

Adatok á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

Web-programozó Web-programozó

Web-programozó Web-programozó Az Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről szóló 133/2010. (IV. 22.) Korm. rendelet alapján. Szakképesítés, szakképesítés-elágazás, rész-szakképesítés,

Részletesebben

Feladataink, kötelességeink, önkéntes és szabadidős tevékenységeink elvégzése, a közösségi életformák gyakorlása döntések sorozatából tevődik össze.

Feladataink, kötelességeink, önkéntes és szabadidős tevékenységeink elvégzése, a közösségi életformák gyakorlása döntések sorozatából tevődik össze. INFORMATIKA Az informatika tantárgy ismeretkörei, fejlesztési területei hozzájárulnak ahhoz, hogy a tanuló az információs társadalom aktív tagjává válhasson. Az informatikai eszközök használata olyan eszköztudást

Részletesebben

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

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

Részletesebben

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

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

Részletesebben

Programozási nyelvek JAVA EA+GY 1. gyakolat

Programozási nyelvek JAVA EA+GY 1. gyakolat Programozási nyelvek JAVA EA+GY 1. gyakolat EÖTVÖS LORÁND TUDOMÁNYEGYTEM INFORMATIKAI KAR PROGRAMOZÁSI NYELVEK ÉS FORDÍTÓPROGRAMOK TANSZÉK 2018/2019. tavaszi félév Tartalom 1 A Java alapjai 2 Java program

Részletesebben

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

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

Részletesebben

Rendszer szekvencia diagram

Rendszer szekvencia diagram Rendszer szekvencia diagram Célkitűzések A rendszer események azonosítása. Rendszer szekvencia diagram készítése az eseményekre. 2 1.Iteráció Az első igazi fejlesztési iteráció. A projekt kezdeti szakaszában

Részletesebben

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama 10. évfolyam: 105 óra 11. évfolyam: 140 óra 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra 36 óra OOP 14 óra Programozási

Részletesebben

Eljárások, függvények

Eljárások, függvények Eljárások, függvények Tartalomjegyzék Az alprogramok...2 Kérdések, feladatok...2 Kérdések, feladatok...3 Eljárások...3 Kérdések, feladatok...4 Érték és cím szerinti paraméterátadás...5 Kérdések, feladatok...6

Részletesebben

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

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

Részletesebben

1. 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

1. 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észletesebben

Algoritmusok, adatszerkezetek, objektumok

Algoritmusok, adatszerkezetek, objektumok Algoritmusok, adatszerkezetek, objektumok 1. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. szeptember 14. Sergyán (OE NIK) AAO 01 2011.

Részletesebben

Gyakorló feladatok az 1. nagy zárthelyire

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

Részletesebben

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

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: & ; ( ) < >

Részletesebben

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

Programozás alapjai. 10. előadás 10. előadás Wagner György Általános Informatikai Tanszék Pointerek, dinamikus memóriakezelés A PC-s Pascal (is) az IBM PC memóriáját 4 fő részre osztja: kódszegmens adatszegmens stackszegmens heap Alapja:

Részletesebben

Alkalmazott modul: Programozás 4. előadás. Procedurális programozás: iteratív és rekurzív alprogramok. Alprogramok. Alprogramok.

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

Részletesebben

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Készítette: Gipsz Jakab Neptun-azonosító: ABC123 E-mail: gipszjakab@seholse.hu Kurzuskód: IT-13AAT1EG Gyakorlatvezető

Részletesebben

Szoftvertervezés és -fejlesztés I.

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.

Részletesebben

Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19.

Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19. Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19. Programkészítés Megrendelői igények begyűjtése Megoldás megtervezése (algoritmuskészítés)

Részletesebben