Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
gf_informatik:verschluesselung:signaturen [2022-03-17 22:01] – hof | gf_informatik:verschluesselung:signaturen [2022-03-25 15:28] (aktuell) – [Aufgabe XOR-Hash] hof | ||
---|---|---|---|
Zeile 35: | Zeile 35: | ||
Schreibe eine Funktion, die alle Zahlen einer Liste mit `XOR` kombiniert. | Schreibe eine Funktion, die alle Zahlen einer Liste mit `XOR` kombiniert. | ||
- | < | + | < |
++++Lösung: | ++++Lösung: | ||
+ | <code python> | ||
def xor_hash(numbers): | def xor_hash(numbers): | ||
hash = 0 | hash = 0 | ||
Zeile 44: | Zeile 45: | ||
print(xor_hash([42, | print(xor_hash([42, | ||
+ | </ | ||
+ | ++++ | ||
+ | </ | ||
+ | |||
+ | **Teil 2:** Schreibe eine Funktion `word_hash` die alle Zeichen eines Worts in ASCII-Codes übersetzt, bevor sie mit XOR verbunden werden. | ||
+ | |||
+ | |||
+ | <nodisp 1> | ||
+ | ++++Lösung: | ||
+ | <code python> | ||
+ | def word_hash(text): | ||
+ | hash = 0 | ||
+ | for letter in text: | ||
+ | hash = hash ^ ord(letter) | ||
+ | return hash | ||
+ | |||
+ | print(word_hash(" | ||
+ | </ | ||
++++ | ++++ | ||
</ | </ |