Počítače a programování 1 2.přednáška. Základní lexikální struktura programu Program v jazyce Java je tvořen symboly a oddělovači Program Java je psán.

Slides:



Advertisements
Podobné prezentace
A1PRG - Programování – Seminář Ing. Michal Typová konverze, oblast platnosti, paměťové třídy 9 Verze
Advertisements

Základy ukládání dat v počítači
Standardní knihovní funkce pro práci s textovými řetězci
Pro začátek něco lehčího
VISUAL BASIC Práce s řetězci Použitá literatura: Kvoch: Visual Basic 4.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Programování funkcí v Excelu
Základní pojmy v jazyce C
HYPERTEXT PREPROCESSOR. JAZYK PHP. Jazyk PHP (Hypertext PreProcessor) je intepretovaný jazyk určený pro web. Je celkem jednoduchý, snadno přenositelný.
Jazyk VHDL Martin Štěpánek
Prezentace a vysvětlení programového prostředí NXC
VISUAL BASIC Práce se soubory.
Algoritmy I Cvičení č. 2. Cíl hodiny Datové typy a přetypování (int, float, double, bool, char, long, short) Konstanty – Celočíselné Desítkové – 15, 0,
Programování v Pascalu Přednáška 2
Algoritmizace a programování
Druhé cvičení Vytváření identifikátorů Datové typy
Programování v Pascalu Přednáška 7
Materiály k přednášce Úvod do programování Ondřej Čepek.
J a v a Začínáme programovat Lucie Žoltá. Odkazy - oficiální stránky (překladače, help, metody, vývojové prostředí NetBeans,...)
PHP PHP – základy syntaxe (část 1) - 03 Mgr. Josef Nožička IKT PHP
Datové typy 6 A1PRG - Programování – Seminář
Informatika I 3. přednáška
OSNOVA: a) Řetězce v C b) Funkce stdio.h pro řetězce c) Funkce string.h pro řetězce d) Příklad Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače.
Jednoduché datové typy
A1PRG - Programování – Seminář Ing. Michal Operátory (2. část) 4 Verze
Gramatiky a jazyky Přednáška z předmětu Řízení v komplexních systémech
Datové typy a práce s nimi
Alg91 Textové soubory Na rozdíl od jiných typů souborů jsou textové soubory určené pro gramotné lidské oko. Textový soubor je posloupnost znaků členěná.
Počítače a programování 1
Proměnné v PHP Každý programovací jazyk pracuje s nějakými hodnotami. To, do čeho se tyto hodnoty ukládají, se nazývá proměnné. Každý programovací jazyk.
Cvičení.
Radim Farana Podklady pro výuku
3. Příkazy  Příkazy dělíme na jednoduché a strukturované.  Jednoduché příkazy - žádnou jejich dílčí částí neni příkaz - přiřazovací, vstupu a výstupu,
Datové typy a struktury
Programovací jazyk PASCAL
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Návrh a tvorba WWW Přednáška 5 Úvod do jazyka PHP.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Dědičnost - inheritance dědičnost je jednou z forem znovupoužitelnosti dědičnost je jednou z forem znovupoužitelnosti B A Třída A je předkem třídy B Třída.
Výrok „Dostali na to neomezený rozpočet, a podařilo se jim ho překročit …„ (Michael Armstrong, CEO, problém Y2K, )
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
1 Počítače a programování 1 13.přednáška. 2 Obsah přednášky Vstupy a výstupy – 1.část.
PJV011 X36PJV ( Programování v JaVě ) Cílem předmětu je probrat: - základy jazyka a systému Java - nejdůležitější standardní balíčky (packages j2sdk) Organizace.
Počítače a programování 1 7.přednáška. Základy Pole ve třídách a metodách Pole Arrays.
Datové typy a operátory. Co jsou datové typy  Charakterizují proměnnou nebo konstantu – jaká data obsahuje  Data jsou v počítači ukládána jako skupiny.
ZÁKLADNÍ POJMY. ZDROJOVÝ TEXT PROGRAMU Tvoří: klíčová slova komentáře identifikátory.
Jazyk C A0B36PRI - PROGRAMOVÁNÍ Část II.
Jazyk C A0B36PRI - PROGRAMOVÁNÍ Část I.
Petr Chmelař UIFS FIT VUT JAVA pro PDB Kafe? Jako C++ Zrníčka 1 / 12 Java rychlokvaška pro PDB [ ]
Úvod do programování2 Vyučující: Mgr. Vítězslav Jersák Web: xjv.webnode.cz.
Vstup, výstup BI-PA1 Programování a algoritmizace 1, ZS
HYPERTEXT PREPROCESSOR. JAZYK PHP. VYUŽITÍ JAZYKA Programování dynamických internetových stránek a webových aplikací vytvoření šablony webu kniha návštěv.
Jaroslav BURDYS 4IT.  Čistě OOP jazyk (objektově orientovaný programovací jazyk)  Objekty založeny na tzv. objektových typech: Struktura (struct)
Programování KONSTANTY, ČTENÍ PO JEDNOM ZNAKU GETCHAR() FORMÁTOVANÝ VÝSTUP POMOCÍ PRINTF, VÝVOJOVÉ DIAGRAMY, CYKLY.
Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond Gymnázium, Praha 10, Voděradská 2 Projekt OBZORY Datové typy a operátory Základní programové.
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o., Orlová-Lutyně AUTOR: Ing. Adéla Tomalová NÁZEV: Podpora výuky v technických oborech TEMA: Objektově orientované.
Programování ÚVOD, PROMĚNNÉ, OPERÁTORY A PODMÍNĚNÝ PŘÍKAZ ERIK KRÁL.
Makra v Excelu syntaxe. Zápis nahraného makra SubEnd Sub O klíčová slova Sub a End Sub – začátek a konec makra O komentáře O text za znakem ', až do konce.
Programování ENUM, SWITCH,pole jednorozměrná a vícerozměrná, deklarace, inicializace, kopírování, porovnání Erik Král.
Vícerozměrná pole (1) Jazyk C povoluje, aby pole mělo více rozměrů (dimenzí) než jeden Z vícerozměrných polí bývá nejčastěji použí-váno pole dvourozměrné.
Výukový materiál zpracován v rámci projektu
Výukový materiál zpracován v rámci projektu
Výukový materiál zpracován v rámci projektu
Programovací jazyk C Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Jitka Vlčková. Dostupné z Metodického portálu ISSN.
Funkce výstupu (2) Funkce printf: deklarována v: stdio.h
Řetězce (24) Funkce strchr: deklarována v: string.h
Příkazy cyklu (1) Umožňují vícekrát (nebo ani jednou) pro-vést určitý příkaz Jazyk C rozlišuje příkaz cyklu: s podmínkou na začátku: obecný tvar: while.
C# přehled vlastností.
Cyklus for (1) Obecný tvar: for (výraz1; výraz2; výraz3) příkaz
Proměnné (1) Proměnná: Definice proměnných:
Transkript prezentace:

Počítače a programování 1 2.přednáška

Základní lexikální struktura programu Program v jazyce Java je tvořen symboly a oddělovači Program Java je psán v Unicode – 16-ti bitový mezinárodní kód Při překladu programu – sekvence vstupních znaků programu je vnímána jako posloupnost: –Oddělovačů –Komentářů –Symbolů

Základní lexikální struktura programu  Symboly: –Identifikátory –Klíčová slova –Literály –Separátory (závorky) –Operátory –Návěští  Konec řádky – speciální znaky CR nebo LF nebo CR LF  Oddělovače – mezera, tabelátor, oddělovač stránky (FF – Form Feed) a znaky konce řádku

Poznámka Dva sousedící identifikátory, klíčová slova nebo čísla musí být od sebe oddělena alespoň jednou mezerou nebo jiným oddělovačem Přebytečné mezery a oddělovače řádků jsou překladačem ignorovány Java rozlišuje velká a malá písmena (case sensitive)

Komentáře Komentáře překladač ignoruje Tři typy komentářů: 1.Jednořádkový komentář // 2.Komentářový blok /* */ 3.Dokumentační komentář /** */ Poznámka: Není možno použít vnořené komentáře.

Identifikátory Identifikátor může mít libovolnou délku Identifikátor je posloupnost písmen a číslic začínající písmenem nebo podtržítkem Písmeno Číslice Podtržítko Písmeno Podtržítko

Identifikátory Podtržítko: Číslice: _ 09

Identifikátory Písmeno: Hexadecimální číslice: AZaz ČísliceAFaf

Identifikátory Java rozlišuje velká a malá písmena Je nutno dodržovat určité konvence, tzn. způsob zápisu má již předem daný význam Java umožňuje i použití znaků národních abeced – používat velmi uváženě Identifikátor může obsahovat znak $ - pozor, uvedení tohoto znaku má speciální význam Identifikátor nesmí obsahovat mezeru

Identifikátory - konvence –Je nutné dodržovat určité konvence – jsou použity v Java Core API třídy a rozhranní : identifikátor začíná vždy velkým písmenem ostatní písmena jsou malá, u víceslovných – každé slovo začíná velkým písmenem metody a proměnné : začátek malým písmenem, u víceslovných – každé další slovo začíná velkým písmenem balíky : pouze malá písmena (složeniny s tečkou) konstanty : pouze velká písmena, u víceslovných oddělena podtržítkem

Klíčová slova Slova mající v programovacím jazyce svůj speciální význam Identifikátor nesmí být pojmenovaný stejně jako klíčové slovo Klíčová slova neobsahují mezeru

Klíčová slova abstract boolean break byte case catch char class const continue default do double else extends final finally float for goto If Implements Import Instance of int interface long

Klíčová slova native new null package private protected public return short static super switch synchronized this throw throws transient try void volatile while

Literály Literál je reprezentace hodnoty primitivního typu nebo řetězce zapsaná ve zdrojovém tvaru Literály: –IntegerLiteral –FloatLiteral –BooleanLiteral –Characterliteral –StringLiteral –NullLiteral

Proměnné programu Slouží k pojmenování místa v paměti –Obsah tohoto vyhrazeného místa může být měněn Proměnné označují vždy určitý typ obsahu paměťového místa –například pouze celá čísla (integer), nebo pouze reálná čísla (floating point, real), nebo znaky (character)

Vytvoření proměnných Všechny proměnné programu musí být deklarovány před jejich prvním použitím Deklarace proměnné asociuje místo v paměti a specifikuje typ dat, která budou do tohoto místa ukládána: Typ Proměnná_1, Proměnná_2, …; Například deklarace celočíselných proměnných obsahující počty studentů v kroužku a v ročníku: int numberOfKrouzek, totalRocnik;

Přiřazení hodnoty proměnné - operátor přiřazení Operátor přiřazení: “=“ - “rovná se” Pozor – nemá stejný význam jako v matematice, účinek je destruktivní Význam přiřazení: “Přiřazení hodnoty výrazu na pravé straně proměnné na levé straně.”

Přiřazení hodnoty proměnné - operátor přiřazení Přiřazení může přinést změnu na obou stranách přiřazení v následujícím příkladu: int pocet = 10;// inicializace počitadla na 10 pocet = pocet - 1;// snížení hodnoty o 1 –Nová hodnota proměnné pocet = = 9 Poznámka: –Výraz – expression – má vždy hodnotu. –Přiřazení – assigment – je výraz a jeho hodnotou je hodnota přiřazená na levé straně. –Příkaz – statement – se stává příkazem, je-li ukončeno středníkem.

Inicializace proměnných Inicializace hodnot proměnných může a nemusí být provedena současně s deklarací: // Následující proměnné jsou deklarovány, ale nejsou inicializovány // mají neznámou hodnotu int pocetOfKrouzek, pocetOfRocnik, pocetOfProgramator; //Tyto proměnné jsou deklarovány a inicializovány na hodnotu 0 int pocetOfKrouzek = 0; int pocetOfRocnik = 0; int pocetOfProgramator = 0; Doporučení: je dobrým programátorským zvykem vždy proměnné inicializovat.

Změna hodnoty proměnných Hodnota proměnné je v průběhu programu měněna Může být měněna pomocí přiřazení (například na základě výpočtu): pocetOfRocnik = pocetOfKrouzek * 15; Nebo přečtením ze standardního vstupu ( klávesnice): pocetOfRocnik = MojeIn.readLineInt();

Základní datové typy Primitivní datové typy Jednoduché typy Atomické, dále nečlenitelné Obsahují pouze hodnoty Příklady int - integer double - floating point (real) char - character Třídy dat Komplexnější Složené na základě jiných typů (primitivních nebo tříd) Obsahují jak hodnoty, tak metody Příklady: MojeIn String

Základní (primitivní) datové typy

Celočíselné typy a jejich konstanty Jsou pouze znaménková, ve dvojkovém doplňku. Není možné použít neznaménková celá čísla a neexistuje modifikátor unsigned Celočíselné konstanty mohou být zapsány ve třech číselných soustavách: 1.Desítkové – dekadické 2.Osmičkové – oktalové – 013, 0, 01 3.Šestnáctkové - hexadecimální - 0x63, 0X3A

Znakový typ a znakové konstanty Pouze jeden typ – char Velikost – 16 bitů – kódování Unicode Znakové konstanty jsou představovány: 1.Jedním znakem –‘A‘,‘5‘,‘%‘ 2.Posloupností - ‘\uxxx‘ – x jsou šestnáctkové číslice – zápis libovolného znaku 3.„escape“ sekvence - ‘\n‘- ‘\u000A‘ –nová řádka Pozor – významné rozdíly v použití, „escape“ sekvence může být pouze na místě znakových nebo řetězových konstant, unicode znaky kdekoli, např. i ve jménech identifikátorů

Unicode pro akcentované znaky

Řetězcové konstanty - literály Jsou uzavřeny do uvozovek: “Dnes je pondelí.“ Java umožňuje libovolně dlouhé zřetězování “dnes“ +“je“+“pondelí“+“zitra“+“je úterý“

Logický typ a logické konstanty Typ boolean Udávaná velikost 1 bit Může nabývat pouze dvou hodnot – true (logická 1), false (logická 0) Není převoditelný na celočíselný typ a naopak (jako v jazyce C) – pokud je zapotřebí této operace, lze použít: b = (i != 0) // převod hodnoty int na boolean i = (b) ? 1 : 0) // převod hodnoty boolean na int

Reálné datové typy a reálné konstanty Zahrnují konečnou podmnožinu těch reál- ných čísel, která jsou zobrazitelná v paměti počítače (v jistém rozsahu a přesnosti) Hodnota je v paměti zobrazena jako číslo v pohyblivé desetinné čárce, tj. jako dvojice čísel (a, b), kde: –a je mantisa –b je exponent

Reálné datové typy a reálné konstanty Typy float a double Vyhovují standardu IEEE 754 (stejné zobrazení v Javě jako v jiných programovacích jazycích) Reálné konstanty jsou automaticky double, potřebujeme-li typ float je nutné za konstantu doplnit F nebo f doplnit tj. float flt=3.14F;

Reálné datové typy a reálné konstanty Konstanty se zapisují s desetinnou tečkou nebo ve tvaru aEb (tento zápis odpovídá matematickému zápisu a.10 b ). Je-li alespoň jeden z operandů typu real (ostatní mohou být typu integer) dává aplikace následujících operátorů (+, -, *) výsledek reálného typu Aplikace operátoru / (dělení) dává vždy výsledek reálného typu

„Nenormální“ hodnoty reálných čísel Hodnoty získané dělením kladného popř. záporného čísla nulou –Kladné nekonečno (POSITIVE_INFINITY) –Záporné nekonečno (NEGATIVE_INFINITY) Test pomocí metody třídy Double.isInfinite(vysledek) NaN (Not a Number) – vzniká při operacích typu dělení nuly nulou Test pomocí metody třídy Double.isNaN(vysledek)

Standardní primitivní typy - shrnutí int –Pouze celá čísla –Mohou být kladná nebo záporná –Neobsahují desetinnou čárku char –Pouze jeden znak –Pro zápis konstanty jednoduché uvozovky –například char velkePismeno = `A`; double –Reálná čísla, jak kladná, tak záporná –Mají desetinnou tečku (odděluje desetinnou část) –Dva formáty Číslo s desetinnou tečkou e – notace použitelná pro zápis čísel s vysokou přesností, popř. neformátovaný tvar, tzn e2 t.j x 10 2 Standardní (primitivní )typy :