Algoritmy I Cvičení č. 4.

Slides:



Advertisements
Podobné prezentace
Matematická analýza Lineární algebra Diferenciální rovnice
Advertisements

Statistika.
Množiny Přirozená čísla Celá čísla Racionální čísla Komplexní čísla
Konstrukce trojúhelníků
Operace s vektory.
Název školyIntegrovaná střední škola technická, Vysoké Mýto, Mládežnická 380 Číslo a název projektuCZ.1.07/1.5.00/ Inovace vzdělávacích metod EU.
VEKTOR A POČETNÍ OPERACE S VEKTORY
Počítače a programování 1 Přednáška 13 Jiří Šebesta.
Programování funkcí v Excelu (pole)
MATLAB LEKCE 7.
ALGO – Algoritmizace 6. cvičení
Visual Basic POLE. 2 POLE Pole - je řada prvků označených indexem Například: řada čísel, které spolu nějak souvisejí řada známek jednoho studenta řada.
DATOVÝ TYP POLE.
Rovnice roviny Normálový tvar rovnice roviny
Seminární práce číslo: 7 Zpracoval : Vladimír KORDÍK T-4.C
Algoritmy I Cvičení č. 5.
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,
Algoritmy I. Cvičení č. 10.
základní pojmy posloupností
Cvičení 2 Proměnné(jednoduché a složené) a konstanty První program Zápis výrazů.
Přednáška 12 Diferenciální rovnice
Algoritmy I Cvičení č. 3.
Metody řazení s lineární časovou složitostí
Vektorové a maticové operace, soustava lineárních rovnic
Obory čísel Přirozená čísla, nula, celá čísla, racionální čísla, iracionální čísla a reálná čísla.
Dělitelnost přirozených čísel
Vlastnosti funkcí Vypracoval: Mgr. Lukáš Bičík
Základní číselné množiny
T.A. Edison Tajemství úspěchu v životě není v tom, že děláme, co se nám líbí, ale, že nacházíme zalíbení v tom, co děláme.
Kvadratické rovnice pro S O U (x - 5)(x + 5) = 0 S = 1/2gt2
Jazyk vývojových diagramů
Počítáme s celými čísly
Práce s bodem a vektorem.
PHP – zasílání dat z formuláře
C – strukturované příkazy
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Jazyk vývojových diagramů
JavaScript Podmínky, cykly a pole.
Cvičení.
Lineární rovnice Lineární rovnice s jednou neznámou máj vzorec
(snímek 5): Ujasněte si pojmy, které nejsou přesně definovány.
Aritmetická posloupnost (Orientační test ) VY_32_INOVACE_22-12  Test obsahuje pět úloh.  U každé úlohy je aspoň jedna odpověď správná.  Na každou úlohu.
Herní plán Obecné vlastnosti příčky
Vektorové prostory.
Gravitační pole Pohyby těles v gravitačním poli
Databázové systémy 2 Zkouška – 8:00. Příklad I - Procedura Vytvořte proceduru PROCEDURE ZK_ZAM_HISTOGRAM(P_ROK_OD IN NUMBER, P_ROK_DO IN NUMBER)
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Kvadratické nerovnice
Operace s vektory Autor: RNDr. Jiří Kocourek.
Algoritmizace a programování Algoritmy 4 – Vývojové diagramy (cykly)
Algoritmizace a programování Aritmetické, Relační a Logické operátory, Knihovny.
Algoritmizace a programování Algoritmy 2 – Vývojové diagramy (sekvence)
Množina bodů dané vlastnosti
Programování ENUM, SWITCH,pole jednorozměrná a vícerozměrná, deklarace, inicializace, kopírování, porovnání Erik Král.
Algoritmizace a programování
Definiční obor a obor hodnot
C# konzole – Podíl dvou čísel, podmínka IF
Vzorové řešení zápočtového testu
Algoritmizace a programování
Výukový materiál zpracován v rámci projektu
DIGITÁLNÍ UČEBNÍ MATERIÁL
1 Lineární (vektorová) algebra
Programujeme lépe a radostněji
Výukový materiál zpracován v rámci projektu
Množina bodů dané vlastnosti
Algoritmizace a datové struktury (14ASD)
Množina bodů dané vlastnosti
ZAL – 4. cvičení 2016.
Algoritmizace a datové struktury (14ASD)
ANALYTICKÁ GEOMETRIE Analytická geometrie je část geometrie, která v euklidovské geometrii zkoumá geometrické útvary pomocí algebraických a analytických.
Transkript prezentace:

Algoritmy I Cvičení č. 4

Cíl hodiny Základy práce s polem Procházení pole pomocí cyklů Tvorba jednoduchých funkcí

Úloha č.1 Je dáno následující pole: int moje_pole[3] = { -200, 4, 66}; A.) Vypište první prvek z pole (na výstupu bude číslo -200). B.) Vypište poslední prvek z pole vynásobený číslem 3 (na výstupu bude 198). C.) Vypište součet všech tří prvků v poli (bez cyklů). Na výstupu bude číslo -130.

Úloha č.2 Je dáno následující pole: double moje_pole[4]; Nejprve všem čtyřem prvkům pole přiřaďte nulu. Nepoužijte přitom konstrukce {} jako v úloze 1. Uživatel pak zadá celé číslo. A.) Pokud bude zadané číslo záporné, tak program přiřadí druhému prvku číslo 100 a všem ostatním číslo -1. B.) Pokud zadané číslo bude nula, tak program třetímu prvku v poli přiřadí hodnotu -200 a zbylým prvkům přiřadí číslo 999. C.) Pokud bude zadané číslo větší než 1000 a zároveň liché, tak program poslednímu prvku v poli přiřadí číslo 7. D.) Pokud bude zadané číslo bezezbytku dělitelné třemi a bude menší než 800, tak program do prvního prvku v poli přiřadí číslo 3. E.) Program vypíše všechny prvky pole.

Úloha č.3 Vytvořte pěti prvkové pole znaků a naplňte ho různými hodnotami (znaky). Vypište všechny prvky pole: A.) Pomocí cyklu for B.) Pomocí cyklu while C.) Pomocí cyklu do-while

Úloha č.4 Vytvořte program, který postupně načte 4 čísla. Tyto čísla uložte do čtyř prvkového pole (pole nejdříve inicializujte samými nulami). Vypište všechny čísla v poli v obráceném pořadí (libovolným cyklem).

Úloha č.5 Vytvořte pěti prvkové celočíselné pole, které naplníte různými čísly. Program vypíše: A.) Maximum z těchto čísel. B.) Všechny sudá čísla. C.) Všechny lichá čísla větší než 100 a menší než 1000. D.) Průměrnou hodnotu všech prvků v poli (pozor na celočíselné/reálné dělení!)

Úloha č.6 Vytvořte pole a naplňte ho různými čísly. Program bude v cyklu načítat uživatelský vstup (číslo). Pokud se uživatelem zadané číslo vyskytuje i v poli, program vypíše index tohoto čísla. Pokud se prvek v poli nevyskytuje, tak vypíše text: „Prvek se v poli nevyskytuje“. Program se ukončí po přečtení nuly. Např. int pole[] = { -5, 10, 20}; Vstup: 10 Výstup: Index je 1

Úloha č.7 Jsou dány dva vektory u a v o velikosti N. A.) Vypište oba vektory na obrazovku. B.) Spočtěte a vypište součet těchto vektorů s = u + v C.) Spočtěte a vypište na obrazovku součin skaláru α = 10 a vektoru u D.) Spočtěte a vypište na obrazovku vektor x. x = α.u + v Nápověda: Vytvořte pole u a pole v. Oba pole musí mít stejný počet prvků. Pak je můžeme považovat za dva vektory stejné dimenze. Součet dvou vektorů je definován tak, že se sečtou vždy dva prvky na stejném indexu. Výsledkem sčítání je opět vektor (v našem případě stačí jen vypsat jednotlivé prvky na obrazovku). Součin skaláru a vektoru je definován, jako jeho součin s každým prvkem vektoru. Výsledkem je stejně jako u sčítání opět vektor. Příklad: (1, 2, 3) + (4, 5, 6) = (5, 7, 9) 10.(1, 2, 3) = (10, 20, 30)

Úloha č.8 Je dáno pole celých čísel, které obsahuje nezáporná čísla od 0 do 20. Vypište jednoduchý histogram jako zde: Element Value Histogram 0 19 ******************* 1 3 *** 2 15 *************** 3 7 ******* 4 11 *********** 5 9 ********* 6 13 ************* 7 5 ***** Zarovnání může být jiné než v příkladu výše, jde o to, vypsat na řádky tolik hvězdiček, jaká je hodnota čísla v poli.

Úloha č.9 Napište následující funkce. Otestujte vytvořené funkce tím, že je zavoláte s různými parametry. A.) Funkci, která bude vracet součet dvou celých čísel. B.) Funkce přijme celé číslo. Pokud je číslo v intervalu <5, 500>, vrátí číslo o dvě větší, jinak vrátí stejné číslo, jako je v parametru. C.) Funkce bude obsahovat dva parametry. Znak z a číslo c. Funkce vypíše na obrazovku c znaků z. Např. pro ‘F’ a 4 program vypíše FFFF. D.) Funkce, do které pošlete dvě celá čísla a znak. Znak může nabývat následující hodnoty: ‘+’, ‘-’, ‘*’, ‘/’, ‘%’. Na základě hodnoty znaku, proveďte příslušnou aritmetickou operaci. Např. pro znak ‘+’ vraťte součet dvou čísel. E.) Funkce, která na základě váhy a výšky spočítá BMI (Body Mass Index) a vypíše na obrazovku klasifikaci dle WHO. Nápověda: najděte vzoreček a klasifikaci dle WHO na internetu.

Úloha č.10 Uživatel zadá dva body (reálné čísla A=(x1, y1), B=(x2, y2). Kde x1 < x2 a zároveň y1 < y2. A.) Vypište délku úsečky AB B.) Vypište vektor v, který je dán body A, B. C.) K vektoru v přičtěte vektor g, který má hodnotu (0, -1). D.) V cyklu od 100 do 0 snižujte velikost vektoru v tak, že v i-tém průchodu bude mít velikost i-procent. Například když i = 50, bude mít vektor v poloviční (50-ti procentní) velikost oproti původní velikosti. E.) Vytvořte cyklus, kde v každé iteraci k vektoru v přičtěte vektor g (podobně jako v bodě C.)). Cyklus se zastaví, když bude hodnota y souřadnice vektoru v menší než nějaká konstantní hodnota (například -100) a vypište hodnotu x souřadnice vektoru v. F.) Vypište hodnotu výsledného vektoru po průchodu cyklem v bodě E.) Pro všechno vytvořte funkce.

Co si zapamatovat? Práci s jednorozměrným polem Procházení pole pomocí cyklů Tvorbu a použití funkcí

Domácí úkol Upravte úlohu č. 10 tak, aby program zjednodušeně simuloval vystřelení z kanónu. Vektor v představuje počáteční rychlost vystřelení z kanónu. Vektor g pak simuluje gravitaci. Vhodně definujte odpor vzduchu vektorem d. Střelu zastavte pokud bude souřadnice y u koule menší nebo rovna nule (simulace dopadu na zem). Vypište vzdálenost od počátku. Počítejte i s hmotností koule (hmotnost krát gravitace). g v