Vezérlő utasítások.

Slides:



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

Programozás I. Szelekciók: egy- és kétágú szelekció
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.
Eljárások és függvények
Ö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
Programozás alapjai.
Sztringek.
Algoritmusok Az algoritmus fogalma:
C A C nyelv utasításai.
C A C nyelv utasításai. Ismétlés Utasítások csoportosítása.
Nat Pedellus Informatika 8. osztály óra.
Turbo pascal feladatok 2
Programozás módszertan
Programozás I. Horváth Ernő.
Java programozási nyelv 2. rész – Vezérlő szerkezetek
Utasítások, elágazás- és ciklusszervezés C nyelvi utasítások
PHP Webprogramozás alapjai
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ó
Vizuális és web programozás II.
Vezérlési szerkezetek: elágazások, ciklusok
Programozás C# -ban Elágazások.
C nyelv utasításai.
A Pascal programozási nyelv alapjai
Ismétlés A pascal program szerkezete: program programnev; Programfej
Ciklusok: 1. Számlálós ciklus
Ciklusok: 2. Előltesztelő ciklus
Félévi típus feladatok
Feladatok: Algoritmusok Pszeudokódban
A Pascal programozási nyelv alapjai
Tömbök és programozási tételek
Programozási nyelvek, Pascal
Ciklusok (iterációk).
Szintaktikai, szemantikai szabályok
1.3. Pascal program felépítése Az els ő program. Program ; … Begin … End. Program fej Deklarációs rész Végrehajtó rész.
Összetett adattípusok
Készítette: Csíki Gyula
Algoritmus gyakorlati feladatok
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Algoritmusok.
Turbo Pascal Indítás: C:\LANGS\Turbo Pascal Turbo Pascal.
Java programozási nyelv Vezérlési szerkezetek
Algoritmusok.
Elnevezések, ciklusok, feltételvizsgálat
Objektum orientált programozás
Egyágú elágazás Szintaxis: if (feltétel)
Operátorok Vezérlési szerkezetek Gyakorlás
Táblázatkezelés KÉPLETEK.
Feladatok (értékadás)
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.
Mintapélda Készítsünk programot, amely beolvas egy egész számot, és eldönti arról, hogy prímszám-e. Készítsünk programot, amely beolvas egy egész számot,
Nat Pedellus Free Pascal Elágazások..
Free pascal feladatok
© Tóth Ákos, Óbudai Egyetem, 2010
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.
Gépészeti informatika (BMEGEMIBXGI)
Algoritmizálás.
Programozás C# -ban Elágazások.
Bevezetés a programozásba Algoritmikus gondolkodás
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Informatikai gyakorlatok 11. évfolyam
Algoritmus készítés.
Előadás másolata:

Vezérlő utasítások

A program menete: az utasítások sorban, egymás után hajtódnak végre. Legtöbb esetben a feladat megkívánja a program strukturáltságát, előfordul, hogy egy utasítást vagy utasításcsoportot ismételni akarunk többször, vagy addig, míg valamely feltétel be nem következik. A vezérléseket szolgálja az úgynevezett vezérlő utasítások. Vezérlések: elágazások ismétlések ugrálások Program felépítése: - szekvencia: összetett uatsítás: BEGIN, END - szelekció (elágazások): IF, CASE - iterációk (ciklusok): WHILE, REPEAT, FOR, feltétel nélküli vezérlésátadás: GOTO

1. Elágazások (szelekció) Egy programot előre felkészítünk a lehetséges esetekre, majd futtatáskor az aktuális állapottól függően a program különböző ágaira folyik a vezérlés. A szelekció, elágazás válogatást jelent. Előre elgondoljuk, hogy milyen esetek következhetnek be és minden esetre megadunk egy tevékenységet vagy tevékenységsorozatot, melyet a program végrehajt, majd ezután a program újra összefolyik és egy közös tevékenységgel folytatódik. Az esetek száma szerint megkülönböztetünk: egyágú elágazást kétágú elágazást többágú elágazást Az elágazások egymásba ágyazhatók, így bonyolultabb választási lehetőségeket is betudunk programozni.

1.1. Feltételes elágazások: IF a) Egyágú elágazás: IF … THEN jelentése: HA … AKKOR Ha igaz a megadott feltétel, akkor a hozzá kapcsolódó tevékenységet kell végrehajtani, egyébként azt ki kell kerülni és a programot az azt követő közös tevékenységgel folytatjuk. Folyamatábrája: Pascal kód: IF F1 then U1; F1 U1 Igaz Hamis

IF F1 then Begin U1; U2; … Un; End; Ha az igaz ágon több utasítást akarunk végrehajtani, akkor a végrehajtandó utasításokat a BEGIN- END blokkba zárjuk. Ha nem zárjuk a Begin és End közé akkor csak az első utasítást fogja figyelembe venni, a többit nem. IF F1 then Begin U1; U2; … Un; End; 1.feladat: Olvassunk be két egész számot: a és b. Írj programot amely kiírja a nagyobbik számot! Ha a>b, akkor írja ki max:= a és min:=b.

Ha az a>b, tehát ha megfelel a feltételvizsgálat. Ha nem teljesült a feltételvizsgálat, nem csinál semmit, kilép.

IF F1 then U1 ELSE U2; b) Kétirányú feltételes elágazás: IF …THEN …ELSE jelentése: HA …AKKOR … EGYÉBKÉNT Ha igaz a megadott feltétel, akkor a hozzá kapcsolodó tevékenységet kell végrehajtani, egyébként egy másikat. Az elágazás után a program összefolyik egy közös utasítás végrehajtására. Folyamatábrája: Pascal kódja: F1 U1 Igaz Hamis U2 IF F1 then U1 ELSE U2;

Ha az F1 feltétel igaz, akkor az U1 tevékenység kerül végrehajtásra, egyébként (ha F1 hamis) az U2. itt is lehet az U1 és U2 utasítás is összetett utasítás, tehát akkor Begin és End közé kell zárjuk. ! Az ELSE előtt soha nem teszünk pontosvesszőt ; hibaüzenetet fogunk kapni. 2.feladat: Kérjetek be a felhasználótól két számot, majd írassátok ki a nagyobbikat.

3.feladat: Kérjetek be a felhasználótól két számot, majd írassátok ki a nagyobbikat (max) és a legkisebbet (min). Ha a<b, akkor min=a és max=b másképpen min=b és max=a.

IF F1 THEN U1 ELSE IF F2 THEN U2; c) Egymásba ágyazott feltételes elágazás: Ha egy If- Then- Else ágon van egy másik If- Then- Else, akkor figyelnünk kell arra, hogy mindegyik else , a hozzá legközelebb álló If- then utasításhoz tartozik. Folyamatábrája: Pascal kódja: Igaz F1 Hamis IF F1 THEN U1 ELSE IF F2 THEN U2; F2 Igaz Hamis U1 U2

4. feladat: Olvassunk be három egész számot: a, b, c 4.feladat: Olvassunk be három egész számot: a, b, c. Írassátok ki a legnagyobbat közülük. Először meg kell tervezni a programot, milyen lépések hogyan fogják követni egymást. Start a,b,c igaz hamis a > b igaz igaz hamis hamis a > c b > c a c b c Stop

Feladatok: 1. Készíts egy olyan programot amely kiszámítja a kör vagy a téglalap területét, de ez előtt kérdezze meg a felhasználótól, hogy mit szeretne hogy kiszámoljon neki a program. Kör esetén a pi ismert, tehát konstansként használjátok és kérjétek be a sugár hosszát. Téglalap esetén pedig az oldalak hosszát, végül írassa ki a terület értékét a megfelelő szöveg kíséretében. 2. Döntsétek el három egész számról, a, b, c, hogy képezhetik- e egy háromszög oldalait. Ha igen akkor számolja ki a területét, ellenkező esetben pedig adjon egy rövidke kis hangot. 3. Döntsétek el egy háromszögről, hogy milyen típusú. Persze mindenek előtt, hogy képezhet- e háromszöget. 4. Adott három beolvasott szám. Írassátok őket csökkenő sorrendbe. 5. Olvassatok be két nevet, majd helyezzétek őket abc sorrendbe. 6. Döntsétek el egy egész számról, hogy osztható- e egyszerre a három különböző számmal. (a, b, c) 7. Írj programot, mely bekér két valós számot, majd megkérdi a felhasználót, hogy mit szeretne kiszámolni, a számtani vagy mértani középarányosát és ennek függvényében végzi a számításokat.

8. Írj egy programot, mely bekér egy számot 1- től 7- ig és ha ez a szám pl. 1 akkor kiírja azt hogy hétfő. Tehát a hét napjaihoz számot rendel. Ha nagyobb számot ad mint 7, vagy kissebet mint 1, akkor írja ki hogy Tévedés. 9. Olvassatok be egy karaktert! Írassátok ki ennek nagybetűs formáját. Ha a beolvasott karakter nagybetű, akkor alakítsátok kisbetűssé még a kiírás előtt. Még több feladat: Agster Erzsébet: Progr. tankönyv 158 oldalán

1.2. Többirányú feltételes elágazás: CASE CASE: jelentése ESET, amely esetszétválasztásra utal. A Case segítségével egy adott kifejezés (szelektor) vagy változó értékeiből válogathatunk. Csak sorszámozott típusú kifejezés használható, valós számok esetén a case nem alkalmazható. Formája: Működési elve: CASE kifejezés OF érték1: utasítás1; érték2: utasítás2; … ELSE utasításn; END; - megadjuk a kifejezés értékét - ha az érték megfelel valamelyiknek a felsoroltak közül, akkor végrehajtódik a neki megfelelő utasítás, ellenkező esetben az else ág utasítása hajtódik végre.

5.feladat: Olvassunk be egy nem negatív egész számot, valakinek az életkorát jelképezi. Kortól függően írjuk ki a megfelelő üzenetet. 0 – 13 évig: Gyerek 14- 17 évig: Fiatal korú 18- 23 évig: Ifjú 24- 59 évig: Felnőtt 60 évtől: Idős

Összefoglaló feladatok: A billentyűzetről beolvasunk egy karaktert. Írjatok egy programot amely eldönti, hogy mi ez a karakter, betű, szám, operátor (művelet) vagy egyenlőség jel. Írjatok egy programot, amely a billentyűzetről beírt számnak megfelelően kiírja, hogy milyen évszakról van szó. Oldjátok meg IF elágazással és Case elágazással is. Döntsétek el egy adott évszámról, hogy szökőév-e vagy sem. (szökőév, ha az adott szám osztható 4- el, és nem osztható 100-al, vagy osztható 400- al.) Billentyűzetről megadott x értékére számoljuk ki az f(x) függvény értékét, tudván, hogy: f(x)= x*x + 1 , ha x<= - 3 x – 2 , ha x Є (-3, 3) x * x – 4*x + 5 , ha x>=3

Adott két ember magassága, rendezzétek növekvő sorrendbe. Olvassatok be egy hónap és egy nap értékét. Írjátok ki, hogy a beolvasott dátum jó- e. (a februárt vegyük 28 naposnak) Adott két szám és a négy alapművelet. Döntse el , hogy melyik műveletet hajtsa végre. Pl. ha + ütnek le akkor összegzi a két számot és így tovább. Oldjátok meg mind a két típusú elágazással. Adott két ember magassága, rendezzétek növekvő sorrendbe. Döntsétek el egy számról hogy pozitív- e vagy negatív, vagy 0. Rendezzétek három ember testmagasságát. Döntsétek el egy havi bérről hogy alacsony, átlagos vagy magas. Döntsétek el egy számról, hogy -30 és +40 között van- e? Legyen egy szám amely osztható 5-el és 7-el, de nem osztható 3-mal és 11- el. Döntsétek el milyen négyszögről van szó. További feladatok: Angster Erzsébet: Prog. Tankönyv I. 158 oldal