AlgoLab – instrukcja

AlgoLab: instrukcja krok po kroku - edytor, diagram, zadania i wizualizator

AlgoLab ma cztery zakładki, interaktywny samouczek i działa bez instalacji. W tym artykule opisuję każdą funkcję krok po kroku — od pierwszego uruchomienia, przez pisanie pseudokodu, po rozwiązywanie zadań w trybie diagram blokowy.

Pierwsze uruchomienie — samouczek

Gdy otwierasz AlgoLab po raz pierwszy, automatycznie pojawia się interaktywny samouczek (8 kroków). Podświetla kolejne elementy interfejsu i krótko objaśnia każdy z nich. Możesz go przejść w całości lub pominąć — i wrócić do niego w każdej chwili klikając przycisk 💡 Samouczek w prawym górnym rogu nagłówka.

Samouczek zapamiętuje, że już go widziałeś — nie pojawi się ponownie po odświeżeniu strony.

Zakładka ✏️ Edytor

To główna zakładka aplikacji. Podzielona jest na dwie kolumny:

  • lewa — edytor pseudokodu,
  • prawa — panel sterowania, dane wejściowe, wyjście i zmienne,
  • dolna część — diagram blokowy (synchronizuje się automatycznie).

✔ Pisanie pseudokodu

Wpisz algorytm w edytorze używając polskich słów kluczowych. Składnia podświetla się automatycznie. Oto podstawowe konstrukcje:

czytaj(a)
czytaj(b)
suma <- a + b
pisz(suma)

Pełna składnia dostępna jest w zakładce ❓ Pomoc.

✔ Gotowe przykłady

Rozwijalną listę znajdziesz nad edytorem. Dostępne są:

  • Silnia
  • Ciąg Fibonacciego
  • Sortowanie bąbelkowe
  • Wyszukiwanie binarne
  • Algorytm Euklidesa (NWD)
  • Sprawdzanie pierwszości

Po wybraniu przykładu kod wczytuje się do edytora, a diagram generuje się natychmiast.

✔ Uruchamianie algorytmu

Przed kliknięciem ▶ Uruchom dodaj dane wejściowe w polu „Dane wejściowe” (jedno wejście = jedna wartość, dodajesz je przyciskiem Dodaj). Następnie:

  • ▶ Uruchom — wykonuje cały algorytm od razu i wypisuje wynik,
  • ⏭ Krok — wykonuje algorytm instrukcja po instrukcji (podświetla aktualną linię),
  • ⏹ Reset — zatrzymuje wykonywanie i czyści wyjście.

Suwak Prędkość animacji kontroluje tempo kroków w trybie krokowym.

✔ Panel zmiennych

Po prawej stronie, w sekcji „Zmienne”, na bieżąco widać wartości wszystkich zmiennych podczas wykonywania algorytmu. Jeśli zmienna jest tablicą, widoczna jest jako lista indeksowanych elementów.

Diagram blokowy — dwukierunkowa synchronizacja

Diagram blokowy wyświetla się w dolnej części zakładki Edytor i synchronizuje się z kodem automatycznie:

  • Edytujesz kod → diagram aktualizuje się po chwili (debounce 800 ms),
  • Edytujesz diagram (przeciągasz bloki, dodajesz, usuwasz, łączysz) → kod aktualizuje się po chwili (debounce 500 ms).

✔ Jak dodawać bloki?

Po lewej stronie diagramu znajduje się paleta bloków. Możesz:

  • kliknąć blok — pojawi się na środku widocznego obszaru,
  • przeciągnąć blok (drag & drop) bezpośrednio na kanwę w wybrane miejsce.

✔ Jak edytować treść bloku?

Kliknij dwukrotnie na blok — pojawi się okno edycji z polem na etykietę i kod bloku. Zatwierdź przyciskiem ✔ OK.

✔ Jak łączyć bloki?

Najedź kursorem na krawędź bloku — pojawi się niebieski punkt połączenia. Kliknij go i przeciągnij do innego bloku. Do usunięcia połączenia kliknij na linię i naciśnij klawisz Delete lub Backspace.

✔ Zoom i nawigacja

Pasek narzędzi nad diagramem zawiera przyciski:

  • 🔍+ / 🔍− — przybliż / oddal,
  •  — dopasuj widok do wszystkich bloków (zoom fit),
  • 🗑️ Wyczyść — usuwa wszystkie bloki i połączenia.

Uwaga o blokach START i STOP

Bloki START i STOP mają charakter wyłącznie strukturalny — nie generują żadnej linii pseudokodu. Są automatycznie dodawane przy generowaniu diagramu z kodu i wymagane przez schemat blokowy, ale algorytm działa bez nich tak samo.

Zakładka 📊 Wizualizacje

Wizualizator pokazuje animację wykonywania algorytmu krok po kroku — z podświetlaniem aktywnej linii, historią wartości zmiennych i graficzną reprezentacją tablic. Zakładka dostępna jest po wczytaniu kodu w Edytorze.

Przydaje się szczególnie przy algorytmach sortowania i wyszukiwania — możesz zobaczyć dokładnie, co się zmienia w każdej iteracji pętli.

Zakładka 📝 Zadania

Sekcja z 10 zadaniami algorytmicznymi sprawdzonymi automatycznie. Zadania podzielone są według poziomu trudności i kategorii:

PoziomZadania
ŁatweSuma dwóch liczb, Maksimum z trzech liczb, Silnia
ŚrednieFibonacci, Liczba pierwsza, NWD (Euklides), Odwróć tablicę
TrudneSuma cyfr, Sortowanie bąbelkowe, Liczba palindromowa

✔ Jak rozwiązywać zadania?

Po wybraniu zadania z listy po lewej stronie:

  1. Przeczytaj opis i sprawdź przykłady wejście/wyjście.
  2. Wybierz tryb rozwiązywania:
    — 📝 Pseudokod — klasycznie, w edytorze tekstowym,
    — 🔷 Diagram — układasz algorytm z bloków graficznie.
  3. Napisz lub zbuduj rozwiązanie.
  4. Kliknij ▶ Sprawdź rozwiązanie — aplikacja uruchomi Twój kod na zestawie testów i pokaże wynik.

✔ Tryb diagram w zadaniach

Po przełączeniu na tryb 🔷 Diagram otwiera się mini-edytor bloków:

  • paleta bloków po lewej (bez START/STOP — są dodawane automatycznie),
  • kanwa SVG z możliwością drag & drop,
  • zoom i czyszczenie diagramu.

Jeśli w edytorze pseudokodu był wcześniej kod, AlgoLab spróbuje automatycznie wygenerować z niego diagram na start.

✔ Podpowiedzi i wzorcowe rozwiązania

  • 💡 Podpowiedź — pokazuje wskazówkę bez spoilowania całego rozwiązania,
  • 👁️ Pokaż rozwiązanie — po potwierdzeniu wczytuje wzorcowe rozwiązanie do edytora.

Ukończone zadania oznaczane są zielonym ✓ na liście. Postęp zapisywany jest w przeglądarce (localStorage) — nie zginie po odświeżeniu strony.

Zakładka ❓ Pomoc

Zawiera pełną dokumentację składni pseudokodu z przykładami dla każdej konstrukcji językowej: przypisanie, wczytywanie, wypisywanie, warunki, pętle, tablice, funkcje i operatory. Warto mieć ją otwartą podczas pierwszych kroków z aplikacją.

Skróty klawiszowe i wskazówki

  • Tab w edytorze wstawia 2 spacje (wcięcie),
  • Delete / Backspace na zaznaczonym bloku lub połączeniu — usuwa element,
  • Kliknięcie bloku na diagramie zaznacza go (obwódka), kliknięcie w pustym miejscu usuwa zaznaczenie,
  • Podwójne kliknięcie bloku otwiera edytor etykiety,
  • Diagram można przewijać kółkiem myszy (zoom) i przeciągać tło (przesunięcie widoku).

Podsumowanie

AlgoLab łączy edytor pseudokodu, diagram blokowy, interpreter i zadania z auto-oceną w jednym narzędziu działającym w przeglądarce. Niezależnie od tego, czy wolisz pisać kod tekstowo czy budować go z graficznych klocków — obydwa podejścia prowadzą do tego samego wyniku.

Jeśli masz pytania lub pomysły na nowe funkcje — napisz w komentarzu lub skontaktuj się bezpośrednio. AlgoLab jest projektem aktywnie rozwijanym. Kod źródłowy dostępny na GitHubie.

🚀 Otwórz AlgoLab

Categories:

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *