HT Svět her
Home  >> HT Svět her >  >> Hry a karty >> Společenské hry

Jaký je kód pro tajnou rodinnou herní noc?

Pojďme tento rodinný herní večer začít zábavou při luštění kódu! Zde je rozpis toho, jak vytvořit hru s tajnými zprávami pomocí kódu, spolu s příklady kódu v Pythonu:

1. Vyberte metodu kódování

* Caesarova šifra: Posune každé písmeno ve zprávě o pevný počet míst.

* Substituční šifra: Nahradí každé písmeno jiným písmenem nebo symbolem.

* Morseova abeceda: Pro znázornění písmen používá tečky a čárky.

* Binární kód: K reprezentaci písmen používá 0s a 1s.

2. Napište své funkce kódování/dekódování (příklady Pythonu)

```python

Caesarova šifra

def caesar_encrypt(text, shift):

výsledek =''

pro znak v textu:

if char.isalpha():

start =ord('a') if char.islower() else ord('A')

shifted_char =chr((ord(char) - začátek + posun) % 26 + začátek)

jiný:

shifted_char =znak

výsledek +=posunutý_znak

vrátit výsledek

def caesar_decrypt(text, posun):

return caesar_encrypt(text, -shift)

Substituční šifra (jednoduchý příklad, můžete vytvořit složitější mapování)

def substitution_encrypt(text, klíč):

výsledek =''

pro znak v textu:

if char.isalpha():

index =ord(char.lower()) - ord('a')

shifted_char =klíč[index]

jiný:

shifted_char =znak

výsledek +=posunutý_znak

vrátit výsledek

def substitution_decrypt(text, klíč):

výsledek =''

pro znak v textu:

if char.isalpha():

index =key.index(char.lower())

shifted_char =chr(index + ord('a'))

jiný:

shifted_char =znak

výsledek +=posunutý_znak

vrátit výsledek

Morseova abeceda (používání slovníku pro mapování)

MORSE_CODE_DICT ={ 'A':'.-', 'B':'-...',

'C':'-.-.', 'D':'-..', 'E':'.',

'F':'..-.', 'G':'--.', 'H':'....',

'I':'..', 'J':'.---', 'K':'-.-',

'L':'.-..', 'M':'--', 'N':'-.',

'O':'---', 'P':'.--.', 'Q':'--.-',

'R':'.-.', 'S':'...', 'T':'-',

'U':'..-', 'V':'...-', 'W':'.--',

'X':'-..-', 'Y':'-.--', 'Z':'--..',

'1':'.----', '2':'..---', '3':'...--',

'4':'....-', '5':'.....', '6':'-....',

'7':'--...', '8':'---..', '9':'----.',

'0':'-----', ', ':'--..--', '.':'.-.-.-',

'?':'..--..', '/':'-..-.', '-':'-....-',

'(':'-.--.', ')':'-.--.-'}

def morse_encrypt(text):

výsledek =''

pro znak v textu.upper():

if char !=' ':

výsledek +=MORSE_CODE_DICT.get(char, '#') + ' '

jiný:

výsledek +=' / '

vrátit výsledek.strip()

def morse_decrypt(text):

výsledek =''

morse_words =text.split(' / ')

pro slovo v morse_words:

morse_letters =word.split(' ')

pro písmeno v morse_letters:

pokud písmeno !='':

pro klíč, hodnotu v MORSE_CODE_DICT.items():

if value ==písmeno:

výsledek +=klíč

výsledek +=' '

vrátit výsledek.strip()

```

3. Pojďme si hrát!

* Vyberte tajnou zprávu: Vymyslete nějakou zábavnou zprávu, hádanku nebo dokonce vtipný vtip.

* Vyberte metodu kódování: Rozhodněte se, jakou metodu šifrování použijete (Caesarova šifra, substituce, Morseova abeceda atd.)

* Spusťte kód: K zašifrování zprávy použijte příslušnou funkci.

* Sdílejte zakódovanou zprávu: Napište kódovanou zprávu na kus papíru nebo ji zobrazte na obrazovce.

* Vyzvěte svou rodinu: Nechte je přijít na kód a rozluštit tajnou zprávu!

Příklad:

```python

Tajná zpráva

zpráva ="tajná zpráva"

Šifrování pomocí Caesarovy šifry s posunem 3

encrypted_message =caesar_encrypt(zpráva, 3)

Vytiskněte zašifrovanou zprávu

print(encrypted_message) # Výstup:"Vhqvlu Phvvdjh"

```

Další tipy:

* Obtížnost: Upravte složitost metody kódování tak, aby odpovídala věku a dovednostem vaší rodiny.

* Tipy: Pokud mají hráči potíže, nabídněte jim rady nebo vodítka, která jim pomohou rozluštit kód.

* Udělejte to interaktivní: Použijte bílou tabuli, křídu nebo digitální nástroj, aby byl proces poutavější.

* Bavte se! Cílem je vytvořit nezapomenutelný a příjemný rodinný herní večer!

Pokud máte nějaké dotazy nebo chcete, abych vám podrobněji vysvětlil některý z kódů, dejte mi vědět. Šťastné kódování a dekódování!


https://cs.htfbw.com © HT Svět her