Plan wizualizacji

Projekt: animowana wizualizacja algorytmu - Informatyka - liceum klasa 2, zakres rozszerzony (Python)

Wizualizacja algorytmu pokazuje jego **stan** po każdym kroku. Projekt zaczyna się od decyzji: 1. **Co rysujemy**: lista liczb jako słupki (funkcja `draw` z lekcji sortowania). 2. **Jakie kolory**: niebieski = zwykły element, pomarańczowy = porównywany, czerwony = zamieniany, zielony = na swoim miejscu. 3. **Krok animacji**: jeden krok algorytmu co kilka klatek pętli gry. Program rysuje stan sortowania przez wybieranie po dwóch krokach: dwa pierwsze słupki są już na miejscu (zielone).

arrow = Sprite()
arrow.image = 16
arrow.size = 10
world.add(arrow)
arrow.visible = False
def draw(values, colors=None):
    world.clear_trails()
    for i, v in enumerate(values):
        if colors:
            arrow.pen.color = colors[i]
        else:
            arrow.pen.color = (99, 102, 241)
        arrow.pen.on = False
        arrow.position = (-90 + 14 * i, -80)
        arrow.angle = 0
        arrow.pen.on = True
        for side in [8 * v, 10, 8 * v, 10]:
            arrow.move(side)
            arrow.turn(90)
    arrow.pen.on = False

values = [6, 2, 9, 4, 1, 7, 3]
def selection_step(values, i):
    best = i
    for j in range(i + 1, len(values)):
        if values[j] < values[best]:
            best = j
    values[i], values[best] = values[best], values[i]

for i in range(2):
    selection_step(values, i)
colors = [(22, 163, 74)] * 2 + [(99, 102, 241)] * (len(values) - 2)
draw(values, colors)

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu Informatyka - liceum klasa 2, zakres rozszerzony·Zaloguj się, aby zapisać postęp na koncie.