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.
115 lines
5.3 KiB
115 lines
5.3 KiB
# Tablice i Pętle - Zadanie
|
|
|
|
## Instrukcje
|
|
|
|
Wykonaj następujące ćwiczenia, aby poćwiczyć pracę z tablicami i pętlami. Każde ćwiczenie opiera się na koncepcjach z lekcji i zachęca do stosowania różnych typów pętli i metod tablicowych.
|
|
|
|
### Ćwiczenie 1: Generator wzoru liczbowego
|
|
Stwórz program, który wypisuje co trzecią liczbę w zakresie 1-20 i wyświetla ją w konsoli.
|
|
|
|
**Wymagania:**
|
|
- Użyj pętli `for` z niestandardowym przyrostem
|
|
- Wyświetl liczby w formacie przyjaznym dla użytkownika
|
|
- Dodaj opisowe komentarze wyjaśniające Twoją logikę
|
|
|
|
**Oczekiwany wynik:**
|
|
```
|
|
3, 6, 9, 12, 15, 18
|
|
```
|
|
|
|
> **Wskazówka:** Zmodyfikuj wyrażenie iteracyjne w swojej pętli for, aby pomijać liczby.
|
|
|
|
### Ćwiczenie 2: Analiza tablicy
|
|
Stwórz tablicę z co najmniej 8 różnymi liczbami i napisz funkcje analizujące dane.
|
|
|
|
**Wymagania:**
|
|
- Stwórz tablicę o nazwie `numbers` zawierającą co najmniej 8 wartości
|
|
- Napisz funkcję `findMaximum()`, która zwraca największą liczbę
|
|
- Napisz funkcję `findMinimum()`, która zwraca najmniejszą liczbę
|
|
- Napisz funkcję `calculateSum()`, która zwraca sumę wszystkich liczb
|
|
- Przetestuj każdą funkcję i wyświetl wyniki
|
|
|
|
**Dodatkowe wyzwanie:** Stwórz funkcję, która znajdzie drugą co do wielkości liczbę w tablicy.
|
|
|
|
### Ćwiczenie 3: Przetwarzanie tablicy łańcuchów znaków
|
|
Stwórz tablicę swoich ulubionych filmów/książek/piosenek i poćwicz różne typy pętli.
|
|
|
|
**Wymagania:**
|
|
- Stwórz tablicę z co najmniej 5 wartościami typu string
|
|
- Użyj tradycyjnej pętli `for`, aby wyświetlić elementy z numeracją (1. Nazwa elementu)
|
|
- Użyj pętli `for...of`, aby wyświetlić elementy wielkimi literami
|
|
- Użyj metody `forEach()`, aby policzyć i wyświetlić łączną liczbę znaków
|
|
|
|
**Przykładowy wynik:**
|
|
```
|
|
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
|
|
```
|
|
|
|
### Ćwiczenie 4: Filtrowanie danych (zaawansowane)
|
|
Stwórz program, który przetwarza tablicę obiektów reprezentujących studentów.
|
|
|
|
**Wymagania:**
|
|
- Stwórz tablicę co najmniej 5 obiektów studenckich z właściwościami: `name`, `age`, `grade`
|
|
- Użyj pętli, aby znaleźć studentów mających 18 lat lub więcej
|
|
- Oblicz średnią ocenę wszystkich studentów
|
|
- Stwórz nową tablicę zawierającą tylko studentów z ocenami powyżej 85
|
|
|
|
**Przykładowa struktura:**
|
|
```javascript
|
|
const students = [
|
|
{ name: "Alice", age: 17, grade: 92 },
|
|
{ name: "Bob", age: 18, grade: 84 },
|
|
// Dodaj więcej uczniów...
|
|
];
|
|
```
|
|
|
|
## Testowanie Twojego kodu
|
|
|
|
Przetestuj swoje programy poprzez:
|
|
1. Uruchomienie każdego ćwiczenia w konsoli przeglądarki
|
|
2. Sprawdzenie, czy wyniki odpowiadają oczekiwanym rezultatom
|
|
3. Testowanie na różnych zestawach danych
|
|
4. Sprawdzenie, czy kod radzi sobie z przypadkami brzegowymi (puste tablice, pojedyncze elementy)
|
|
|
|
## Wytyczne dotyczące zgłoszenia
|
|
|
|
Załącz w swoim zgłoszeniu:
|
|
- Dobrze skomentowany kod JavaScript dla każdego ćwiczenia
|
|
- Zrzuty ekranu lub tekstowe wyniki pokazujące działanie programów
|
|
- Krótkie wyjaśnienie, którego rodzaju pętli użyłeś dla każdego zadania i dlaczego
|
|
|
|
## Kryteria oceny
|
|
|
|
| Kryteria | Wzorowe (3 punkty) | Wystarczające (2 punkty) | Wymaga poprawy (1 punkt) |
|
|
| -------- | ------------------ | ----------------------- | ----------------------- |
|
|
| **Funkcjonalność** | Wszystkie ćwiczenia wykonane poprawnie wraz z dodatkowymi wyzwaniami | Wszystkie wymagane ćwiczenia działają poprawnie | Niektóre ćwiczenia niekompletne lub zawierają błędy |
|
|
| **Jakość kodu** | Czysty, dobrze zorganizowany kod z opisowymi nazwami zmiennych | Kod działa, ale mógłby być czyściej napisany | Kod jest nieuporządkowany lub trudny do zrozumienia |
|
|
| **Komentarze** | Szczegółowe komentarze wyjaśniające logikę i decyzje | Obecne podstawowe komentarze | Minimalna ilość lub brak komentarzy |
|
|
| **Użycie pętli** | Pokazuje odpowiednie zrozumienie różnych typów pętli | Użycie pętli jest poprawne, ale mało różnorodne | Nieprawidłowe lub nieefektywne użycie pętli |
|
|
| **Testowanie** | Dowody dokładnego testowania w różnych scenariuszach | Podstawowe testowanie jest widoczne | Brak lub niewielka ilość dowodów testowania |
|
|
|
|
## Pytania do refleksji
|
|
|
|
Po ukończeniu ćwiczeń zastanów się:
|
|
1. Który typ pętli był dla Ciebie najnaturalniejszy do użycia i dlaczego?
|
|
2. Jakie wyzwania napotkałeś pracując z tablicami?
|
|
3. Jak te umiejętności mogą się przydać w rzeczywistych projektach webowych?
|
|
4. Co zrobił(a)byś inaczej, aby zoptymalizować swój kod pod kątem wydajności?
|
|
|
|
---
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
**Zastrzeżenie**:
|
|
Niniejszy dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Mimo że staramy się zapewnić dokładność, prosimy mieć na uwadze, że automatyczne tłumaczenia mogą zawierać błędy lub niedokładności. Oryginalny dokument w jego rodzinnym języku powinien być traktowany jako źródło autorytatywne. W przypadku informacji o kluczowym znaczeniu zaleca się skorzystanie z profesjonalnego tłumaczenia wykonywanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |