Pro kontrolu správného formátu hodnoty N použijeme metodu try-catch.



Podobné dokumenty
PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

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

Indexové seznamy. známe už pole, kde ale musí být předem známa velikost indexové seznamy umí růst dynamicky

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

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

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

Větvení programů příkaz IF

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Tabulková data. budeme pracovat s CSV soubory položky oddělené středníkem, např.

POLE. - datová struktura ze složek stejného typu, ke kterým se přistupuje pomocí indexů

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

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

Jazyk C# a platforma.net

Objekty jako zapozdření dat. začneme vytvářet vlastní objekty a třídy

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

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

Jazyk C# a platforma.net

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.

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

Algoritmizace a programování

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

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

KTE / ZPE Informační technologie

Př. program s popojíždějícím autíčkem o 50 pixelů při každém stisku Popojeď

Jazyk C# - přístup k datům

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Jazyk C# - přístup k datům

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

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

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

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

Jazyk C# - přístup k datům

Metodický list k didaktickému materiálu

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT. Cyklus while, do-while, dělitelnost, Euklidův algoritmus

Metodický list k didaktickému materiálu

Nejzajímavější jsou události MouseDown a KeyDown.

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

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

prostřednictvím ICT Téma didaktického materiálu RNDr. Václava Šrůtková

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

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

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

1. Téma 03 - Rozhodování

Druhy souborů. textové. binární. nestrukturované txt strukturované - ini, xml, csv. veřejné bmp, jpg, wav proprietární docx, cdr, psd

Funkce, podmíněný příkaz if-else, příkaz cyklu for

Pokročilá práce s proměnnými

Řídicí struktury. alg3 1

Náhodná a pseudonáhodná čísla

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

Objektově orientované programování

Pokročilé programování v jazyce C pro chemiky (C3220) Pokročilá témata jazyka C++

5. kapitola Spouštění aplikací Visual Basic.Net, spustitelné soubory

17. Projekt Trojúhelníky

Zápis programu v jazyce C#

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

Rekurze. Jan Hnilica Počítačové modelování 12

TŘÍDY POKRAČOVÁNÍ. Události pokračování. Příklad. public delegate void ZmenaSouradnicEventHandler (object sender, EventArgs e);

Komponenty v.net. Obsah přednášky

Pokročilé programování v jazyce C pro chemiky (C3220) Třídy v C++

Středoškolská odborná činnost. Obor SOČ: 1. Matematika a statistika GRAFY FUNKCÍ

Robotika Kybernetika, automatizace a měření FEKT VUT v Brně

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

Výjimky. v C# a Javě

Funkce, intuitivní chápání složitosti

Podmíněné vykonávání

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

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

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

Algoritmy a datové struktury

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

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

zapište obslužnou metodu události Click tlačítka a vyzkoušejte chování polevýsledek.text = polečíslo1.text + polečíslo2.text;

Tematická oblast: Programování 2 (VY_32_INOVACE_08_2_PR) Anotace: Využití ve výuce: Použité zdroje:

Algoritmizace. Cíle předmětu

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Aplikace pro vykreslování grafů elementárních funkcí

Regulární výrazy. Vzory

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

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b

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

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Činnost: 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V.

Metodický list k didaktickému materiálu

3 KTE / ZPE Informační technologie

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

Takto chápanému druhu objektů se říká TŘÍDA.

Programování v jazyce C pro chemiky (C2160) 3. Příkaz switch, příkaz cyklu for, operátory ++ a --, pole

6. Příkazy a řídící struktury v Javě

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

DSL manuál. Ing. Jan Hranáč. 27. října V této kapitole je stručný průvodce k tvorbě v systému DrdSim a (v

Rozklad na prvočinitele. 3. prosince 2010

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

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

5 Rekurze a zásobník. Rekurzivní volání metody

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

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

C++ přetěžování funkcí a operátorů. Jan Hnilica Počítačové modelování 19

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

V každém kroku se a + b zmenší o min(a, b), tedy vždy alespoň o 1. Jestliže jsme na začátku dostali 2

Transkript:

1. ŘEŠENÉ PŘÍKLADY 1.2 PŘÍKLAD 24-2-8-2_DOKONALÉ ČÍSLO Napište program, který má na vstupu přirozené číslo N > 1. Výstupem je informace o tom, zda toto číslo je/není dokonalé. (Dokonalé číslo je takové přirozené číslo, které je rovno součtu všech svých dělitelů, kromě sebe sama.) Pro kontrolu správného formátu hodnoty N použijeme metodu try-catch. int N; try N = Convert.ToInt32(poleN.Text); catch MessageBox.Show("Chyba formátu vstupních dat","chyba"); return; 1

Použijeme následující VD. Podmínka cyklu Příkazy Cyklu předcházejí přiřazovací příkazy: int S = 0; int i = 1; Ve VD je použit cyklus s podmínkou na začátku. Uvnitř cyklu jsou dva příkazy struktura podmíněného příkazu 2

zvětšení proměnné i o jedničku while ((S <= N) && (i <= N/2)) if (N % i == 0) S += i; i++; Po ukončení cyklu následuje podmínka. if (S == N) MessageBox.Show(N.ToString()+" je dokonalé", "Dokonalé číslo"); else MessageBox.Show(N.ToString()+" není dokonalé", "Dokonalé číslo"); 3

Programový kód: using System; using System.Windows.Forms; namespace WindowsApplication1 public partial class oknoprogramu : Form public oknoprogramu() InitializeComponent(); private void tlacitkourci_click(object sender, EventArgs e) int N; try N = Convert.ToInt32(poleN.Text); catch MessageBox.Show("Chyba formátu vstupních dat","chyba"); return; int S = 0; int i = 1; while ((S <= N) && (i <= N/2)) if (N % i == 0) S += i; i++; if (S == N) MessageBox.Show(N.ToString()+" je dokonalé","dokonalé číslo"); else MessageBox.Show(N.ToString()+" není dokonalé","dokonalé číslo"); 4

1.3 PŘÍKLAD 24-2-8-3_EUKLIDŮV ALGORITMUS Pro libovolná dvě přirozená čísla x a y určete jejich největšího společného dělitele (NSD) pomocí Euklidova algoritmu. Použijeme následující VD. 5

Prvním příkazem je načtení hodnot x, y. Pro kontrolu správného formátu hodnot x a y použijeme metodu try-catch. int x, y; try x = Convert.ToInt32(poleX.Text); y = Convert.ToInt32(poleY.Text); catch MessageBox.Show("Chyba formátu vstupních dat", "NSD"); return; Ve VD je použit cyklus s podmínkou na začátku. Uvnitř cyklu je jeden podmíněný příkaz a uvnitř větví podmíněného příkazu je vždy také právě jeden příkaz. Můžeme použít kód se závorkami: while (x!= y) if (x > y) x = x - y; else y = y - x; Správná je v tomto případě i kratší varianta bez závorek: 6

while (x!= y) if (x > y) x = x - y; else y = y - x; Po ukončení cyklu následuje příkaz pro tisk výsledného NSD. MessageBox.Show(Convert.ToString(x), "NSD"); Programový kód: using System; using System.Windows.Forms; namespace WindowsApplication1 public partial class oknoprogramu : Form public oknoprogramu() InitializeComponent(); private void tlacitkovypocti_click(object sender, EventArgs e) int x, y; try x = Convert.ToInt32(poleX.Text); y = Convert.ToInt32(poleY.Text); catch MessageBox.Show("Chyba formátu vstupních dat", "NSD"); return; while (x!= y) if (x > y) x = x - y; else y = y - x; MessageBox.Show(Convert.ToString(x), "NSD"); 7

2. NEŘEŠENÉ PŘÍKLADY 2.2 PŘÍKLAD 24-2-8-6_GENEROVÁNÍ ŘADY ČÍSEL Napište program, který bude generovat řadu celých čísel z daného intervalu. Vstupními daty jsou dolní a horní mez intervalu a číslo, kterým má generovaná řada čísel končit. Ošetřete chyby při zadávání vstupních dat podle vzoru. 8

2.3 PŘÍKLAD 24-2-8-7_PŘEVOD DO LIBOVOLNÉ Napište program, který bude převádět celá čísla do soustavy o zvoleném základu. Základ soustavy může být celé číslo od 2 do 10. Ošetřete chyby při zadávání vstupních dat podle vzoru. 9

2.4 PŘÍKLAD 24-2-8-8_NSD Na vstupu jsou dána dvě přirozená čísla X a Y, pro která platí X Y. Určete jejich největšího společného dělitele (NSD) pomocí upraveného Euklidova algoritmu s následujícím VD. Ošetřete chyby při zadávání vstupních dat podle vzoru. 10

11