3 KTE / ZPE Informační technologie

Podobné dokumenty
KTE / ZPE Informační technologie

Algoritmizace a programování

KTE / ZPE Informační technologie

Algoritmizace a programování. Terminálový vstup a výstup

Algoritmizace a programování

Formátová specifikace má tvar (některé sekce nemají smysl pro načítání) %

8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek

1. Téma 12 - Textové soubory a výjimky

Rozklad problému na podproblémy

Úvod Petr Kropík viz:

Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h>

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

Textové soubory. alg9 1

Úvod do programovacích jazyků (Java)

7 Formátovaný výstup, třídy, objekty, pole, chyby v programech

- jak udělat konstantu long int: L long velka = 78L;

Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

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

Proměnná. Datový typ. IAJCE Cvičení č. 3. Pojmenované místo v paměti sloužící pro uložení hodnoty.

C# konzole Podíl dvou čísel, podmínka IF

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

Java Cvičení 01. CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics

Java - výjimky. private void vstup() throws IOException {... }

3. přednáška. Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti

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

Řídicí struktury. alg3 1

Algoritmizace a programování

Podmínky na zápočet. Java, zimní semestr

Objektově orientované programování

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů CZ.1.07/1.3.12/

5. přednáška - Rozklad problému na podproblémy

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Algoritmizace. Cíle předmětu

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií

1. Téma 03 - Rozhodování

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

Programování v Javě I. Leden 2008

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Příklad: Součet náhodných čísel ve vektoru s počtem prvků, které zadá uživatel, pomocí sum() a pomocí cyklu for. Ověříme, že příliš výpisů na

KTE / ZPE Informační technologie

Doxygen. Jakub Břečka

Úvod do programování - Java

Obsah přednášky. 12. Dokumentace zdrojového kódu Tvorba elektronické dokumentace UML. Co je diagram tříd. Ing. Ondřej Guth

9. přednáška - třídy, objekty

Java a XML. 10/26/09 1/7 Java a XML

17. Projekt Trojúhelníky

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ JAZYK C

Jak v Javě příkazy, operace a výrazy. BD6B36PJV 00 Fakulta elektrotechnická České vysoké učení technické

Formátové specifikace formátovací řetězce

Informatika Datové formáty

Základy algoritmizace a programování

1. Úvodní informace. BI-EP1 Efektivní programování Martin Kačer

Programování v Javě I. Únor 2009

Úvodní informace. Petr Hnětynka 2/2 Zk/Z

Obsah přednášky. Příkaz for neúplný. Příkaz for příklady. Cyklus for each (enhanced for loop) Příkaz for příklady

Úvod do programování. Lekce 1

Úvod do programování v jazyce Java

Soubor jako posloupnost bytů

Základy jazyka C. Základy programování 1 Martin Kauer (Tomáš Kühr)

Algoritmizace. Algoritmizace (Y36ALG), Šumperk - 1. přednáška 1

Čísla a číselné soustavy.

Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí

8 Třídy, objekty, metody, předávání argumentů metod

Základní pojmy. Matice(řádky, sloupce) Matice(4,6) sloupce

Programové konvence, dokumentace a ladění. Programování II 2. přednáška Alena Buchalcevová

Regulární výrazy. Vzory

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

První kapitola úvod do problematiky

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java

Tato tematika je zpracována v Záznamy přednášek: str

Zápis programu v jazyce C#

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

Jazyk C# a platforma.net

9. lekce Úvod do jazyka C 4. část Funkce, rekurze Editace, kompilace, spuštění Miroslav Jílek

Tato tematika je zpracována v Záznamy přednášek: str , 44-61

Principy objektově orientovaného programování

Desetinná čísla. pro celá čísla jsme používali typ int. pro desetinná čísla používáme typ double

Úvodní informace. Petr Hnětynka 2/2 Zk/Z

Datové struktury. alg12 1

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní

Konstruktory překladačů

Výčtový typ strana 67

Ošetřování chyb v programech

Abstraktní datové typy: zásobník

7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Práce s textem. Třída Character. Třída Character. Třída Character. reprezentuje objekty zapouzdřující hodnotu typu char (boxing / unboxing)

Středoškolská technika 2017 PROGRAM NA GENEROVÁNÍ PRVOČÍSEL

Programovací jazyk Java

PREPROCESOR POKRAČOVÁNÍ

NPRG031 Programování II 1 / :47:55

Programování v jazyce C pro chemiky (C2160) 12. Specifické problémy při vývoji vědeckého softwaru

Z. Kotala, P. Toman: Java ( Obsah )

IUJCE 07/08 Přednáška č. 1

Řídicí příkazy KAPITOLA 3. Vstup znaků z klávesnice

Řetězce a řídicí struktury

Rozklad na prvočinitele. 3. prosince 2010

Transkript:

3 KTE / ZPE Informační technologie Ing. Petr Kropík, Ph.D. email: pkropik@kte.zcu.cz tel.: +420 377 63 4639, +420 377 63 4606 (odd. informatiky) Katedra teoretické elektrotechniky FEL ZČU Plzeň

Komentáře // jednořádkový komentář platí do konce řádku /* komentář blokový */ /* Víceřádkový komentář */ /* * Víceřádkový * komentář hvězdičky před řádky * jsou jen pro zvýraznění (tedy ozdoba ;) */ Dokumentační komentář (JavaDoc) slouží pro generování html dokumentace k Vašemu programu začíná znaky /** píše se těsně před metodu, třídu atd. před to co kometuji, protože v tom případě mi editor část příkazů rovnou vyplní: /** * Funkce pro výpočet sin * cos * @param vstupnihodnota parametr použitý jako vstup pro výpočet * @return výsledek po výpočtu sin * cos vstupní hodnoty */

public double vypocet(double vstupnihodnota) { return Math.sin(vstupniHodnota) * Math.cos(vstupniHodnota); Vygeneruje html dokumentaci v podobě: Method Detail vypocet public double vypocet(double vstupnihodnota) Funkce pro výpočet sin * cos Parameters: vstupnihodnota - parametr použitý jako vstup pro výpočet Returns: výsledek po výpočtu sin * cos vstupní hodnoty Základní vstupy a výstupy na konzoli (textový příkazový řádek) System.out.printf("Nějaký text") formátovaný výstup System.out.printf("Zadej poloměr kruhu: "); Scanner třída pro formátovaný vstup Scanner klavesnice = new Scanner(System.in); double r; r = klavesnice.nextdouble();

Formátovací specifikace při tisku do textové konzole/okna (používá se i pro soubory atd.) %d - celé číslo se znaménkem v desítkové soustavě, celočíselný dekadický formát výpisu (stejné je %i) %x - číslo v šestnáctkové soustavě, písmena abcdef se budou tisknout jako malá %X - číslo v šestnáctkové soustavě, písmena ABCDEF se budou tisknout jako velká %f - racionální číslo bez exponentu např. System.out.printf("Číslo desetinné: %6.3f%n", 12.45678); Vytiskne: Číslo desetinné: 12,456 - reálné číslo bude vytištěno minimálně na celkem 6 znak;, z nich 3 znaky jsou za desetinnou tečkou, jeden je desetinná tečka, tj. na celky zbývají nejméně 2 znaky. Větší (delší) číslo ovšem přeteče, např. 87456.45678 bude vytištěno v tomto případě jako 87456.456 tj. nelze ořezat celou část čísla %c - jeden znak \n - nová řádka pro Linux, pro Windows je třeba \n\r %n - nová řádka univerzální pro všechny systémy, Java Runtime použije automaticky správný konec řádku \t - tabelátor těchto sekvencí je mnohem více (především formátování datumů apod.), některé další si řekneme později ASCII tabulka znaková sada

package fel.kte.zpe; public class Hlavni { public static void main(string[] args) { System.out.printf("ASCII tabulka:%n"); char c; for (int i = 0; i < 255; i++) { if (((i) >= 32 && (i) < 255)) { c = (char) i; // konvertuj celé číslo na znak, použije ASCII tabulku System.out.printf("%3d %3X %c%n", i, i, c); // v Javě lze i elegantněji - později else { System.out.printf("%3d %3X -%n", i, i);

Program: Faktoriál V matematice je faktoriál čísla n (značeno pomocí vykřičníku: n!) číslo, rovné součinu všech kladných celých čísel menších nebo rovných n, pokud je n kladné a 1 pokud n = 0. Například: 0! = 1 1! = 1 2! = 2 1 = 2 3! = 3 2 1 = 6 4! = 4 3 2 1 = 24 5! = 5 4 3 2 1 = 120 package fel.kte.zpe; import java.util.scanner; /** * * @author Petr Kropík */ public class Hlavni { public static int fakt(int cislo) { if ((cislo > 12) (cislo < 0)) { return 0; // faktoriál nemůže být 0, používáme jako signál o chybě if (cislo == 0) { return 1; int vysledek = 1; for (int i = cislo; i > 1; i--) { vysledek *= i; // vysledek = vysledek * i;

return vysledek; /** * Hlavní spouštěcí funkce * * @param args the command line arguments */ public static void main(string[] args) { Scanner klavesnice = new Scanner(System.in); System.out.printf("Faktoriál kolika budeme počítat: "); int kolikafaktorial = klavesnice.nextint(); int vysledek = fakt(kolikafaktorial); if (vysledek == 0) { System.out.printf("Faktoriál čísla %d neumím spočítat...%n", kolikafaktorial); else { System.out.printf("%nFaktoriál čísla %d je %d%n", kolikafaktorial, vysledek);

Program: Největší společný dělitel dvou čísel package fel.kte.zpe; import java.util.scanner; /** * Největší společný dělitel dvou čísel * @author Petr Kropík */ public class Hlavni { public static int nsd(int a, int b) { if ((a <= 0) (b <= 0)) { return 0; while (a > 0) { if (a > b) { a = a - b; else { b = b - a; if (b == 0) { return a; return 0; /** * Hlavní spouštěcí funkce * * @param args the command line arguments */ public static void main(string[] args) { Scanner klavesnice = new Scanner(System.in);

System.out.printf("Největší společný dělitel dvou čísel%n"); System.out.printf("Zadejte první číslo: "); int prvnicislo = klavesnice.nextint(); System.out.printf("Zadejte druhé číslo: "); int druhecislo = klavesnice.nextint(); int vysledek = nsd(prvnicislo, druhecislo); System.out.printf("Nejvetsi spolecny delitel cisel %d a %d je %d%n", prvnicislo, druhecislo, vysledek);

Struktura Javy (JRE, JDK, JVM)

Struktura Javy (JRE, JDK, JVM)

Struktura Javy (JRE, JDK, JVM)

GUI knihovny JavaFX