PPKE-ITK Bevezetés a programozásba 1.

Hasonló dokumentumok
Bevezetés a programozásba I 1. gyakorlat. Programozási alapismeretek, a PLanG programozási nyelv. Programozási alapismeretek.

Bevezetés a programozásba I 1. gyakorlat. Programozási alapismeretek, a PLanG programozási nyelv

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. Szekvenciális fájlkezelés Fájlok használata

1. gyakorlat

Programozás alapjai gyakorlat. 2. gyakorlat C alapok

Bevezetés a programozásba I.

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

Operációs rendszerek gyak.

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

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

Programzás I gyakorlat

Bevezetés a programozásba

3 A C programozási nyelv szintaktikai egységei

Bevezetés a programozásba I.

1. Alapok. #!/bin/bash

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

Programozás I. gyakorlat

Bevezetés a programozásba I 10. gyakorlat. C++: alprogramok deklarációja és paraméterátadása

BASH SCRIPT SHELL JEGYZETEK

Bevezetés a programozásba I.

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

LEGO robotok. XII. rész

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

Java II. I A Java programozási nyelv alapelemei

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

C programozási nyelv

Bevezetés a programozásba I.

Adatbázis és szoftverfejlesztés elmélet

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

Függvény pointer. Feladat: Egy tömbben soroljunk fel függvényeket, és hívjuk meg valahányszor.

Programozási alapismeretek 1. előadás

Webprogramozás szakkör

A C programozási nyelv I. Bevezetés

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I.

A C programozási nyelv I. Bevezetés

Bevezetés a programozásba. 6. Előadás: C++ bevezető

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

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

A C# programozási nyelv alapjai

Programozás alapjai. 6. gyakorlat Futásidő, rekurzió, feladatmegoldás

A programozás alapjai

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

Operációs rendszerek. 9. gyakorlat. Reguláris kifejezések - alapok, BASH UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

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

II. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

Flex tutorial. Dévai Gergely

Szoftvertervezés és -fejlesztés I.

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

Programozás I gyakorlat. 10. Stringek, mutatók

Alkalmazott modul: Programozás 2. fejezet. C++ alapismeretek. Giachetta Roberto. Eötvös Loránd Tudományegyetem Informatikai Kar

Baran Ágnes. Gyakorlat Függvények, Matlab alapok

Alkalmazott modul: Programozás. C++ alapismeretek. C++ alapismeretek Történet

GPU Lab. 4. fejezet. Fordítók felépítése. Grafikus Processzorok Tudományos Célú Programozása. Berényi Dániel Nagy-Egri Máté Ferenc

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

KARAKTERFELISMERÉS AZ EVASYS-BEN

Bevezetés az informatikába

Programozás I gyakorlat

Programozási nyelvek (ADA)

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

Programozás I gyakorlat

6. BASH programozás I.

INFORMATIKAI ALAPISMERETEK

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez

Programozás I. Matematikai lehetőségek Műveletek tömbökkel Egyszerű programozási tételek & gyakorlás V 1.0 OE-NIK,

Funkcionális és logikai programozás. { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem }

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

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

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

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

Java II. I A Java programozási nyelv alapelemei

Láncolt lista. az itt adott nevet csak a struct deklaráción belül használjuk

Lekérdezések az SQL SELECT utasítással

Bevezetés a programozásba I.

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.

Már megismert fogalmak áttekintése

Programozási nyelvek Python

Programozás I gyakorlat

Programozási alapismeretek beadandó feladat: ProgAlap beadandó feladatok téma 99. feladat 1

Gyakorló feladatok. /2 Maradék /16 Maradék /8 Maradék

Bevezetés a Programozásba II 4. előadás. Adattípusok hordozhatósága

sallang avagy Fordítótervezés dióhéjban Sallai Gyula

Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Előfeldolgozó rendszer Tömbök. Dr. Bécsi Tamás 4. Előadás

Fordítóprogramok. Aszalós László szeptember 7.

Regionális forduló november 18.

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

2018, Funkcionális programozás

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

A PiFast program használata. Nagy Lajos

A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny első fordulójának feladatai. INFORMATIKA II. (programozás) kategória

A számok kiíratásának formátuma

Programozás alapjai 2.Gy: A C nyelv alapjai P R O

Bevezetés a Programozásba II 2. előadás. Adattípusok megvalósítása egységbe zárással. Adattípusok megvalósítása egységbe zárással

Egy PIC-BASIC program fordítása, betöltése

AWK programozás Bevezetés

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

LibreOffice Makró Basic

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

INFORMATIKAI ALAPISMERETEK

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

Átírás:

PPKE-ITK Bevezetés a programozásba 1. 1. gyakorlat: Programozási alapok, PlanG utasítások, kifejezések, típusok Giachetta Roberto groberto@digitus.itk.ppke.hu http://digitus.itk.ppke.hu/~groberto Cél Olyan programokat írjunk, amelyek: helyesek: pontosan a feladatot oldja meg megbízhatóak: nem romlanak el működés közben karbantarthatóak: ha kell valamin változtatni, az könnyen menjen újrafelhasználhatóak: ne kelljen mindig semmiről kezdenünk hatékonyak: csak annyi erőforrást használnak, amennyi feltétlenül szükséges hordozhatóak: több konfiguráción is használhatóak legyenek barátságosak: könnyen kezelhetőek, átláthatóak 2 A program Matematikailag: állapotterek felett értelmezett reláció Informatikailag: utasítások sorozata, amely műveleteket hajt végre adott értékekkel A futtatható programok (exe, com, ) gépi kódot tartalmaznak, amely általában operációs rendszer, illetve gépspecifikus (azaz csak egy géptípuson adott operációs rendszeren tud futni), mivel számítógép a saját gépi kódjában várja az utasításokat (ezt tudja értelmezni a processzor), és működést az operációs rendszeren keresztül végzi Régen (pl. lyukkártyás gépeknél) csak ez állt rendelkezésre, majd az 1950-es években megjelentek az első programozási nyelvek (FORTRAN, LISP, ALGOL,.) Programozási nyelv Egy eszköz, amivel könnyebben tudunk programozni, és nem kell közvetlenül gépi kódot írnunk Egy új szintet definiál, ami a gépi kódot leegyszerűsített módban adja meg a programozó számára (így sokkal többet programozhatunk sokkal hatékonyabban) Programkódot kell írnunk, amely egy adott nyelvnek megfelel A programozási nyelvek osztályozása: alacsony szintű (assembly): közelebb áll a gépi kódhoz, de már nyelvileg megfogalmazott (gépfüggő) utasítások magasabb szintű: gépi architechtúrától független utasításkészletű nyelv, amely tovább egyszerűsíti az assembly kódot, és további lehetőségeket biztosít a programozó számára 3 4 A fordítóprogram A magasabb szintű nyelven megírt programból előbb assembly kódot, majd abból gépi kódot állítunk elő, ez a fordítóprogram dolga A fordítást a követően a futtatható állományok gépközeli kódot tárolnak (ez általában gépi kódot jelent, de lehet valamilyen átmeneti nyelv) A fordító ellenőrzi, hogy a programunk megfelel-e e a programnyelv szintaktikájának, az itt keletkezett hibákat fordítási hibának nevezzük Mást (például változók értékei, mutatók címei, ) nem tud ellenőrizni, és követni, a programozó feladata az, hogy ilyen hibák ne kerüljenek a programba (ehhez tesztelés, debuggolás szükséges, amik a szoftvertechnológia témakörébe tartoznak) A fordítóprogram fordítás Magas szintű programozási nyelven megírt kód Assembly kód Gépi kód Futtatható állomány 5 6 1

Programok szerkezete Egy program futás közben a memóriában helyezkedik el, az tárolja a programkódot, valamint azokat az értékeket, amivel a program dolgozik minden érték egy adott memóriacímen helyezkedik el, ezzel meghatározható, hivatkozni rá a memóriacímmel túl bonyolult lenne, ezért inkább külön megnevezést alkalmazunk minden egyes érték elérésére (pl. a, szam, ertek_1, ) Az értékek két fajtáját különböztetjük meg: változó: értékét megváltoztathatjuk a program működése során konstans: egyszer adhatunk neki értéket, és ezt az értékét nem tudjuk megváltoztatni a program során (pl. ) Programok szerkezete Az értékeknek típusa van: meghatározza, mit tehetünk bele, milyen műveleteket értelmezhetünk rajta nem minden nyelvben, de a legtöbben van a szokásos típusok: egész, valós, logikai, karakter, szöveg A legtöbb nyelvben a programozó alkothat saját típusokat, illetve a már létezőkből összetett típusokat is A programkódok rendre két részből állnak: deklarációs rész: itt határozzuk meg, milyen változók, konstansok szerepelnek a programban törzsrész: ez a program által végrehajtott utasítássorozat egyes programozási nyelvekben a két rész nincs elkülönítve, a törzsrészben bármikor elhelyezhetünk deklarációkat (ilyen pl. a C++) 7 8 Programok készítésének menete A programozás nem csak kódolásból, hanem több lépésből áll A programokat (általában) nem hasra ütésre készítjük a feladatokhoz, hanem minden esetben egy előzetes elemzést végzünk a feladaton, ennek eredménye: egyszerű programokra: meghatározzuk, hogy mi kerüljön a program bemenetére és mit szeretnénk látni a kimenetén (ezt nevezik specifikációnak) bonyolultabb programokra: a készülő program várható szerkezetének feltérképezése (rendszerterv), majd a kész program egy egyszerűsített váza (programmodell) Csak ezt követően lehet a megfelelő programkódot előállítani, vagyis implementálni a programot Programok készítésének menete Feladat elemzés Rendszerterv Specifikáció Programmodell implementálás Program egyszerű program bonyolult program 9 10 A PLanG Lővei László fejleszti Letölthető: http://digitus.itk.ppke.hu/~lovei Java-ban íródott, ezért kell Java futtatási környezet (Java SE Development Kit, letölthető: http://java.sun.com) Célja: programozás oktatása kezdőknek Egy fordítóprogram, és fejlesztői környezet, amely saját programozási nyelvecskét alkalmaz Funkciói: eredmény kiírása, futtatás nyomkövetése lépésenként (azaz megtudhatjuk, egy sor feldolgozása miként történik), memória nyomkövetése lépésenként (láthatjuk változóink értékváltozásait) Programozás alapszabályát (CTRL+C/V) alkalmazhatjuk A PLanG Eszköztár Program Fordítóablak Be- és kimenet Nyomkövető 11 12 2

PLanG kezelőfelület Program: ide gépeljük be az utasításokat a szintakszisnak megfelelően, ez kerül fordításra, majd futtatásra Nyomkövető: a program lépéseit követhetjük nyomon, itt láthatjuk, változóink milyen értékeket vesznek fel futás közben, és hogyan foglalják a memóriát Fordítóablak: fordítási üzenetek, illetve, ha hibát talál a programban fordítás során, akkor azok ide kerülnek Bemenet: beolvasandó értékek, ha a programba szeretnénk magunk megadni értékeket futás közben Kimenet: kiírás helye, ide kerülnek a program által kiírt értékek PLanG kezelőfelület Eszköztár: fájl megnyitása/mentése: elmenthetjük és betölthetjük az általunk írt programkódot programszöveg értelmezése (fordítás imitálása, valójában nem fordít a program, nem állít elő gépi kódot) futtatás/leállítás (menet közben is meg lehet szakítani a program futását) beállítások: betűtípus, lépésszám (ciklus maximális futási hosszát is beállíthatjuk) 13 14 PLanG kulcsszavak Minden nyelvnek vannak fenntartott szavai (jelei), amelyek meghatározott célt szolgálnak, ezek a PLanG-ban: PROGRAM - program kezdete VÁLTOZÓK - változók deklarációjának kezdete - program vége BE - a bemenetről történő beolvasás KI - kiírás a kimenetre EGÉSZ, VALÓS, LOGIKAI, KARAKTER, SZÖVEG, TÖMB, FÁJL - változótípusok NEM - logikai negáció IGAZ, HAMIS - logikai összekötők ÉS, VAGY logikai összekötők := értékadás PLanG kulcsszavak ** megjegyzés =, /=, <, >, <=, >= relációk +, -, /, *,, ^, DIV, MOD műveletek - szám negáció RND véletlen szám generálás SIN, COS, TAN, LOG, EXP matematikai függvények KEREK, EGÉSZ kerekítés/egészrész kí é é valósnál @ - indexelés KIS, NAGY betűméret váltás BETŰ, SZÁM karaktertípus lekérdezés SV sorvége jel BEFÁJL, KIFÁJL fájlmegnyitás 15 16 PLanG kulcsszavak MEGNYIT fájl megnyitása LEZÁR fájl bezárása VÉGE vége van-e a fájlnak PLanG programok szerkezete A programoknak nevet kell adni, amit az első sorban írunk a program kulcsszó után A programok elején a deklarációs rész található, amit a programtörzs követ, a kettő között nem kell semmilyen kulcsszót tenni A deklarációs részt a változók kulcsszó jelöli A programtörzs végét a program_vége kulcsszó jelöli PROGRAM programnév... ** változók deklarációja ** programtörzs:... 17 18 3

PLanG programok szerkezete A program nevében és a változónevekben bármilyen ékezetes, alfanumerikus karaktert használhatunk, de csak betűvel kezdődhet (pl. a120 megfelelő, de 1a20 már nem) A nagy és kisbetűket nem különbözteti meg a PLanG (illetve mindig megformázza a szöveget, hogy ne legyenek ilyen problémák) Megjegyzéseket (** után) bármelyik sor végén, vagy külön sorban elhelyezhetünk, és bármit írhatunk a sor végéig Szöveget idézőjelben ( ) adunk meg, ebben bármilyen karakter szerepelhet, a szöveg pedig bármennyi karaktert tartalmazhat Karaktert szimpla idézőjelben ( ) adhatunk meg Több szöveget is konkatenálhatunk, vessző segítségével Az első program Feladat: írjuk ki a Hello, World! feliratot a kimenetre a kiíratásnál megadjuk a szöveget, amit ki szeretnénk íratni a programban ezen kívül más sorra nincs szükség adjuk a programnak a hello_world nevet bemenet: nincs kimenet: Hello, World! felirat PROGRAM hello_world KI: Hello, World! ** ez a lényegi rész 19 20 Az első program Másféle megoldás is adható, amely ugyanazt az eredményt adja: PROGRAM hello_world KI: Hello, KI: World! a kiíratást két sorban adtuk meg, de mivel nem írtunk sortörést, egy sorba kerül az eredmény általában igaz, hogy egy problémára sokféle program adható, minél bonyolultabb a feladat, annál többféle Az első program A programkódot fordítjuk, majd futtatjuk először értelmezzük a programunkat, ha jól írtuk be, a fordító nem ad hibát futtatással megkapjuk az eredményt a kimeneti ablakban, a fordítási ablakban a program véget ért üzenettel a nyomkövető ablakban megjelennek a lépések, minden sor végrehajtása egy lépés (a deklaráció nem tartozik bele), ezeken lépkedhetünk is, a fordítóablakban megkapjuk az aktuális lépést Ha hibásan írjuk meg a programot, természetesen nem futtathatjuk a hiba valószínűsíthető helyét látjuk, váltsunk vissza szerkesztő módba, majd javítsuk a hibát 21 22 Kifejezések A második PLanG program A program törzsrészében az értékekkel műveleteket végezhetünk (összeadás, és, szinusz, ), amelyek eredménye egy újabb érték lesz, az ilyen műveleteket nevezzük kifejezéseknek Amikor egy kifejezés lefut, és keletkezik az új érték, azt a kifejezés kiértékelésének nevezzük Pl.: 1 + 8 (a bemenet két egész szám, az eredmény egy egész szám) a mod 1267 (ha a egy egész változó, vagy konstans, az eredmény egy egész szám) X vagy igen (ha x egy logikai változó, vagy konstans, az eredmény egy logikai élrék) 3 >= 1 (logikai értéket ad, amely igaz lesz) Feladat: írassuk ki a 124 + 123 összegét A kimenetre egy kifejezést adunk, amelye a program elvégez a kiírás előtt bemenet: nincs kimenet: 247 PROGRAM második KI: 124 + 123 23 24 4

PLanG típusok A PLanG-ban (ahogy a legtöbb programozási nyelvben) az értékek (változók, konstansok) típussal rendelkeznek: LOGIKAI: olyan változó, amely logikai értéket reprezentál, IGAZ és HAMIS értéket vehet fel, és logikai műveletek értelmezhetőek rajta (ÉS, VAGY, NEM), illetve az egyenlőségvizsgálatok logikai eredményt adnak EGÉSZ: egész szám a következő műveletekkel: összeadás, kivonás, szorzás, osztás, egész osztás, maradékképzés, negáció, abszolút érték, hatványozás VALÓS: valós (lebegőpontosan ábrázolt) szám, az előbbiek mellett a matematikai függvények, az egészrész képzés, és a kerekítés értelmezhetőek rajta, de a maradékképzés és az egész osztás nem PLanG típusok KARAKTER: betűk, számjegyek, írásjelek, szóköz és sorvége jel (SV), utóbbi kivételével szimpla idézőjelben, amelyet lehet nagybetűvé, és kisbetűvé konvertálni, illetve lekérdezni, hogy szám-e, vagy betű-e SZÖVEG: több karakter egymásutánja dupla idézőjelben, lehet összefűzni, szövegrészt lekérdezni, illetve karaktert keresni és lekérdezni a szövegből FÁJL: külön megadhatunk kimeneti és bemeneti fájlokat, amelyeket megnyithatunk, olvashatunk, írhatunk, és bezárhatunk, továbbá lekérdezhetjük, hogy végére értünk-e a fájlnak 25 26 A harmadik PLanG program Feladat: adjuk meg egy egész szám rákövetkezőjét be kell olvasnunk egy számot a bemenetről meg kell növelnünk az értékét eggyel ki kell íratnunk a megnövelt értéket szükségünk lesz egy változóra, amibe a bemenő értéket eltároljuk, legyen a neve: a, a típusa: egész a beolvasandó értéket t a program indítása előtt meg kell adni a bemeneti ablakban bemenet: egy egész szám (a) kimenet: a szám rákövetkezője (a + 1) A harmadik PLanG program PROGRAM harmadik a: EGÉSZ KI: a + 1 Ha hibás típusú értéket teszünk be (pl. egész helyett valósat, vagy szöveget), vagy nem írunk be értéket a program futtatása előtt, akkor futási hibát kapunk Ha több számot szeretnénk beolvasni, akkor nem kell új sorba írnunk őket, elég egymás után szóközzel elválasztva Amikor megnöveljük az értékét, előbb végrehajtódik az összeadás, és a kapott érték kerül a kimenetre 27 28 A harmadik PLanG program Szöveget is írhatunk a kiíratáshoz, hogy látványosabb legyen, akkor a kiíráskor összeillesztjük a szöveget a számmal: PROGRAM harmadik_v2 a: EGÉSZ KI: A rákövetkezője:, a + 1 ** itt összekonkatenáljuk a kiírandó dolgokat Értékadás Használhatunk egy másik változót (legyen ez b), amibe előbb betesszük az új értéket, majd kiíratjuk azt Ehhez értékadást (:=) kell használnunk, az értékadásnak van bal oldala, és jobb oldala az ott található értékeket nevezzük balértéknek, illetve jobbértéknek balérték csak változó lehet! jobbérték tetszőleges kifejezés lehet A változókat vesszővel választjuk el egymástól, ha ugyanolyan típusúak, nem kell mindegyiknek megadni a típusát, csak az utolsónak (ekkor az összes előtte lévő ugyanolyan típusú lesz) 29 30 5

Értékadás bemenet: egy egész szám (a) kimenet: a b egész szám eggyel nagyobb az a-nál PROGRAM harmadik_v3 a, b: EGÉSZ b := a + 1 ** a bal oldalon szerepel az új változó, ** amibe a jobb oldali kifejezés értékét ** betesszük KI: A rákövetkezője:, b Értékadás Értékadással növelhetjük ugyanannak a változó értékét kiíratás előtt, és ezt követően íratjuk ki az új értéket Ekkor a változó egyszerre lesz jobb érték, illetve bal érték az értékadásnál PROGRAM harmadik_v4 a: EGÉSZ a := a + 1 ** a jobb oldalon a régi érték van, a balon ** az új érték lesz KI: A rákövetkezője:, a 31 32 Feladat: adjuk meg egy szám szinuszát. Feladat: írjuk ki, hogy a beolvasott karakter szám-e. bement: egy valós szám (sz) kimenet a szám színusza bement: egy karakter (char) kimenet: igaz, ha a karakter szám, különben hamis PROGRAM szinusz sz: VALÓS BE: sz KI: A szám színusza:, SIN sz PROGRAM betű_e char: KARAKTER BE: char KI: SZÁM char ** eredménye logikai érték lesz 33 34 Feladat: olvassunk be egy egész és egy valós számot, és írjuk ki a hányadosukat. egy egész és egy valós számot olvasunk be egymás után, az első számot osztjuk a másodikkal a beolvasásnál egyszerre két értéket olvasunk be, azokat vesszővel választjuk el a kódban, szóközzel a bemeneti ablakban egy harmadik értékbe írjuk az eredményt, amelyre használjunk valós változót bemenet: egy egész szám (a) és egy valós szám (b) kimenet: a két szám hányadosa a harmadik (c) számban PROGRAM hányados a: EGÉSZ, b, c: VALÓS ** most már több típusú változónk is van, b ** egymás után olvasunk be két számot a ** bemenetről c := a / b KI: A számok hányadosa:, c 35 36 6

Feladat: osszunk el két számot maradékosan úgy, hogy a maradékot is megadjuk, és, hogy az első szám több, mint tízszerese-e a másodiknak. használjuk a DIV és MOD műveleteket, illetve egy logikai kifejezést a hányadosról lekérdezzük, hogy nagyobb-e 10-nél az eredmények eltárolására lá á két egész és egy logikai i érték bement: két egész szám (a, b) kimenet: a két szám hányadosa (c) és maradéka (d), illetve, hogy a hányados nagyobb-e 10-nél (l) PROGRAM egész_osztás a,b,c,d: EGÉSZ, l: LOGIKAI,b c := a DIV b ** egész értékű hányados d := a MOD b ** maradék l := (c >10) ** logikai értékű kifejezés KI: A hányados:, c,, a maradék:, d, a hányados több, mint tízszerese a nevezőnek:, l ** több mindent iratunk ki egyszerre 37 38 Feladatok 1. Adjuk meg egy logikai érték negáltját. 2. Adjunk össze egy egész és egy valós számot. 3. Adjuk meg, hogy egész szám pozitív-e. 4. Adjuk meg két való szám szorzatát kerekítve. 5. (*) Adjuk meg két egész szám abszolút értékének különbségét. 39 7