Programovací jazyk Pascal

Podobné dokumenty
Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky

Programovací jazyk. - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi)

Algoritmizace prostorových úloh

- speciální symboly + - * / =., < > <> <= >= a další. Klíčová slova jsou chráněnými útvary, které nelze použít ve významu identifikátorů.

Identifikátory označují objekty v programu používané (proměnné, typy, podprogramy).

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

NPRG030 Programování I, 2010/11

Algoritmizace prostorových úloh

NPRG030 Programování I, 2016/17 1 / :58:13

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

Algoritmizace a programování

Příklady: (y + (sin(2*x) + 1)*2)/ /2 * 5 = 8.5 (1+3)/2 * 5 = /(2 * 5) = 1.3. Pavel Töpfer, 2017 Programování 1-3 1

VY_32_INOVACE_08_2_04_PR

Sada 1 - Základy programování

- znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Úvod do programovacích jazyků (Java)

Činnost: 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V.

Paměť počítače. alg2 1

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

ALGORITMIZACE A PROGRAMOVÁNÍ

NPRG030 Programování I, 2017/18 1 / :22:16

Sada 1 - Základy programování

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program

Úvod do programování

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

dovolují dělení velkých úloh na menší = dekompozice

type Obdelnik = array [1..3, 1..4] of integer; var M: Obdelnik;

PODPROGRAMY PROCEDURY A FUNKCE

Programovací jazyk PASCAL Turbo

2.1 Podmínka typu case Cykly Cyklus s podmínkou na začátku Cyklus s podmínkou na konci... 5

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

6 Příkazy řízení toku

Zápis programu v jazyce C#

Algoritmizace a programování

Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy

Algoritmizace a programování

Sada 1 - Základy programování

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

DUM 07 téma: Proměnné, konstanty a pohyb po buňkách ve VBA

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných

Základy programovacího jazyka Turbo Pascal

Object Pascal je přísně typový procedurální jazyk, který umožňuje jak strukturované, tak objektově orientované programování.

6. Příkazy a řídící struktury v Javě

Souhrn Apendixu A doporučení VHDL

PROGRAMOVÁNÍ V SHELLU

1 PRVOCISLA: KRATKY UKAZKOVY PRIKLAD NA DEMONSTRACI BALIKU WEB 1

Výrazy, operace, příkazy

2 Strukturované datové typy Pole Záznam Množina... 4

5 Přehled operátorů, příkazy, přetypování

Algoritmy a datové struktury 1

NPRG030 Programování I, 2015/16 1 / :25:32

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

Závěrečná zkouška z informatiky 2011

Příkazy preprocesoru - Před překladem kódu překladačem mu předpřipraví kód preprocesor - Preprocesor vypouští nadbytečné (prázdné) mezery a řádky -

NPRG030 Programování I, 2018/19 1 / :25:37

Jazyk C Program v jazyku C má následující strukturu: konstanty nebo proměnné musí Jednoduché datové typy: Strukturované datové typy Výrazy operátory

ALGORITMY A PROGRAMOVÁNÍ (ÚVOD)

Jazyk C# a platforma.net

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

PODPORA ELEKTRONICKÝCH FOREM VÝUKY

7. Datové typy v Javě

Přednáška 7. Celočíselná aritmetika. Návratový kód. Příkazy pro větvení výpočtu. Cykly. Předčasné ukončení cyklu.

Algoritmizace a programování. Ak. rok 2012/2013 vbp 1. ze 44

Pseudonáhodná čísla = algoritmicky generovaná náhrada za náhodná čísla

Uplatnění metod na zvolený jazyk

Datové typy strana 29

Úvod do programování. Lekce 1

Řídicí struktury. alg3 1

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost

Řízení toku programu Programátor musí být schopen nějak ovlivňovat běh programu a k tomu má několik možností:

Algoritmizace prostorových úloh

Příloha Jazyk Coach

O datových typech a jejich kontrole

Programy na PODMÍNĚNÝ příkaz IF a CASE

Visual Basic for Applications

Jazyk VHDL konstanty, signály a proměnné. Jazyk VHDL paralelní a sekvenční doména. Kurz A0B38FPGA Aplikace hradlových polí

Programovací jazyk C++ Hodina 1

- znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku

Sada 1 - PHP. 03. Proměnné, konstanty

Algoritmy I. Cvičení č. 2, 3 ALGI 2018/19

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh. Ing. Hodál Jaroslav, Ph.D. VY_32_INOVACE_25 09

Ing. Igor Kopetschke TUL, NTI

LEKCE 6. Operátory. V této lekci najdete:

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu

MQL4 COURSE. By Coders guru -3 DATA TYPES. Doufám, že předchozí lekce SYNTAX se vám líbila. V té jsme se pokoušeli zodpovědět:

VÝRAZY výrazy = operandy prokládané operátory, vyhodnocované podle priority operátorů

Prezentace a vysvětlení programového prostředí NXC

Úvod do programování - Java. Cvičení č.4

Sada 1 - Základy programování

Basic256 - úvod do programování Příklady. ing. petr polách

NPRG030 Programování I RNDr.Tomáš Holan, Ph.D. 4.patro, č

Klasický podprogram, který nazýváme procedura. Jedná se v podstatě o příkaz. 1

Soubory. Hung Hoang Dieu. Department of Mathematics Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague 1 / 7

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b

Programování v jazyce JavaScript

Transkript:

Programovací jazyk Pascal Syntaktická pravidla (syntaxe jazyka) přesná pravidla pro zápis příkazů Sémantická pravidla (sémantika jazyka) pravidla, která každému příkazu přiřadí přesný význam Všechny konstrukce jazyka Pascal jsou vytvořeny z tzv přípustných symbolů, které tvoří jeho abecedu Abeceda jazyka Pascal písmena anglické abecedy ( A, B,, Z, a, b,, z) číslice desítkové čís soustavy (0,1,2,3,4,5,6,7,8,9) speciální symboly (+, -, *,/, <>, <, >, <=, >=, (, ), {, }, [, ], :=,,,, ;, :,, ^, ', #, @, klíčová slova (begin, repeat, var, end, )) Vyšší jazykové konstrukce tvoří tzv lexikální jednotky (slova) Mezi lexikální jednotky řadíme: identifikátory, čísla, znakové řetězce, návěští (popis viz níže) V programu se lexikální jednotky oddělují pomocí oddělovačů lexikálních jednotek, mezi které patří: mezera oddělovač řádků komentář Mezi dvěma lexikálními jednotkami může být libovolný počet oddělovačů, ale vždy alespoň jeden Identifikátory se používají pro označení různých objektů v programu (proměnné, typy, konstanty, procedury a funkce, programy, ) jsou tvořeny posloupností písmen a číslic, začínající písmenem (příp znakem podtržítko ) významy některých identifikátorů (integer, boolean, ) jsou definovány jazykem, tyto identifikátory označujeme jako standardní nerozlišují se malá a velká písmena vhodnou volbou identifikátorů při psaní programu se snažíme zvýšit čitelnost a srozumitelnost programu Identifikátory volíme tedy tak, aby co nejvíce vystihovaly význam toho, co pojmenovávají Čísla Pro zápis celých i reálných čísel v jazyku Pascal obvykle používáme zápis v desítkové soustavě: celá čísla (např 12, -48, 0, +9) reálná čísla desetinný tvar : 02, +159, -78963 semilogaritmický tvar : 4E3, 5E-19, +25E14 (E "krát 10 na ") V Pascalu můžeme také použít čísla v šestnáctkové (hexadecimální) soustavě, tato čísla musí být uvozena znakem $ ( $10, $AA05, $FFFF ) Znakový řetězec je posloupnost znaků abecedy jazyka Pascal uzavřená do apostrofů ('ssss', '123ABC ) řetězec, který nemá nic uvedeno mezi apostrofy, se nazývá prázdný řetězec ( '' ) pokud chceme použít znak apostrof v řetězci musíme tento znak zdvojit ( 'A''B' ) Návěští Návěští slouží k předznačení příkazů Umožňuje předat tomuto příkazu řízení explicitním způsobem pomocí příkazu skoku Návěští zapisujeme jako posloupnost číslic (12, 5, ) Komentář slouží jako oddělovač lexikálních jednotek pomocí komentáře lze přímo v programu popsat význam různých proměnných, částí programu, apod, zlepšuje se tím čitelnost programu je řetězec přípustných znaků uzavřených v { } nebo v (* *) je ignorován kompilátorem

Výrazy Posloupnosti příkazů se předepisují pomocí výrazů Výraz je předpis pro výpočet hodnoty (číselné, logické) Výrazy obsahují: a) operandy (proměnné, konstanty) b) operátory c) funkce d) kulaté závorky Vyhodnocení výrazu je provedení všech operací předepsaných výrazem, výsledkem tohoto vyhodnocení je hodnota výrazu Jednotlivé operace předepsané výrazem se provádějí postupně zleva doprava s ohledem na prioritu operátorů a na závorky Podle priority dělíme operátory do čtyř skupin: a) not nejvyšší priorita b) / div mod and c) + - or d) = <> < > <= >= nejnižší priorita a) výrazem je i samostatná konstanta nebo proměnná b) A * 7 + I DIV 2 - J MOD 3 c) A - I / J * K d) A + B < I * J e) P OR Q AND R f) P = Q AND R g) SQR(A) + 2 * SQRT(B) Typ hodnoty výrazu určuje typ výrazu: a) výraz, jehož hodnotou je číselná hodnota se nazývá aritmetický výraz (A*7+2 div C) b) výraz, jehož hodnotou je logická hodnota (true, false) se nazývá logický výraz (A > 2) Poznámka: v matematice: v prog jazyku: 0 <= i <= max (0<=i) and (i<=max) Konstanty a proměnné Konstanty a proměnné používáme pro reprezentaci hodnot v programu Proměnná Proměnná je datový objekt (paměťové místo), který může během realizace programu nabývat různé hodnoty Každá proměnná může nabývat hodnoty určitého datového typu, říkáme, že proměnná je určitého datového typu Každá proměnná je označena identifikátorem Každou proměnnou, kterou v programu využíváme, musíme předem deklarovat (popsat) v části definic a deklarací Deklarací proměnné určujeme její: identifikátor, prostřednictvím kterého se na proměnnou odkazujeme datový typ, který specifikuje množinu přípustných hodnot, kterých může proměnná nabývat, a množinu operací, které můžeme s danou proměnnou provádět var Soucet : integer; Prumer : real; Znak : char; Typ proměnné může být určen: identifikátorem typu (var A : integer) popisem typu (var B : 1002000) C := 12; A := 1253;

Znak := 'A'; Read(B); Proměnné lze přiřadit pouze takovou hodnotu, která patří do množiny přípustných hodnot specifikované datovým typem proměnné Každou proměnnou, jejíž první výskyt v programu je součástí výrazu na pravé straně přiřazovacího příkazu, je třeba inicializovat (nastavit počáteční hodnotu) Konstanty Konstantou rozumíme konkrétní hodnotu příslušného datového typu (-123, 'B', true) Přímý zápis hodnoty v programu se nazývá literál ( -123, 'B', true ) V programech je však možné hodnotu pojmenovat a pak místo literálu používat příslušný identifikátor Identifikátory konstant se zavádějí v části definic konstant Definice konstanty: const identifikátor konstanty = konstanta; const PocetOpakovani=10; PI = 3,14159; Mezera = ' '; for I:=1 to PocetOpakovani do Write(Mezera); Používání identifikátorů konstant: zvyšuje srozumitelnost programu zjednodušuje modifikovatelnost programu Konkrétní hodnota je uvedena na jediném místě Pokud ji později potřebujete změnit, upravíte jedinou definici a máte zaručeno, že v celém programu bude používáno správné číslo Každá konstanta je určitého datového typu Hodnota a typ pojmenované konstanty je určen pravou stranou v definici konstanty Hodnotu nového identifikátoru konstanty lze určit nejen pomocí literálu, ale také pomocí identifikátoru konstanty const Max=1000; Min= - Max; Konstantní výrazy Konstantní výraz je takový výraz, který může vyhodnotit kompilátor ještě před spuštěním programu Nejjednodušším konstantním výrazem je jednoduchá konstanta ( 45, 'G') const Cislo=100; Znak='D'; Hodnota=(25+1)/ (25-1) Slovo='Turbo'+'Pascal'; Mezera=Chr(32); PocetPismen=Ord('Z')-Ord('A')+1; Typové konstanty Typové konstanty si můžeme představit jako proměnné s počáteční hodnotou Typové konstanty se od běžných liší zejména tím, že jejich deklarace určuje kromě hodnoty i typ nové konstanty Program může počáteční hodnotu typové konstanty později měnit Typové konstanty se inicializují pouze jednou, na úplném začátku programu, inicializace lokálních konstant s typem se tedy neopakuje při každém vstupu do podprogramu const Min: integer = -100; Ret : String[6] = 'Slovo';

Struktura programu v jazyku Pascal program název; (hlavička programu) deklarační a definiční část; begin příkazová část; (hlavní program) end Deklarační a definiční část obsahuje: definice návěští definice konstant definice typů deklarace proměnných deklarace procedur a funkcí Příkazová část obsahuje posloupnost příkazů jazyka Rozdělení příkazů jazyka Pascal příkaz vstupu příkaz výstupu jednoduché přiřazovací příkaz volání procedury příkazy prázdný příkaz sekvence (složený příkaz) strukturované podmíněný příkaz cyklus Zápisy jednotlivých příkazů v Pascalu Přiřazovací příkaz Při zpracování přiřazovacího příkazu se nejprve vyhodnotí výraz na prvé straně příkazu a hodnota výrazu se přiřadí proměnné uvedené na levé straně proměnná := výraz ; Příkaz vstupu Read ( seznam proměnných ); Readln ( seznam proměnných ); Seznam proměnných je seznam identifikátorů proměnných oddělených čárkami Příkaz výstupu Write ( seznam výrazů ); Writeln ( seznam výrazů ); Sekvence begin příkaz1; příkaz2; příkazn; end; Podmíněný příkaz a) neúplný podmíněný příkaz if logický výraz then příkaz; b) úplný podmíněný příkaz if logický výraz then příkaz1 else příkaz2; c) vícenásobné větvení case výraz ordinálního typu of hodnoty1 : příkaz1;

hodnotyn : příkazn; else příkaz; end; Cykly a) cyklus s podmínkou na začátku while logický výraz do příkaz; b) cyklus s podmínkou na konci repeat příkaz until logický výraz ; c) cyklus s daným počtem opakování for proměnná ord typu := výraz ord typu to výraz ord typu do příkaz; for proměnná ord typu := výraz ord typu downto výraz ord typu do příkaz;