HT Svet iger
Home  >> HT Svet iger >  >> Igre & kartice >> družabne igre

Kakšna je koda za večer družinske igre Secret Messge?

Začnimo ta večer družinskih iger z zabavo ob razbijanju kod! Tukaj je razčlenitev, kako ustvariti igro s skrivnimi sporočili s kodo, skupaj s primeri kode v Pythonu:

1. Izberite svoj način kodiranja

* Caesar Cipher: Premakne vsako črko v sporočilu za določeno število mest.

* Substitucijska šifra: Vsako črko nadomesti z drugo črko ali simbolom.

* Morsejeva abeceda: Za predstavitev črk uporablja pike in pomišljaje.

* Dvojiška koda: Za predstavitev črk uporablja 0 in 1.

2. Napišite svoje funkcije kodiranja/dekodiranja (primeri Python)

```python

Cezarjeva šifra

def caesar_encrypt (besedilo, premik):

rezultat =''

za char v besedilu:

če char.isalpha():

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

shifted_char =chr((ord(char) - start + shift) % 26 + start)

drugače:

premaknjeni_char =char

rezultat +=premaknjen_znak

vrni rezultat

def caesar_decrypt(besedilo, premik):

vrni caesar_encrypt (besedilo, -shift)

Substitucijska šifra (preprost primer, ustvarite lahko bolj zapletene preslikave)

def substitution_encrypt(besedilo, ključ):

rezultat =''

za char v besedilu:

če char.isalpha():

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

shifted_char =ključ [indeks]

drugače:

premaknjeni_char =char

rezultat +=premaknjen_znak

vrni rezultat

def substitution_decrypt(besedilo, ključ):

rezultat =''

za char v besedilu:

če char.isalpha():

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

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

drugače:

premaknjeni_char =char

rezultat +=premaknjen_znak

vrni rezultat

Morsejeva abeceda (uporaba slovarja za preslikavo)

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 (besedilo):

rezultat =''

za char v text.upper():

if char !=' ':

rezultat +=MORSE_CODE_DICT.get(char, '#') + ' '

drugače:

rezultat +=' / '

vrni rezultat.strip()

def morse_decrypt(besedilo):

rezultat =''

morse_words =text.split(' / ')

za besedo v morse_words:

morse_letters =word.split(' ')

za pismo v morse_letters:

če črka !='':

za ključ, vrednost v MORSE_CODE_DICT.items():

če je vrednost ==črka:

rezultat +=tipka

rezultat +=' '

vrni rezultat.strip()

```

3. Igrajmo se!

* Izberite skrivno sporočilo: Pomislite na zabavno sporočilo, uganko ali celo smešno šalo.

* Izberite način kodiranja: Odločite se, katero metodo šifriranja boste uporabili (Caesarjeva šifra, zamenjava, Morsejeva abeceda itd.)

* Zaženite kodo: Za šifriranje sporočila uporabite ustrezno funkcijo.

* Deli kodirano sporočilo: Napišite kodirano sporočilo na list papirja ali ga prikažite na zaslonu.

* Izzovite svojo družino: Naj ugotovijo kodo in razvozlajo skrivno sporočilo!

Primer:

```python

Skrivno sporočilo

message ="Skrivno sporočilo"

Šifriraj s pomočjo Caesar Cipher s premikom 3

šifrirano_sporočilo =caesar_encrypt(sporočilo, 3)

Natisnite šifrirano sporočilo

print(encrypted_message) # Izhod:"Vhqvlu Phvvdjh"

```

Dodatni nasveti:

* Težavnost: Prilagodite kompleksnost metode kodiranja, da bo ustrezala starosti in veščinam vaše družine.

* Namigi: Če imajo igralci težave, ponudite namige ali namige, ki jim bodo pomagali razbiti kodo.

* Naredite interaktivno: Uporabite tablo, kredo ali digitalno orodje, da bo postopek bolj privlačen.

* Zabavajte se! Cilj je ustvariti nepozaben in prijeten večer družinske igre!

Sporočite mi, če imate kakršna koli vprašanja ali če želite, da vam katero koli kodo podrobneje razložim. Veselo kodiranje in dekodiranje!


https://sl.htfbw.com © HT Svet iger