Elnevezések, ciklusok, feltételvizsgálat

Slides:



Advertisements
Hasonló előadás
Szerver oldali programozás
Advertisements

Vezérlő utasítások.
Programozási feladatok
Definíciók: Algoritmus: bármely véges sok lépéssel leírható tevékenység. Olyan pontos előírás, amely megmondja, hogy egy adott típushoz tartozó feladat.
Algoritmusok.
Összefoglalás 1. Pascal program szerkezete 2. Pascal típusai
Matematika és Tánc Felkészítő tanár: Komáromi Annamária
Ismétlés: Döntések a feltétel egy logikai kifejezés if feltétel then
A C nyelv utasításai. Kifejezés+ ; Utasítás printf("Hello")printf("Hello"); a=b+ca=b+c; fuggveny(a,b)fuggveny(a,b); Blokkok: több utasítás egymás után,
3. előadás (2005. március 1.) Utasítások, tömbök
Benczúr Zsolt VBA gyorstalpaló Benczúr Zsolt
Programozás alapjai.
Mire jók a tabulátorok? Lehetőséget nyújtanak
A CLIPS keretrendszer CLIPS "C" Language Integration Production System.
C A C nyelv utasításai.
C A C nyelv utasításai. Ismétlés Utasítások csoportosítása.
Egy feladat megoldásának gondolatmenete. Feladat: Generáljuk véletlen számokat 1 és 6 között, amíg legalább 10 darab egyes és 10 darab hatos nem lesz.
Nat Pedellus Informatika 8. osztály óra.
Java programozási nyelv 2. rész – Vezérlő szerkezetek
C++ Alapok, első óra Elemi típusok Vezérlési szerkezetek
Programozás I. Ciklusok
Programozás I. Egymásba ágyazott szelekciók, többágú szelekció
Lénárt Anett egyetemi adjunktus - PTE PMMK Rendszer- és Szoftvertechnológia Tanszék Előadás JavaScript Tananyag: W eb - programozás.
Vizuális és web programozás II.
Vezérlési szerkezetek: elágazások, ciklusok
PHP I. Alapok. Mi a PHP? PHP Hypertext Preprocessor Szkriptnyelv –Egyszerű, gyors fejlesztés –Nincs fordítás (csak értelmező) Alkalmazási lehetőségek:
Nevezetes algoritmusok Beszúrás Van egy n-1 elemű rendezett tömbünk. Be akarunk szúrni egy n-edik elemet. Egyik lehetőség, hogy végigszaladunk a tömbön,
Alapszint 2.  Készíts makrót, ami a kijelölt cellákat egybenyitja, a tartalmat vízszintesen és függőlegesen középre igazítja és 12 pontos betűméretűre.
Alprogramok deklarációja, definíciója és meghívása Páll Boglárka.
A rekurzió Páll Éve Boglárka.
ismétlődő (azonos vagy hasonló) tevékenységek megvalósítására szolgál
Tömbök és programozási tételek
Programozási nyelvek, Pascal
Rendezések és szövegkezelő függvények
Ciklusok (iterációk).
Szintaktikai, szemantikai szabályok
1 Operációs rendszerek I, 3. gyakorlat Windisch Gergely
Hernyák Zoltán Programozási Nyelvek II.
Turbo Pascal Indítás: C:\LANGS\Turbo Pascal Turbo Pascal.
Java programozási nyelv Vezérlési szerkezetek
Algoritmusok.
1. Feladat Hozzunk létre egy olyan programot amely számokat ír ki és a felhasználónak időre be kell gépelni ezeket.
Embarcadero Rad Studio XE5 3D fények, alakzatok bemutatása
Objektum orientált programozás
Objektum orientált programozás
2. Feladat. És akkor kezdjük is el!
2. Feladat. És akkor kezdjük is el! Menü Mint ahogy már megszokhattuk módosítsuk az editek text mező tulajdonságát a minta szerint! Tovább.
A Visual Basic nyelvi elemei
Ez az én művem Készítette: Barczi Renáta Felkészítő tanár: PeadDr
Török Katalin és Marosi Nóra 11/c. Pascal: Az es években megjelent magas szintű programozási nyelv, közel áll az emberi gondolkodáshoz. Nevét.
Nat Pedellus Free Pascal Elágazások..
© Tóth Ákos, Óbudai Egyetem, 2010
A 2. géptermi beszámoló VBA anyagának összefoglalása
Kiterjesztések szemantikája: Szemantikai tartomány : Adatoknak, vagy értékeknek egy nem üres halmazát szemantikai tartománynak nevezzük. Jelölése: D. Egy.
Excel programozás (makró)
C++2. Ciklusok elöltesztelő (for, while) A ciklusmag feldolgozása előtt történik a vizsgálat  lehet, hogy egyszer sem fut le. A soronkövetkező iteráció.
Weboldalba ágyazott interaktív feladatok GeoGebra módra Papp-Varga Zsuzsanna ELTE IK Média- és Oktatásinformatika Tanszék
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Utasítás és blokk. Elágazás típusai, alkalmazása Kovács.
Készítette: Rummel Szabolcs Elérhet ő ség: Linux kezelése.
Programozás alapjai Készítette: Csiszár Nóra Anita
Neumann János Informatikai Kar
Gépészeti informatika (BMEGEMIBXGI)
Excel programozás (makró)
Programozás C# -ban Elágazások.
A CLIPS keretrendszer
Bevezetés a programozásba Algoritmikus gondolkodás
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
ITERÁCIÓ.
Informatikai gyakorlatok 11. évfolyam
Algoritmus készítés.
Előadás másolata:

Elnevezések, ciklusok, feltételvizsgálat Programozás alapjai Elnevezések, ciklusok, feltételvizsgálat

Alapfogalmak Változó Konstans A változó egy mennyiség/objektum jelölése Informatikában egy „hely”, ahol értékeket tárolhatunk Matematikában egy ismeretlen mennyiség (függvények, paraméterek…) Rögzített, pillanatnyilag talán ismeretlen érték A változóval szembeállított fogalom, értéke állandó Informatikában nem változtatható értékű memóriaterület Matematikában egy olyan szám, aminek értéke nem változhat meg SEGÉDPROGRAM

Ciklusok „For”-ciklus „While”-ciklus Megadott értékig ismétli önmagát és a benne megadott parancsokat(ismerjük ismétlés darabszámát Pl: For i:=1 to 4 do Az i egy változó, a 4 egy konstans, ugyanis rögzítettük, hogy addig ismételje önmagát, amíg a változó (i) fel nem veszi a 4 értéket Addig fut a program, amíg a megadott értéket el nem éri, előfordulhat, hogy nem fut végig minden lehetséges változó értékén Pl: while i<4 do A ciklus addig fut, amíg a változó (i) értéke kisebb mint a konstans(4)

For ciklus A for ciklust fizikailag úgy kell elképzelni, mint egy kör, aminek annyiszor húzzuk meg körívét, amennyit a végértéknek megadunk A „piros” eset akkor lép fel, ha egymásba ágyazunk for ciklusokat SEGÉDPROGRAM

For ciklus Növekvő ciklus Csökkenő For i:=kezdőérték to végérték do Akkor fut le, ha végérték nagyobb/egyenlő a kezdőértékkel A ciklus akkor ér véget ha a változó eléri a végértéket For i:=kezdőérték downto végérték do Akkor fut le, ha végérték kisebb/egyenlő a kezdőértékkel A ciklus akkor ér véget ha a változó eléri a végértéket Kezdőérték< =végérték Ciklusváltozó:=kezdőérték utasítás Ciklusváltoz ó=végérték false Ciklusváltozó:=succ(ciklusválto zó) true A for-to utasítás folyamatábrája

A while ciklus folyamatábrája A while utasításban szereplő belépési feltétel (logikai kifejezés) vezérli a ciklus végrehajtását. A ciklusmag csak akkor hajtódik végre, ha a feltétel igaz. Ha a feltétel hamisra változik, akkor a ciklus befejezi a működését és a vezérlés a while ciklusutasítást követő utasításra kerül. Abban az esetben, ha a feltétel értéke a ciklusba való belépéskor false, a ciklusmag egyszer sem hajtódik végre. Ha a belépési feltétel true értéke nem változik a ciklus működése során, akkor ún. végtelen ciklust kapunk. feltétel utasítás A while ciklus folyamatábrája false SEGÉDPROGRAM

Feltételvizsgálat Ha a programunkat érzékennyé szeretnénk tenni a futás közben bekövetkező eseményekre, akkor szükségessé válik ezen esetek létrejöttének vizsgálata. Attól függően, hogy milyen esemény keletkezik, a programunk más és más úton halad tovább – elágazik. SEGÉDPROGRAM

Az if-then-else utasítás folyamatábrája Pl.: if i>4 then Ha teljesül a feltétel Ha nem teljesül Ha változónkra igaz a feltétel(itt: nagyobb mint 4), akkor a program módosítja azt, a megadott feltétel szerint Ha nem adtunk meg más parancsot, akkor nem veszi figyelembe, azaz megy tovább a program minden módosítás nélkül Ha megadtunk más parancsot(„else”-ág), akkor lényegében a feltételünk másik irányban teljesül,azaz az előbbi eset lép életbe feltét el utasítás1 utasítás2 igaz then-ág hamis else-ág Az if-then-else utasítás folyamatábrája

Case ciklus A case ciklus sok egymásba ágyazott feltételvizsgálat, amely segítségével többirányú elágazást írhatunk programunkba Case változó of feltétel : érték feltétel 2 : érték 2 stb end; Kifejezés kiértékelése érték 1 utasítás1 … érték N utasításN Máskülönben_utasítás SEGÉDPROGRAM

Konstans vagy változó Kívülről csak 2 ugyanolyan ábrát látunk, egy kis különbséggel. Az ördög a részletekben van

A tervező (Design) nézetből átkapcsoltam a Code fülre A gombok funkcióját az OnClick Event-tel diktáltam be, lényegében egy = jelként szolgálnak. A felső procedúránál két változót használtam (sz1, sz2) melyeket korábban a var fül alatt hoztam létre (változót mindig külön létre kell hozni) beírom a két számot, és annak veszi az összegét. Az alsó procedúrában már csak 1 változót használtam, és egy konstanst. Bármi számot írok a változó(sz3) helyére, az mindig 4-et ad hozzá. Ugyanúgy Edit-et használtam a konstans megjelenítésére, csak írásvédetté tettem a Readonly Propertie kipipálásával Az strtoint egy olyan parancs, amely (Str)ing típusból csinál (Int)eger típust (szövegből szám típust) Szükséges, mert a Delphi szövegként kezelte, a beviteli felület miatt.

A for ciklus szemléltetésére egy számokat kiíró minialkalmazást raktam össze. A program lényege, hogy a Button1 megnyomására a Memo1-ben megjelennek a számok 1-től 10-ig összeadva egymással Mivel ismét gombnyomásra indul a program, ezért ismételten a Button1 OnClick eventjét választjuk

Először is hogy a Memo1 üres legyen a Form1-nek a FormActive eventjét módosítjuk a piros téglalapban leírtak szerint Létrehozunk 2 változót. Az i mindig a ciklusváltozó, az n pedig az, amelyikbe a számokat tárolni fogjuk. A program azt csinálja így, hogy 10-szer lefuttatja azt a parancssort, amelyben az n-hez hozzáadom a ciklusváltozó értékét, azaz a számokat 1-től 10-ig. Kis kozmetikázás, hogy a program csak egyszer legyen futtatható, a gomb megnyomás után eltűnik Futtassuk és lássunk csodát V I S Z A

A while ciklust hasonló módon ábrázolom, mint a for-t A while ciklust hasonló módon ábrázolom, mint a for-t. Kívülről ugyanúgy néz ki. Van egy Memo-nk, meg egy gombunk. A gombot megnyomva kiírja a számokat, amíg a feltétel teljesül.

Ismét két változót hoztam létre. Az egyik egy számláló. Gombnyomásra fut le a ciklus. Az n-nek random számokat adunk, ami nem nagyobb, mint 15. A ciklus addig fut, amíg a szám kisebb, mint 10. Amint túllépi a 10-et, megáll a ciklus. A random számok miatt nagyrészt mások az eredmények. Mivel itt a második érték túllépte a 10-et, a ciklus megállt. V I S Z A

A legáltalánosabb feltételvizsgálat, az amikor két számot hasonlítunk össze, kisebb-nagyobb alapon Kérjünk be 3 Edit-et és egy gombot. A Caption és a Text property-knél nevezzük át őket tetszés szerint

A gomb megnyomására, a programunk megvizsgálja, melyik szám a nagyobb A gomb megnyomására, a programunk megvizsgálja, melyik szám a nagyobb. A var-nál felvettünk két változót, amik a számaink lesznek. Beállítjuk, hogy amit az Edit-ekbe írunk, az legyen a változók értéke. Beírjuk feltételvizsgálatunkat, majd a gombot letiltjuk, további megnyomástól. A feltételünk szerint az Edit3 tartalma megváltozik a nagyobbik számra. V I S Z A Kis apróság még annak elintézése, hogy az editekbe kattintva eltűnjön azok szövege.

A case-ciklus szemléltetéséhez vegyünk fel a Formunkra 2 editet, és egy gombot. Tetszés szerint feliratozzuk gombunkat, és editeinket. Extra beállításnak az Életkor(edit1) NumbersOnly propertyjét állítsuk True-ra.

A programunk szokás szerint gombnyomásra értékel ki. Felvesszük az ‘a’ változót, amelynek értéke mindig az Edit1 szövege lesz (kijelölt sor). A case ciklusba egybe beírhatunk minden értéket, az ábra szerint. Itt is beállíthatjuk, hogy kattintásra az editek üresek lesznek. Futtatjuk, a programot, és a kívánt évszámot beírva a kívánt értéket kapjuk.