Skip to content

Instantly share code, notes, and snippets.

@papousek
Last active December 25, 2015 21:09
Show Gist options
  • Save papousek/7040730 to your computer and use it in GitHub Desktop.
Save papousek/7040730 to your computer and use it in GitHub Desktop.

Řetězce

Nejprve si vyzkoušejte, jak se vyhodnotí v konzoli následující výrazy:

"kos" * 3
"petr" + "klic"

s = "velbloud"
s[0]
s[2]
s[-1]
len(s)
s[:3]
s[3] = "k"

s = s[:3] + "k" + s[3:]

ord('a')
ord('b')
chr(99)

Vycpávky

Napište funkci, která mezi písmena daného textu vloží libovolný text.

Kostra řešení

# Vlozi mezi pismena daneho textu vycpavku, napriklad:
# >>> vycpavky("pampeliska", "XX")
#
# >>> "pXXaXXmXXpXXeXXlXXiXXsXXkXXa"
def vycpavky(text, vycpavka):
    pass

Caesarova šifra

Napište funkci, která zašifruje text tak, že posune všechna jeho písmena v abecedě o 3 dopředu (cyklicky), můžete se inspirovat popisem Caesarovy šifry.

Kostra řešení

# Posune text o 3 pismena v abecede dopredu, napriklad:
# >>> caesar("zirafa")
#
# >>> "cludid"
def caesar(text):
    pass

Vigenèrova šifra

Napište funkci, která zašifruje text podle předem daného klíče. Pro posun písmen zdrojového textu se postupně používají písmena z klíče. Pokud je klíč kratší než zdrojový text, jsou použita písmena z klíče opět od začátku. Můžete se inspirovat Vigenèrovy šifry.

Kostra řešení

# Posune pismena v textu o tolik, kolik udava klic
# ('a' posouva o 0, 'b' o 1, ..., 'z' o 25), napriklad
# >>> vigener("pampeliska", "klic")
#
# >>> "zlurowquul"
def vigenere(text, klic):
    pass

Prohazovací šifra

Napište funkci, která zašifruje text tak, že prohází jeho písmana ob daný počet.

# Prohazi pismena danehe textu tak, ze se da cist ob 'n', napriklad
# >>> prohazej("heslojeprase", 3)
#
# >>> "horejaseslpe"
def prohazej(text, n):
    pass

Dešifrovací funkce

Napište k předchozím šifrám i funkce, které daný zašifrovaný text dešifrují.

Vyhledávání

Napište funkci, která vrátí počet výskytu daného slova v textu.

# Vrati pocet vyskytu daneho slova v textu, napriklad:
# >>> hledej("ahoj svete, ahoj, ahoj, ahoj", "ahoj")
#
# >>> 4
def hledej(text, co):
    pass
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment