J a v a Začínáme programovat Lucie Žoltá Přetěžování metod, rekurze.

Slides:



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

Tomáš Petříček Microsoft C# MVP
Programování v C jazyku - SEMINÁŘ
Funkce Připomeňme si program pro výpočet faktoriálu:
Třída Array Je součásti balíčku java.util Účelem je usnadnit práci s poli Metody – nejpoužívanější equel(),fill(),sort() a binarySearch() equels() Slouží.
Metody (funkce, procedury)
Alg51 Rozklad problému na podproblémy Postupný návrh programu rozkladem problému na podproblémy –zadaný problém rozložíme na podproblémy –pro řešení podproblémů.
Počítače a programování 1. Obsah přednášky Výjimky - základní typy výjimek Způsoby zpracování výjimek.
Polymorfismus Dědičnost
Středoevropské centrum pro vytváření a realizaci inovovaných technicko-ekonomických studijních programů Registrační číslo CZ.1.07/2.2.00/ Tento.
Algoritmy I Cvičení č. 3.
● SWIG - Simplified Wrapper and Interface Generator ● + google a diskusní fóra ● nástroj zjednodušující (a sjednocující)
Algoritmizace a programování
J a v a Začínáme programovat Lucie Žoltá Mat.metody příklady.
Větvení cykly J a v a Začínáme programovat Lucie Žoltá.
J a v a Začínáme programovat Lucie Žoltá pole řetězec debugr.
J a v a Začínáme programovat Lucie Žoltá metody, objekty, konstruktor.
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,...)
 Kalkulátor  Slouží k tvorbě tabulek, sestav, grafů i pro náročné výpočty z oblasti matematiky, statistiky, financí apod.
Kapitoly z metodologie pedagogického výzkumu Prostředí pro výuku algoritmů Vojtěch Ouška.
A1PRG - Programování – Seminář Ing. Michal Operátory (2. část) 4 Verze
PB161 – Programování v jazyce C++ Objektově Orientované Programování
C# - Exceptions (výjimky)
Objektové programování
C# - funkce a procedury Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí.
Jedenácté cvičení Vlákna. Java cv112 Vlákna Operační systém Mutitasking – více úloh se v operačním programu vykonává „současně“ Java Multithreading -
Seminář C cvičení Obsluha výjimek Ing. Jan Mikulka.
Příklady v jazyku C – část 6
Počítače a programování 1 8.přednáška. Obsah přednášky Řetězce - deklarace a vytvoření Základní metody pro práci s řetezci Znaky - třída Character Základní.
6. cvičení Polymorfismus
Ukázka odstranění rekurze Přemysl Tišer
Počítače a programování 1
PB161 Právo friend, přetěžování operátorů, přetypování PB161 | Friend, operátory PB161 – Programování v jazyce C++ Objektově Orientované Programování.
Sportovní a podnikatelská střední škola, spol. s r.o. Ekonomika a marketing I. ročník Vyučující PhDr. Jan Sinkule Trh kapitálu II.  Výnosová míra z kapitálu.
Informatika I 7. přednáška RNDr. Jiří Dvořák, CSc.
Informatika I 8. přednáška RNDr. Jiří Dvořák, CSc.
KIV/PPA1 cvičení 8 Cvičící: Pavel Bžoch. Osnova cvičení Objekty v Javě Třída Konstruktor Metody Metody a proměnné třídy x instance Program sestávající.
PB161 Principy OOP - rozhraní, dědičnost PB161 | Principy OOP - Dědičnost, rozhraní
C# - předávání parametrů Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí.
Objektově orientované programování - cvičení 1
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.
Napište program v C pro výpočet plochy obdélníka se stranami A=3 a B=2. Výsledek vytiskněte s patřičným komentářem na obrazovku formátovým příkazem printf.
OSNOVA: a)Funkce – úvod b) Hlavičky funkcí c) Rekurze funkcí d)Knihovny funkcí e)Příklady Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače.
1 / 9X36DSA 2005The complexity of different algorithms varies: O(n), Ω(n 2 ), Θ(n·log 2 (n)), … Různé algoritmy mají různou složitost: O(n), Ω(n 2 ), Θ(n·log.
PJV031 Přetypování (casting) Objekty, atributy, lokální proměnné, parametry a návratové hodnoty metod mají definovaný, neměnný typ. Jsou dva druhy typů:
STRING A UKAZATELE. Co to je řetězec? Řetězec v Javě je samostatný objekt. Je konstantní, co znamená, že jednou vytvořený řetězec nelze změnit. Chceme-li.
C# - konverze datových typů Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B3 Autor Ing. Jiří Kalousek Období vytvoření listopad.
FEL Komunikátor. Memory Leak program konsumuje operační paměť, kterou neumožňuje uvolnit o uvolnění paměti stará Garbage Collector ▫plně v režii Java.
ZÁKLADNÍ POJMY. ZDROJOVÝ TEXT PROGRAMU Tvoří: klíčová slova komentáře identifikátory.
Rekurze. volání podprogramu opětovně v jeho těle –v době, kdy předchozí volání ještě nebylo ukončeno Druhy rekurze přímá rekurze nepřímá rekurze.
Funkce Přednáška č. 5. Funkce (functions)  posloupnost příkazů uvedená hlavičkou  využití – opakovaně volaná sekvence – strukturování programu – ošetření.
Procedurální programování,
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: Střední odborná škola Net Office, spol. s r.o., Orlová-Lutyně AUTOR: Ing. Adéla Tomalová NÁZEV: Podpora výuky v technických oborech TEMA:
NÁZEV ŠKOLY: Střední odborná škola Net Office, spol. s r.o., Orlová-Lutyně AUTOR: Ing. Adéla Tomalová NÁZEV: Podpora výuky v technických oborech TEMA:
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é.
Moduly.
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o., Orlová-Lutyně
NÁZEV ŠKOLY: Střední odborná škola Net Office, spol. s r. o
Rekurze.
NÁZEV ŠKOLY: Střední odborná škola Net Office, spol. s r. o
Návrhový vzor Flyweight
Rekurze.
Polymorfismus = Mnohotvarost
NÁZEV ŠKOLY: Střední odborná škola Net Office, spol. s r. o
Podprogramy.
MU002 – Informační technologie Základy algoritmizace 5/13
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o., Orlová-Lutyně
Funkce s proměnným počtem parametrů
Transkript prezentace:

J a v a Začínáme programovat Lucie Žoltá Přetěžování metod, rekurze

Přetěžování metod Přetěžování metod se používá v případě že chceme mít obecnější metodu, která nebude závislá na daném typu argumentu. Např. máme metodu která přijímá argumenty typu double, ale my pracujeme s int a vždy když chceme metodu použít, musíme objekty přetypovat.

Přetěžování metod Vytvoříme tedy dvě metody se stejným názvem, ale s argumenty jiného typu. Když pak budeme voláme přetypovanou metodu, zavolá se ta která má argumenty odpovídajícího typu.

Přetěžování metod static int secti (int a, int b){ return a + b; } static double secti (double a, double b){ return a + b; } static byte secti (byte a, byte b){ byte vysledek = (byte)secti((int)a,(int)b return vysledek; } static String secti(String a, String b){ return a+b; }

Rekurze Rekurze je děj při němž metoda volá sama sebe. Má široké využití ve programech které testují všechny možné varianty (hledání cesty v bludišti, řešení sudoku, různé šachovnicové příklady,…), pro výpočet sumy, apod. Ukázkovým příkladem je faktoriál.

Rekurze Faktorial:n! = n * (n - 1) * (n -2) * … * 1 Přiklad:5! = 5 * 4 * 3 * 2 * 1 = 120 Metoda tedy přijme jeden argument a pak volá samu sebe ale pokaždé s (n-1).

Rekurze static int faktorial (int n) { int fak = 1; if (n==1) return 1; fak = n * (faktorial(n-1)); return fak; } fak = 3 * (faktorial(2)) return 3*2; fak = 2 * (faktorial(1)) return 2*1; return 1;

Rekurze - Suma.java Udělej metodu,která pomocí rekurze bude počítat jednoduchou sumu (n). n5n5 n ∑ n n=0 n+ (n-1) + (n-2) +… =15