Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:zahlensysteme:binary_collection [2023-05-12 08:09] – [Parallel über zwei Strings] hofgf_informatik:zahlensysteme:binary_collection [2024-05-20 07:38] (aktuell) hof
Zeile 2: Zeile 2:
  
 Das Dossier enthält mehrere Programmieraufgaben, um Binärzahlen mit Python-Code zu manipulieren. Hier findest du Übungen, Hinweise und Ideen, wie die Umsetzung der Algorithmen in Python gelingen könnte. Das Dossier enthält mehrere Programmieraufgaben, um Binärzahlen mit Python-Code zu manipulieren. Hier findest du Übungen, Hinweise und Ideen, wie die Umsetzung der Algorithmen in Python gelingen könnte.
 +
 ### Schleifen ### Schleifen
 +
 +Bei der *direkten* Schleife ist der Ausdruck hinter `in` die Sequenz der uns interessierenden Elemente (z.B. ein String mit den Binär-Nennwerten `0` oder `1`). Die Schleifenvariable (der Name zwischen `for` und `in`) wird in jedem Schleifendurchgang auf das nächste Element gesetzt.
  
 *Direkte* Schleife über alle Buchstaben eines Strings (einer Zeichenfolge): *Direkte* Schleife über alle Buchstaben eines Strings (einer Zeichenfolge):
Zeile 10: Zeile 13:
     print(digit)     print(digit)
 </code> </code>
 +
 #### Parallel über zwei Strings #### Parallel über zwei Strings
 +
 +Bei der _indirekten_ Schleife steht der Ausdruck hinter `in` für die Liste der Indices, ist also eine Ganzzahl (`int`). Die Schleifenvariable heisst meistens `index` oder kurz `i`. Um auf das uns interessierende Element zuzugreifen, müssen wir einen Listenzugriff programmieren, z.B. `liste[index]`. Mit dem Index kann auch gerechnet werden, um zum Beispiel jedes zweite Element oder die Elemente in umgekehrter Richtung zu erhalten.
  
 *Indirekte* Schleife über die Buchstaben in zwei gleichlangen Strings: *Indirekte* Schleife über die Buchstaben in zwei gleichlangen Strings:
Zeile 45: Zeile 51:
     print(digit1, digit2)     print(digit1, digit2)
 </code> </code>
- 
    
 +
 #### Rückwärts #### Rückwärts
  
Zeile 152: Zeile 158:
  
 summe = digit1 + digit2   # Absicht: Summe soll die Zahl 2 sein summe = digit1 + digit2   # Absicht: Summe soll die Zahl 2 sein
-print(summe)              # Resultat: Summe ist der String '11'+print(summe)              # Resultat: String-Verkettung zu '11'
  
-print(int(digit1) + int(digit2))  # Abhilfe: String in Zahl konvertieren+print(int(digit1) + int(digit2))  # Abhilfe: Strings in Zahlen konvertieren
 </code> </code>
  
Zeile 198: Zeile 204:
 a = 101       # eine Zahl a = 101       # eine Zahl
 b = '010'     # ein String b = '010'     # ein String
-c = a + b  # Fehler!+c = a + b     # Fehler!
  
 # Zahl umwandeln in String # Zahl umwandeln in String
  • gf_informatik/zahlensysteme/binary_collection.1683878958.txt.gz
  • Zuletzt geändert: 2023-05-12 08:09
  • von hof