1 / 15

Materiály k přednášce Úvod do programování

Materiály k přednášce Úvod do programování. Ondřej Čepek. Jednoduché typy v Pascalu. INTEGER celá čísla REAL reálná (racionální) čísla CHAR znaky BOOLEAN logické hodnoty (ano/ne) (s tímto pro začátek vystačíme). Konstanty a proměnné. INTEGER 3, -5, 276, … REAL 2.81, -3.14, …

erik
Download Presentation

Materiály k přednášce Úvod do programování

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Materiály k přednášce Úvod do programování Ondřej Čepek

  2. Jednoduché typy v Pascalu • INTEGER celá čísla • REAL reálná (racionální) čísla • CHAR znaky • BOOLEAN logické hodnoty (ano/ne) (s tímto pro začátek vystačíme)

  3. Konstanty a proměnné • INTEGER3, -5, 276, … • REAL 2.81, -3.14, … • CHAR ‘A’, ‘a’, ‘%’, ‘6’, … • BOOLEAN true, false Proměnné jsou reprezentovány identifikátory = řetězec písmen a číslic začínající písmenem (anglická abeceda bez diakritiky, musí být různé od všech klíčových slov)

  4. Výrazy • INTEGER a REAL proměnné a konstanty skládáme pomocí aritmetických operátorů+,-,*,/ a závorek (,) (3 + delka) / 2, 4 * (A – B), … • CHARvystačíme s proměnnými a konstantami • BOOLEAN výrazy typů INTEGER, REAL, CHAR skládáme pomocírelačních operátorů <,>,=,<>,<=,>= A >= X+2, Y <> ‘a’, prumer/2 < 2.58, … výrazy typu BOOLEAN pomocí NOT, AND, OR (A > 2) AND (A < 5), …

  5. Příkazy Hierarchická struktura (složených) příkazů: BEGIN příkaz; příkaz; … ; příkaz END vnitřní příkazy mohou být opět složené Vstup / Výstup :READ(seznam proměnných) WRITE (seznam výrazů) READLN, WRITELN Přiřazovací příkaz :proměnná := výraz výraz musí být správného typu !!!

  6. Příkazy Podmíněný příkaz (neúplný a úplný): IFBool.výrazTHENpříkaz IFBool.výrazTHENpříkaz1 ELSE příkaz2 Příkaz cyklu (3 druhy): WHILEBool.výrazDOpříkaz REPEATpříkaz UNTIL Bool.výraz FORřídící prom.:=výraz1TOvýraz2DOpříkaz

  7. Struktura programu v Pascalu USESCRT;{používané unity} CONSTdelka = 5;{deklarace konstant} vyska = 3; TYPE … {deklarace datových typů} VARi,j : INTEGER; {deklarace proměnných} PISMENO : CHAR; PROCEDURE … {deklarace podprogramů} FUNCTION … BEGIN … {hlavní program} END.

  8. Typ Pole umožňuje sdružit více položek stejného typu TYPEident.typu=ARRAY [a..b] OFtyp položek; VARseznam ident.proměnných:ident.typu; Příklad: CONSTdim=4; TYPEvektor =ARRAY [1..dim] OFreal; VARx,y : vektor; Pokud nechceme typu dávat jméno, tak lze psát VARx,y :ARRAY [1..dim] OFreal;

  9. Typ Pole vícerozměrné pole: TYPEmatice =ARRAY [1..dim] OFvektor; nebo TYPEmatice =ARRAY [1..dim, 1..dim] OFreal; VARM : matice; přístup k položkám: X[3] třetí položka vektoru x M[2] druhý řádek (vektor) matice M M[2][4] nebo M[2,4]položka ve 2.řádku a 4.sloupci

  10. Typ záznam umožňuje sdružit více položek různých typů TYPEident. typu=RECORDseznam ident. : typ; seznam ident. : typ; …….. END; VARseznam ident.proměnných:ident.typu; Příklad: CONSTpocet=100; delka=20; TYPEzam =RECORD jmeno : ARRAY[1..delka]OF char; plat: integer; END;

  11. Typ záznam VARx : zam; data :ARRAY[1..pocet]OFzam; Přístup k položkám: x.jmeno jméno zaměstnance x data[5].plat plat pátého zaměstnance Zkrácený přístup: WITHxDO BEGIN jmeno := ‘NOVÁK’; suma := plat + data[1].plat END

  12. Typ řetězec usnadňuje práci s řetězci znaků VARseznam proměnných :STRING[výraz] konstanta (výraz z konstant) typu integer v rozmezí 1 - 255 Poznámky: • zápis STRINGje to samé jako STRING[255] • „zhruba“ platí, že STRING[n]je to samé jako ARRAY[1..n]OF char • přístup k položkám je u typů pole a řetězec stejný • v nultém bytu řetězce je uchovávána jeho délka (proto je délka omezena na 255 znaků)

  13. Typ řetězec Výhody typu řetězec (proti poli znaků): • jednodušší čtení (pomocí read a readln) • jednodušší výstup (pomocí write a writeln) • předdefinované funkce a procedury funkce Length(řetězec) funkce Concat(řet1, řet2, … ,řetN) nebo operátor + procedura Str(číselný výraz, řetězec) procedura Val(řetězec, číslo, pozice chyby)

  14. Podprogramy v Pascalu PROCEDUREJMÉNO(seznam předepsaných parametrů); CONST … TYPE … VAR … PROCEDURE … FUNCTION … BEGIN … END; FUNCTIONJMÉNO(sezn. předep. param.) : typ výsledku; blok jako u procedury, v příkazové části bloku je ale funkci přiřazena hodnota příkazem JMÉNO := výraz (přísl.typu)

  15. Podprogramy v Pascalu Seznam předepsaných parametrů : ( [VAR] seznam identifikátorů : typ; … ; … ; … ) Volání podprogramů: pro procedury JMÉNO (seznam skutečných param.) → je to příkaz pro funkce JMÉNO (seznam skutečných param.) → je to výraz (příslušného typu) skutečný parametr = proměnná nebo výraz Způsoby volání parametrů:hodnotou × odkazem Lokální platnost identifikátorů

More Related