aufgabe2_codewars #3
51
src/codewars/vigenere_cipher_helper.py
Normal file
51
src/codewars/vigenere_cipher_helper.py
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
# Abgabe - Vigenère Cipher Helper
|
||||||
|
# Link dazu: https://www.codewars.com/kata/52d1bd3694d26f8d6e0000d3
|
||||||
|
# Leart Ramushi
|
||||||
|
|
||||||
|
|
||||||
|
class VigenereCipher(object):
|
||||||
|
def __init__(self, key, alphabet):
|
||||||
|
self.key = key
|
||||||
|
self.alphabet = alphabet
|
||||||
|
self.alp_len = len(alphabet)
|
||||||
|
pass
|
||||||
|
|
||||||
|
def encode(self, text):
|
||||||
|
result = ""
|
||||||
|
key_pos = 0
|
||||||
|
print(text)
|
||||||
|
|
||||||
|
for pos in range(len(text)):
|
||||||
|
currrent_char = text[pos]
|
||||||
|
if currrent_char in self.alphabet:
|
||||||
|
key_char = self.key[key_pos % len(self.key)]
|
||||||
|
# print(currrent_char, " - ", key_char)
|
||||||
|
text_index = self.alphabet.index(currrent_char)
|
||||||
|
key_index = self.alphabet.index(key_char)
|
||||||
|
# print(text_index, " - ", key_index)
|
||||||
|
update_index = (text_index + key_index) % len(self.alphabet)
|
||||||
|
result += self.alphabet[update_index]
|
||||||
|
else:
|
||||||
|
result += currrent_char
|
||||||
|
key_pos += 1
|
||||||
|
print(result)
|
||||||
|
return result
|
||||||
|
|
||||||
|
def decode(self, text):
|
||||||
|
result = ""
|
||||||
|
key_pos = 0
|
||||||
|
|
||||||
|
for pos in range(len(text)):
|
||||||
|
currrent_char = text[pos]
|
||||||
|
if currrent_char in self.alphabet:
|
||||||
|
key_char = self.key[key_pos % len(self.key)]
|
||||||
|
# print(currrent_char, " - ", key_char)
|
||||||
|
text_index = self.alphabet.index(currrent_char)
|
||||||
|
key_index = self.alphabet.index(key_char)
|
||||||
|
# print(text_index, " - ", key_index)
|
||||||
|
update_index = (text_index - key_index) % len(self.alphabet)
|
||||||
|
result += self.alphabet[update_index]
|
||||||
|
else:
|
||||||
|
result += currrent_char
|
||||||
|
key_pos += 1
|
||||||
|
return result
|
||||||
23
src/temporary/temp.py
Normal file
23
src/temporary/temp.py
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
class Konto:
|
||||||
|
def __init__(self, inhaber, saldo):
|
||||||
|
self.inhaber = inhaber
|
||||||
|
self.saldo = saldo
|
||||||
|
|
||||||
|
def einzahlen(self, betrag):
|
||||||
|
self.saldo += betrag
|
||||||
|
|
||||||
|
def abheben(self, betrag):
|
||||||
|
if betrag <= self.saldo:
|
||||||
|
self.saldo -= betrag
|
||||||
|
else:
|
||||||
|
print("Leider nicht genug Geld auf dem Konto")
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return f"Konto(inhaber='{self.inhaber}', saldo={self.saldo})"
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f"Konto von {self.inhaber} mit einem Saldo von {self.saldo} Euro"
|
||||||
|
|
||||||
|
|
||||||
|
k = Konto("Max Mustermann", 100)
|
||||||
|
print(str(k))
|
||||||
Loading…
x
Reference in New Issue
Block a user