Upload
ishi
View
48
Download
0
Embed Size (px)
DESCRIPTION
Začínáme s Pascalem. 1. kapitola. Základní pravidla a pojmy. identifikátor = to je jméno jakéhokoliv objektu, který si ve vašem programu sami vytvoříte Pravidla pro názvy identifikátorů: skládají se pouze z písmen (bez diakritiky), čísel a podtržítek ( _ ) začínají písmenem - PowerPoint PPT Presentation
Citation preview
Začínáme s Pascalem1. kapitola
Základní pravidla a pojmyidentifikátor = to je jméno jakéhokoliv objektu,který si ve vašem programu sami vytvořítePravidla pro názvy identifikátorů: skládají se pouze z písmen (bez diakritiky),
čísel a podtržítek ( _ ) začínají písmenem nejsou to vyhrazená slova (ta poznáte tak, že
jsou zobrazena bíle a tučně)
Základní pravidla a pojmy jeden identifikátor označuje vždy jen jeden objekt názvy se volí krátké, stručné a výstižné Pascal rozlišuje pouze prvních šedesát tři znaků Pascal nerozlišuje velká a malá písmena (Ruda a
rUda je jeden a ten samý identifikátor) ale určitý identifikátor by se vždy měl psát stejně
(tedy ne jednou Ahoj a podruhé aHoJ) neměli bychom používat názvy, které již k něčemu
slouží
Základní pravidla a pojmyNejkratší program v Pascalu vypadá takto :
Program NázevProgramu;
Begin
End. Vyhrazená slova identifikátor
POZOR! Za prvním řádkem musí být středník a za posledním tečka.
Základní pravidla a pojmy komentář = text, který do
programu vkládáme, abychom se v něm později vyznali
samotné komentáře se uzavírají do složených závorek a můžou obsahovat úplně všechno kromě konce složené závorky - taky se vyhýbejte smajlíkovi *)
Program Komentar; {Tento progam nám ukazuje, jak používat komentáře}
Begin {Za tento komentář lze
vložit skutečné příkazy} End.
První příkazy překladač = program, co spouští naše dílko a v případě chyby nás
upozorní příkazy se píší mezi Begin a End. a každý končí středníkem (;)1. Readln; - ten zastaví program a počká na stisk klávesy ENTER2. nejdůležitějším příkazem je Write('Text');- na obrazovku vypíše text, který jsme uzavřeli do apostrofů (obsahuje-li text
apostrof, musíme ho zdvojit)Write('Apostrof je tento znak '' a píše se takto ''''');
3. druhým nejdůležitějším příkazem je Writeln('Text');- ten dělá to samé, co Write, ale pak skočí na další řádek obrazovky
První příkazyProgram Ahoj; {Napíše na obrazovku ahoj a počká na stisk
klávesy ENTER} Begin Write('A'); Write('hoj'); Readln; {Abychom na obrazovce také něco zahlédli,
že...} End.
První příkazy v Pascalu jsou jednotlivé
příkazy děleny do menších podskupin (jednotek)
v každém programu můžeme používat příkazy jednotky System (zde jsou umístěny ty nejdůležitější)
pokud však chceme používat i další příkazy, musíme to překladači nějak oznámit
k tomu slouží slovo uses například v jednotce Crt ( pro
procesory rychlejší než 200 MHz je to Crtp2) jsou příkazy pro práci s textem, chceme-li je používat, musíme napsat:
Program Text;
Uses Crt (Crtp2);
Begin
End.
První příkazyPříkazy jednotky Crt (Crtp2):
ClrScr; ten smaže obrazovku
druhým příkazem je Sound(frekvence); - způsobí, že speaker začne vydávat zvuk o dané frekvenci
dalším příkazem je Delay(Ms); - zastaví běh programu na dobu Ms
milisekund; NoSound;
- ukončí vydávaný zvuk
TextColor(Číslo); - změní barvu textu na barvu s daným číslem - čísla mohou být od jedné do šestnácti
Program Pistala; {Jediné, co to umí je deset sekund pištět}
Uses Crtp2; Begin
Write('Budu pistet'); Sound(440);
{Frekvence komorního a} Delay(5000);
{Pět sekund počkej} ClrScr;
{Smaž to odpornou hlášku} Delay(5000);
{Počkej dalších pět sekund} Nosound;
{Než program ukončíme, je lepší přestat s tím odporným zvukem, později už to nepůjde}
End.
Proměnnévýraz = posloupnost
proměnných či čísel spojená operátory (či samotná proměnná)
data = soubor jakéhokoliv množství jakýchkoliv informací
proměnná = místo pro data
Program Pocitej;
Begin
write(´16+7=´);
writeln(16+7);
readln;
End.
Proměnné jednotlivé části výrazu
mohou být například čísla - ta se pak spojují pomocí
operátorů (+, -, * , /) Pascal má dva zvláštní
operátory div a mod div značí celočíselné dělení mod je zbytek po tomto
dělení
Př.:
16 div 3 = 5 20 div 13 = 1
16 mod 3 = 1 20 mod 13 = 7
Pravidla: Násobení a dělení má
přednost před sčítáním a odčítáním
16 + 11 div 5 * 3 = 22 (násobení a dělení pak zleva doprava)
Proměnné Všechna používána data se musí někam
uložit, aby mohla být později zpracována Místo k uložení dat – příkaz var uvádí se mezi uses a begin v příkazu var uvádíme, jaký typ dat chceme
vkládatPř.: var NázevProměnné : TypProměnné;
var n:integer;
ProměnnéTyp
proměnnéTyp
proměnnéMinimum Maximum
celočíselná Integer cca – 32 000 cca 32 000
reálná Real -1039 1039
znak char #0 (dolní znak ASCII)
horní znak ASCII
string řetězec ´´ prázdný řetězec
255 různých znaků
Proměnné nejjednodušším příkazem pro práci s
proměnnými je takzvané přiřazení to má tvar NázevProměnné := Výraz;
Př.: A:=13+15 - poté bude mít A=28
max:=0 – proměnná max bude rovna 0 původní hodnota proměnné se nenávratně
ztratí
Proměnné chceme-li načíst hodnotu z klávesnice,
přiřazení nestačí slouží k tomu již známý příkaz Readln; ve formě Readln(NázevProměnné);
- zastaví běh programu a čeká, až něco zadáte
z klávesnice
Př.: Readln(A,B);
ProměnnéPříklad:Program Secti; Uses Crtp2;Var A,B,Vysledek : Integer; Begin
ClrScr; Writeln('Zadejte dvě celá čísla'); Readln(A,B);Vysledek:=A+B; Writeln(A,' + ',B,' = ', Vysledek); Readln;
End.
program sečte dvě celá čísla zadaná uživatelem
vypočteme výsledek
vypíše – co jsme vypočítalinesmí chybět – chceme něco vidět zobrazeno
nemáte-li Crtp2, můžete vynechat
je možné zadat i více proměnných najednou
není nutné
načteme čísla –zase najednou
program Vypocet_objemu_koule;uses crt;var objem, povrch, polomer :real;beginclrscr;writeln('Tento program vypocte objem a povrch koule ze zadaneho polomeru.'); write('Vloz polomer koule: ');readln(polomer);objem := (4/3) * pi * (polomer * polomer * polomer);povrch := 4 * pi * (polomer * polomer);writeln('Objem koule je: ',objem:8:2,'.');writeln('Povrch koule je: ',povrch:8:2,'.');writeln;writeln('Stiskni ENTER ...');readln;end.
program Vypocet_vody_v_litrech;uses crt;var vyska, polomer, objem : real;begin
clrscr;writeln('Tento program vypočte objem vody v nádobě z vloženého poloměru a výšky nádoby.'); write('Vlož poloměr nádoby v centimetrech: ');
readln(polomer); write('Vlož výšku nádoby v centimetrech: '); readln(vyska); objem := ((pi * vyska) * (polomer * polomer))/1000; writeln('Do nádoby se vejde: ',objem:8:2,' litru vody.'); writeln; writeln('Stiskni ENTER ...'); readln;end.
program Prevod_ms_na_kmh;uses crt;var a, b :real;
begin clrscr; writeln('Tento program převádí m/s na km/h.'); write('Vlož hodnotu ms/s: '); readln(a); b := a * 3.6; writeln('Hodnota ',a:8:2,' m/s je rovna ',b:8:2,' km/h.'); writeln; writeln('Stiskni ENTER ...'); readln;end.
program Vypocet_vykonane_prace_v_procentech;
uses crt;var plan, vyrobeno, vykon :real;
begin clrscr; writeln('Tento program v procentech určí poměr vykonané práce vůči planu.'); write('Vlož počet plánovaných výrobků: '); readln(plan); write('Vlož počet skutečně vyrobených výrobků: '); readln(vyrobeno); vykon := (vyrobeno * 100) / plan; writeln('Podnik splnil plán výroby na ',vykon:8:2,'%.'); writeln; writeln('Stiskni ENTER ...'); readln;end.
program Vypocet_delky_prepony;
uses crt;
var preponaa, preponab, odvesna: real;
begin clrscr; writeln('Tento program vypočte délku přepony pravoúhlého trojúhelníka z jeho odvěsen.'); write('Vlož délku první přepony: '); readln(preponaa); write('Vlož délku druhé přepony: '); readln(preponab); odvesna := sqrt(preponaa * preponaa + preponab * preponab); writeln('Odvěsna má délku: ',odvesna:8:2,'.'); writeln; writeln('Stiskni ENTER ...'); readln;end.
Konstanty konstanta – definujeme pokud obsah nějaké
proměnné zůstává vždy stejný const NázevKonstanty = Hodnota takto se nejčastěji definují proměnné, které se
nemění během programu a které chce měnit pouze programátor
samotné const se nejčastěji píše ještě před var a jiné definice
Řízení programusamotné řízení programu lze rozdělit na dvě části- rozhodování a cykly
a) ROZHODOVÁNÍ- vytvoříme jednoduchou podmínku - k tomu slouží znaky (a dvojznaky) >, <, =,
=>, =<, <>. (Větší, menší, rovná se, větší nebo rovno, menší nebo rovno, nerovná se)
Řízení programu nejčastěji se pomocí podmínek testují
proměnné Např.: podmínka tedy vypadá třeba takto A = 5 podmínka může být buď nastat (A je skutečně
pět) nebo nenastat (A je cokoliv jiného) v případě že je podmínka splněna, říkáme že
je pravdivá (true), jinak je nepravdivá(fals)
Řízení programupodmínky složené vznikají z jednoduchých pomocí
logických spojek: and = a současně, or = nebo
A B A and B A or Bfals fals fals fals
fals true fals true
true fals fals true
true true true true
Řízení programuPascal a rozhodování –podmínka:if Podmínka then Příkaz; - v případě, že je
splněna podmínka, provede se příkaz př.:if (5+2)=7 then Writeln('Umím počítat'); -
text se napíše if (A=0) or (A<>0) then writeln('A tohle
napíši vždy'); !složené podmínky vždy závorkujte!
Řízení programu občas potřebujeme rozhodnout, zda je
podmínka splněna (a něco provést), či není (a v tom případě udělat něco jiného)
pak použijeme if Podmínka then Příkaz1 else Příkaz2; (za Příkaz1 nesmíme psát středník) Příkaz1 se provede, je-li podmínka splněna; Příkaz2 se provede, pokud podmínka splněna není