Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung | |||
| gf_informatik:programmieren_iv_gra [2025-09-22 12:43] – [O4 – Siebensegment-Anzeige] gra | gf_informatik:programmieren_iv_gra [2025-09-22 12:43] (aktuell) – [5. Lösungen] gra | ||
|---|---|---|---|
| Zeile 1294: | Zeile 1294: | ||
| </ | </ | ||
| - | === O4 === | ||
| - | <code python> | ||
| - | import math | ||
| - | from gturtle import * | ||
| - | |||
| - | carl = Turtle() | ||
| - | carl.hideTurtle() | ||
| - | |||
| - | def segment(length, | ||
| - | l1 = length * 0.8 | ||
| - | l2 = (length - l1)/2 | ||
| - | side = l2 * math.sqrt(2) | ||
| - | carl.setFillColor(color) | ||
| - | carl.startPath() | ||
| - | carl.right(45) | ||
| - | repeat 2: | ||
| - | carl.forward(side) | ||
| - | carl.left(45) | ||
| - | carl.forward(l1) | ||
| - | carl.left(45) | ||
| - | carl.forward(side) | ||
| - | carl.left(90) | ||
| - | carl.fillPath() | ||
| - | carl.left(45) | ||
| - | |||
| - | def seven_seg(number): | ||
| - | segment_codes = [' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | |||
| - | xpositions = [0, 100, 100, 100, 0, 0, 0] | ||
| - | ypositions = [0, 0, -100, -200, -200, -100, -100] | ||
| - | headings = [90, 180, 180, 270, 0, 0, 90] | ||
| - | | ||
| - | i = 0 | ||
| - | for s in segment_codes[number]: | ||
| - | carl.setPos(xpositions[i], | ||
| - | carl.setHeading(headings[i]) | ||
| - | if s == ' | ||
| - | segment(100, | ||
| - | else: | ||
| - | segment(100, | ||
| - | i = i + 1 | ||
| - | |||
| - | i = 0 | ||
| - | while i <= 9: | ||
| - | seven_seg(i) | ||
| - | i = i + 1 | ||
| - | delay(1000) | ||
| - | </ | ||
| ++++ | ++++ | ||
| </ | </ | ||