Compare commits
8 Commits
abgabe_ueb
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| a9ea2a43df | |||
| a3b6471252 | |||
| f9a07bc96c | |||
| fae016369d | |||
| 01bfc9928a | |||
| 88417a060a | |||
| 6f1ef53214 | |||
| c5dd88145e |
41
src/Woche2/aufgabe2.py
Normal file
41
src/Woche2/aufgabe2.py
Normal file
@ -0,0 +1,41 @@
|
||||
def key_string(key, text):
|
||||
keystring = key
|
||||
while len(keystring) <= len(text):
|
||||
keystring += key
|
||||
return keystring[: len(text)]
|
||||
|
||||
|
||||
class VigenereCipher(object):
|
||||
def __init__(self, key, alphabet):
|
||||
self.alphabet = alphabet
|
||||
self.key = key
|
||||
self.keymap = []
|
||||
for i in range(len(alphabet)):
|
||||
self.keymap.append(alphabet)
|
||||
alphabet = alphabet[1:] + alphabet[0]
|
||||
|
||||
def encode(self, text):
|
||||
keystring = key_string(self.key, text)
|
||||
encode_string = ""
|
||||
|
||||
for index, i in enumerate(text):
|
||||
index_alpha = self.alphabet.find(i)
|
||||
if index_alpha == -1:
|
||||
encode_string += i
|
||||
else:
|
||||
index_key = self.alphabet.find(keystring[index])
|
||||
encode_string += self.keymap[index_key][index_alpha]
|
||||
return encode_string
|
||||
|
||||
def decode(self, text):
|
||||
keystring = key_string(self.key, text)
|
||||
decode_string = ""
|
||||
|
||||
for index, i in enumerate(text):
|
||||
if self.alphabet.find(i) == -1:
|
||||
decode_string += i
|
||||
else:
|
||||
index_key = self.alphabet.find(keystring[index])
|
||||
index_alpha = self.keymap[index_key].find(i)
|
||||
decode_string += self.alphabet[index_alpha]
|
||||
return decode_string
|
||||
15
src/Woche3/menu.py
Normal file
15
src/Woche3/menu.py
Normal file
@ -0,0 +1,15 @@
|
||||
class Menu:
|
||||
def __init__(self, menu):
|
||||
self.menu = menu
|
||||
self.selected = 0
|
||||
|
||||
def to_the_right(self):
|
||||
self.selected = (self.selected + 1) % len(self.menu)
|
||||
|
||||
def to_the_left(self):
|
||||
self.selected = (self.selected - 1) % len(self.menu)
|
||||
|
||||
def display(self):
|
||||
display_array = self.menu[:]
|
||||
display_array[self.selected] = [display_array[self.selected]]
|
||||
return str(display_array)
|
||||
13
src/Woche4/Aufgabe_who_likes_it.py
Normal file
13
src/Woche4/Aufgabe_who_likes_it.py
Normal file
@ -0,0 +1,13 @@
|
||||
def likes(names):
|
||||
length = len(names)
|
||||
for i in range(4):
|
||||
names.append("")
|
||||
|
||||
text = [
|
||||
"no one likes this",
|
||||
names[0] + " likes this",
|
||||
names[0] + " and " + names[1] + " like this",
|
||||
names[0] + ", " + names[1] + " and " + names[2] + " like this",
|
||||
names[0] + ", " + names[1] + " and " + str(length - 2) + " others like this",
|
||||
]
|
||||
return text[length - (length > 3) * (length - 4)]
|
||||
7
src/count_ip_addresses.py
Normal file
7
src/count_ip_addresses.py
Normal file
@ -0,0 +1,7 @@
|
||||
def ips_between(start, end):
|
||||
start_a = start.split(".")
|
||||
end_a = end.split(".")
|
||||
difference = 0
|
||||
for index, i in enumerate(start_a):
|
||||
difference += (int(end_a[index]) - int(i)) * 256 ** (3 - index)
|
||||
return difference
|
||||
Loading…
x
Reference in New Issue
Block a user