Komputeralgebra Rendszerek

Hasonló dokumentumok
Komputeralgebra Rendszerek

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

Komputeralgebra rendszerek

Komputeralgebra rendszerek

Szkriptnyelvek. 1. UNIX shell

Webprogramozás szakkör

Komputeralgebra Rendszerek

A C# programozási nyelv alapjai

Komputeralgebra Rendszerek

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Python tanfolyam Python bevezető I. rész

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

Imperatív programozás

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

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

Programok értelmezése

Internet programozása. 3. előadás

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3)

Vezérlési szerkezetek

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

A Python programozási nyelv

A C programozási nyelv II. Utasítások. A függvény.

Imperatív programozás

C programozás. 1 óra Bevezetés

Kiterjesztések sek szemantikája

Java II. I A Java programozási nyelv alapelemei

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

Komputeralgebra Rendszerek

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

Java programozási nyelv

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

... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.

Alapok. tisztán funkcionális nyelv, minden függvény (a konstansok is) nincsenek hagyományos változók, az első értékadás után nem módosíthatók

Komputeralgebra Rendszerek

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r

S z á m í t ó g é p e s a l a p i s m e r e t e k

Imperatív programozás

Programozás BMEKOKAA146. Dr. Bécsi Tamás 3. előadás

A C programozási nyelv I. Bevezetés

Informatika terméktervezőknek

Apple Swift kurzus 3. gyakorlat

Algoritmizálás + kódolás C++ nyelven és Pascalban

Óbudai Egyetem. C programozási nyelv

Oktatási segédlet 2014

Java II. I A Java programozási nyelv alapelemei

Smalltalk 2. Készítette: Szabó Éva

Komputeralgebra rendszerek

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 3. előadás

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

Programozás BMEKOKAA146. Dr. Bécsi Tamás 2. előadás

C programozási nyelv

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

Hardver leíró nyelvek (HDL)

Szoftvertervezés és -fejlesztés I.

A C programozási nyelv I. Bevezetés

1. Alapok. #!/bin/bash

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

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

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3)

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)

2019, Funkcionális programozás. 2. el adás. MÁRTON Gyöngyvér

Bánsághi Anna 2014 Bánsághi Anna 1 of 33

Operációs Rendszerek II. labor. 2. alkalom

Lekérdezések az SQL-ben 1.rész

Memóriagazdálkodás. Kódgenerálás. Kódoptimalizálás

Adatok szűrése, rendezése

Szoftvertechnológia alapjai Java előadások

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

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

Pénzügyi algoritmusok

A Python programozási nyelv

Programozási nyelvek (ADA)

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

Lekérdezések az SQL-ben 1.rész

A programozás alapjai

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 2. előadás

Dr. Schuster György február / 32

Adminisztrációs feladatok Strukturált programok A C programnyelv elemei

Komputeralgebra Rendszerek

Programozás I gyakorlat

2018, Diszkrét matematika

Hálózatok építése és üzemeltetése

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

Bevezetés a programozásba I.

Járműfedélzeti rendszerek II. 2. előadás Dr. Bécsi Tamás

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

Az UPPAAL egyes modellezési lehetőségeinek összefoglalása. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv

Feldspar: Nyelv digitális jelfeldolgozáshoz

A C# PROGRAMOZÁSI NYELV

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

S z á m í t ó g é p e s a l a p i s m e r e t e k

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

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

Intermec EasyCoder PM4i nyomtató programozásának alapjai Intermec Fingerprint v8.00 nyelven

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

Kifejezések. A programozás alapjai előadás. Operátorok. Kifejezések. Operátorok precedenciája. Operátorok precedenciája

Programozási nyelvek JAVA EA+GY 1. gyakolat

Haladó DBMS ismeretek 1

5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás

Átírás:

Komputeralgebra Rendszerek Programozás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. február 23. TARTALOMJEGYZÉK 1 of 28

TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Értékadás MAPLE -ben SAGE -ben 3 Feltételes utasítás Az if a MAPLE -ben if a SAGE -ben 4 Ciklusok Ciklusok a MAPLE -ben for...from ciklus for/in ciklus while ciklus Általános ciklusok Ciklusok a SAGE -ben TARTALOMJEGYZÉK 2 of 28

Értékadás 3 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn);

Értékadás 4 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name)

Értékadás 5 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name) Hozzárendelés visszavonása (a szimbólum azért marad):

Értékadás 6 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name) Hozzárendelés visszavonása (a szimbólum azért marad): name := name

Értékadás 7 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name) Hozzárendelés visszavonása (a szimbólum azért marad): name := name unassign( name1, name2,...)

Értékadás 8 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name) Hozzárendelés visszavonása (a szimbólum azért marad): name := name unassign( name1, name2,...) evaln( name );

Értékadás 9 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name) Hozzárendelés visszavonása (a szimbólum azért marad): name := name unassign( name1, name2,...) evaln( name ); Az assign utasítás: assign(a,b), assign(a=b), assign(l): mindkét oldal kiértékelése

Értékadás 10 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name) Hozzárendelés visszavonása (a szimbólum azért marad): name := name unassign( name1, name2,...) evaln( name ); Az assign utasítás: assign(a,b), assign(a=b), assign(l): mindkét oldal kiértékelése a,b paraméterek: a = b (egyszerű változókra)

Értékadás 11 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name) Hozzárendelés visszavonása (a szimbólum azért marad): name := name unassign( name1, name2,...) evaln( name ); Az assign utasítás: assign(a,b), assign(a=b), assign(l): mindkét oldal kiértékelése a,b paraméterek: a = b (egyszerű változókra) A,B paraméterek: A,B azonos hosszú kifejezés-sorozat

Értékadás 12 of 28 AZ ÉRTÉKADÁS ÉS A MAPLE name := expr; (name1,..., namen) := (expr1,..., exprn); Tesztelés: assigned(name) Hozzárendelés visszavonása (a szimbólum azért marad): name := name unassign( name1, name2,...) evaln( name ); Az assign utasítás: assign(a,b), assign(a=b), assign(l): mindkét oldal kiértékelése a,b paraméterek: a = b (egyszerű változókra) A,B paraméterek: A,B azonos hosszú kifejezés-sorozat L paraméter: L egyenletek listája vagy halmaza.

Értékadás 13 of 28 AZ ÉRTÉKADÁS ÉS A SAGE Az x változót kivéve kötelező a [varlist =] var( [varlist] ) deklaráció, ez egyben a meglévő változók értékeit meg is szünteti

Értékadás 14 of 28 AZ ÉRTÉKADÁS ÉS A SAGE Az x változót kivéve kötelező a [varlist =] var( [varlist] ) deklaráció, ez egyben a meglévő változók értékeit meg is szünteti Értékadás: var = kif

Értékadás 15 of 28 AZ ÉRTÉKADÁS ÉS A SAGE Az x változót kivéve kötelező a [varlist =] var( [varlist] ) deklaráció, ez egyben a meglévő változók értékeit meg is szünteti Értékadás: var = kif Ugyanúgy megy a var1, var2,...= kif1, kif2,... forma is. Azonos számú változó és kifejezést esetén mindegyik változóba a megfelelő érték kerül.

Értékadás 16 of 28 AZ ÉRTÉKADÁS ÉS A SAGE Az x változót kivéve kötelező a [varlist =] var( [varlist] ) deklaráció, ez egyben a meglévő változók értékeit meg is szünteti Értékadás: var = kif Ugyanúgy megy a var1, var2,...= kif1, kif2,... forma is. Azonos számú változó és kifejezést esetén mindegyik változóba a megfelelő érték kerül. Ha csak egy változó és több kifejezés van, akkor a változóba egy tuple kerül (rendezett konstans lista)

Feltételes utasítás 17 of 28 FELTÉTELES UTASÍTÁS I if cond1 then statement_sequ1 elif cond2 then statement_sequ2 elif cond3 then statement_sequ3... else statement_sequn end if

Feltételes utasítás 18 of 28 FELTÉTELES UTASÍTÁS II Feltételes kifejezések konstruálása és kiértékelése: Relációs műveletek: <, <=, =, >=, >, <> Logikai műveletek - and, or, xor, implies, not Logikai nevek- true, false, FAIL Kiértékelés: evalb, testeq, vagy is Megjegyzés A logika logika háromértékű: true, false és FAIL

Feltételes utasítás 19 of 28 FELTÉTELES UTASÍTÁS if cond1: statement_sequ1 elif cond2: statement_sequ2 elif cond3: statement_sequ3... else: statement_sequn Nincs blokkvége, a kettőspont kötelező

Feltételes utasítás 20 of 28 FELTÉTELES KIFEJEZÉSEK KONSTRUÁLÁSA Feltételvizsgálat: kif1 == kif2 vagy kif1 is kif2

Feltételes utasítás 21 of 28 FELTÉTELES KIFEJEZÉSEK KONSTRUÁLÁSA Feltételvizsgálat: kif1 == kif2 vagy kif1 is kif2 Logikai operátorok: and, or, not

Feltételes utasítás 22 of 28 FELTÉTELES KIFEJEZÉSEK KONSTRUÁLÁSA Feltételvizsgálat: kif1 == kif2 vagy kif1 is kif2 Logikai operátorok: and, or, not A logikai kiértékelések természetesebbek a MAPLE -énál

Ciklusok 23 of 28 F O R...F R O M CIKLUS for counter from init by increment to final do statement_seq end do A from, a by és a to klauza opcionális, sorrendjük tetszőleges. A default értékek: by =1, from = 0.

Ciklusok 24 of 28 FOR/IN CIKLUS for variable in expr do statement_seq end do Az "expr" (iterálható struktúra) minden komponesén végigszalad a változó és végrehajtja az utasításokat. Ilyen pl a PHP foreach ciklusa.

Ciklusok 25 of 28 W H I L E CIKLUS while cond do statement_seq end do

Ciklusok 26 of 28 ÁLTALÁNOS CIKLUSOK for counter from init by increment to final while cond do statement_seq end do for variable in expr statement_seq end do while cond do Ciklusfutás befolyásolása : break,next

Ciklusok 27 of 28 A F O R ITERÁCIÓ I for counter in range(): statement_seq A range paraméterei a szokásos kezdőérték (a default 0), végérték és léptetés (default = 1). A más nyelvekben szokásostól, a végértékre már nem fut le a ciklus, mert itt futások számát jelenti. Variánsai: range : egy listát állít elő xrange : nem listat készít, hanem iterátort, ezért gyorsabb srange : a leglassab, szintén listát készít, továbbparaméterezhető

Ciklusok 28 of 28 A F O R ITERÁCIÓ II for counter in obj: statement_seq Itt az obj egy iterálható objektum, többnyire lista. A kettőspont itt is kötelező, a ciklustörzs adig tart, míg ki nem lépünk az indentálásból.

Ciklusok 29 of 28 A W H I L E CIKLUS wile logikai_felt: statement_seq A szokásos while szerkezet a Pythonos-szintaxissal.