1. Vælg din kodningsmetode
* Cæsar Cipher: Forskyder hvert bogstav i beskeden et fast antal steder.
* Erstatningskryptering: Erstatter hvert bogstav med et andet bogstav eller symbol.
* Morsekode: Bruger prikker og bindestreger til at repræsentere bogstaver.
* Binær kode: Bruger 0'er og 1'ere til at repræsentere bogstaver.
2. Skriv dine kodnings-/afkodningsfunktioner (Python-eksempler)
``` python
def caesar_encrypt(tekst, skift):
resultat =''
for char i tekst:
if char.isalpha():
start =ord('a') if char.islower() else ord('A')
shifted_char =chr((ord(char) - start + shift) % 26 + start)
andet:
shifted_char =char
resultat +=shifted_char
returnere resultat
def caesar_decrypt(tekst, skift):
returner caesar_encrypt(tekst, -skift)
def substitution_encrypt(tekst, nøgle):
resultat =''
for char i tekst:
if char.isalpha():
index =ord(char.lower()) - ord('a')
shifted_char =nøgle[indeks]
andet:
shifted_char =char
resultat +=shifted_char
returnere resultat
def substitution_decrypt(tekst, nøgle):
resultat =''
for char i tekst:
if char.isalpha():
indeks =nøgle.indeks(char.lower())
shifted_char =chr(indeks + ord('a'))
andet:
shifted_char =char
resultat +=shifted_char
returnere resultat
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(tekst):
resultat =''
for char i text.upper():
hvis char !=' ':
resultat +=MORSE_CODE_DICT.get(char, '#') + ' '
andet:
resultat +=' / '
returner result.strip()
def morse_decrypt(tekst):
resultat =''
morse_words =text.split(' / ')
for ord i morse_words:
morse_letters =word.split(' ')
for bogstav i morse_letters:
hvis bogstav !='':
for nøgle, værdi i MORSE_CODE_DICT.items():
hvis værdi ==bogstav:
resultat +=nøgle
resultat +=' '
returner result.strip()
```
3. Lad os spille!
* Vælg en hemmelig besked: Tænk på en sjov besked, en gåde eller endda en sjov vittighed.
* Vælg en kodningsmetode: Beslut dig for, hvilken krypteringsmetode du vil bruge (Cæsar-chiffer, substitution, morsekode osv.)
* Kør koden: Brug den relevante funktion til at kryptere din besked.
* Del den kodede besked: Skriv den kodede besked på et stykke papir, eller vis den på en skærm.
* Udfordr din familie: Lad dem finde ud af koden og tyde den hemmelige besked!
Eksempel:
``` python
besked ="Hemmelig besked"
encrypted_message =caesar_encrypt(message, 3)
print(encrypted_message) # Output:"Vhqvlu Phvvdjh"
```
Yderligere tip:
* Sværhedsgrad: Juster kompleksiteten af kodningsmetoden, så den matcher din families alder og færdigheder.
* Tip: Hvis spillere har det svært, så giv hints eller ledetråde for at hjælpe dem med at knække koden.
* Gør det interaktivt: Brug en tavle, kridt eller et digitalt værktøj til at gøre processen mere engagerende.
* Hav det sjovt! Målet er at skabe en mindeværdig og fornøjelig familieaften!
Fortæl mig, hvis du har spørgsmål, eller hvis du vil have mig til at forklare noget af koden mere detaljeret. God kodning og afkodning!