You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/cs/2-js-basics/4-arrays-loops/assignment.md

122 lines
5.3 KiB

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "8abcada0534e0fb3a7556ea3c5a2a8a4",
"translation_date": "2025-10-24T20:42:34+00:00",
"source_file": "2-js-basics/4-arrays-loops/assignment.md",
"language_code": "cs"
}
-->
# Úkol: Pole a cykly
## Pokyny
Dokončete následující cvičení, abyste si procvičili práci s poli a cykly. Každé cvičení navazuje na koncepty z lekce a povzbuzuje vás k použití různých typů cyklů a metod pro práci s poli.
### Cvičení 1: Generátor číselného vzoru
Vytvořte program, který vypíše každé 3. číslo mezi 1-20 a zobrazí ho v konzoli.
**Požadavky:**
- Použijte `for` cyklus s vlastním inkrementem
- Zobrazte čísla v uživatelsky přívětivém formátu
- Přidejte popisné komentáře vysvětlující vaši logiku
**Očekávaný výstup:**
```
3, 6, 9, 12, 15, 18
```
> **Tip:** Upravte výraz pro iteraci ve vašem `for` cyklu tak, aby přeskočil čísla.
### Cvičení 2: Analýza pole
Vytvořte pole s alespoň 8 různými čísly a napište funkce pro analýzu dat.
**Požadavky:**
- Vytvořte pole nazvané `numbers` s alespoň 8 hodnotami
- Napište funkci `findMaximum()`, která vrátí nejvyšší číslo
- Napište funkci `findMinimum()`, která vrátí nejnižší číslo
- Napište funkci `calculateSum()`, která vrátí součet všech čísel
- Otestujte každou funkci a zobrazte výsledky
**Bonusová výzva:** Vytvořte funkci, která najde druhé nejvyšší číslo v poli.
### Cvičení 3: Zpracování pole řetězců
Vytvořte pole vašich oblíbených filmů/knih/písní a procvičte různé typy cyklů.
**Požadavky:**
- Vytvořte pole s alespoň 5 hodnotami typu řetězec
- Použijte tradiční `for` cyklus k zobrazení položek s čísly (1. Název položky)
- Použijte `for...of` cyklus k zobrazení položek velkými písmeny
- Použijte metodu `forEach()` k počítání a zobrazení celkového počtu znaků
**Příklad výstupu:**
```
Traditional for loop:
1. The Matrix
2. Inception
3. Interstellar
For...of loop (uppercase):
THE MATRIX
INCEPTION
INTERSTELLAR
Character count:
Total characters across all titles: 42
```
### Cvičení 4: Filtrování dat (Pokročilé)
Vytvořte program, který zpracovává pole objektů reprezentujících studenty.
**Požadavky:**
- Vytvořte pole alespoň 5 objektů studentů s vlastnostmi: `name`, `age`, `grade`
- Použijte cykly k nalezení studentů, kteří jsou starší 18 let
- Vypočítejte průměrnou známku všech studentů
- Vytvořte nové pole obsahující pouze studenty s známkami nad 85
**Příklad struktury:**
```javascript
const students = [
{ name: "Alice", age: 17, grade: 92 },
{ name: "Bob", age: 18, grade: 84 },
// Add more students...
];
```
## Testování vašeho kódu
Testujte své programy:
1. Spuštěním každého cvičení v konzoli vašeho prohlížeče
2. Ověřením, že výstupy odpovídají očekávaným výsledkům
3. Testováním s různými datovými sadami
4. Kontrolou, že váš kód zvládá hraniční případy (prázdná pole, jednotlivé prvky)
## Pokyny k odevzdání
Zahrňte následující do svého odevzdání:
- Dobře okomentovaný JavaScriptový kód pro každé cvičení
- Snímky obrazovky nebo textový výstup ukazující běh vašich programů
- Stručné vysvětlení, jaký typ cyklu jste zvolili pro každou úlohu a proč
## Hodnotící kritéria
| Kritérium | Vynikající (3 body) | Přiměřené (2 body) | Potřebuje zlepšení (1 bod) |
| --------- | ------------------- | ------------------ | -------------------------- |
| **Funkčnost** | Všechna cvičení dokončena správně včetně bonusových výzev | Všechna požadovaná cvičení fungují správně | Některá cvičení neúplná nebo obsahují chyby |
| **Kvalita kódu** | Čistý, dobře organizovaný kód s popisnými názvy proměnných | Kód funguje, ale mohl by být čistší | Kód je chaotický nebo těžko pochopitelný |
| **Komentáře** | Komplexní komentáře vysvětlující logiku a rozhodnutí | Základní komentáře přítomny | Minimální nebo žádné komentáře |
| **Použití cyklů** | Ukazuje pochopení různých typů cyklů a jejich vhodné použití | Používá cykly správně, ale omezená rozmanitost | Nesprávné nebo neefektivní použití cyklů |
| **Testování** | Důkazy o důkladném testování s více scénáři | Základní testování prokázáno | Málo důkazů o testování |
## Otázky k zamyšlení
Po dokončení cvičení zvažte:
1. Který typ cyklu vám připadal nejpřirozenější na použití a proč?
2. Jaké výzvy jste potkali při práci s poli?
3. Jak by se tyto dovednosti mohly uplatnit v reálných projektech webového vývoje?
4. Co byste udělali jinak, kdybyste museli optimalizovat svůj kód pro výkon?
---
**Prohlášení**:
Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.