Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

I disse dager er personvern på dagsorden. Det skal lages en funksjon som skal kryptere en setning ved hjelp av CæsarskiftCæsarshiffer. 

a)

Lag funksjonen cCipher encrypt(word, step). Parameterene er word og step. Den skal forskyve hver bokstav (char) i word med step antall tegn i alfabetet. Til høyre om step er positiv og til venstre om den er negativ.
Anta at word kun består av små bokstaver fra a til z, ingen tegn, tall o.l. 
Tips: Lek med: mod(tall + shift, 26) 

Eksempel på kjøring:

    >> encrypt('etterlatt', 10)

    ans =

    oddobvkdd

b)

Lag funksjonen dCipher decrypt(word, step). Denne skal dekryptere en tekststreng ved gitt step. 

Eksempel på kjøring:

    >> decrypt('oddobvkdd', 10)

    ans =

    etterlatt

c)

Lag funksjonen safeTalk(). Den skal gi brukeren valget mellom kryptering eller dekryptering. Deretter skal den be brukeren om en tekstreng og antall steg. Den skal returnere den krypterte eller dekrypterte strengen.

Eksempel på kjøring:

    >> safeTalk
    Vil du kryptere(k) eller dekryptere (d):
    k
    Hva vil du kryptere?:
    tusenfryd
    Hvor mange steg skal ordet skiftes?:
    1

    ans =

    uvtfogsze

d)

Lag en kode som dekrypterer tekst uten å vite steglengden. Bruk at bokstaven e er den den mest hyppige av alle bokstaver. 
Hint: Dette kan løses ved å finne den hyppigste bokstaven i strengen. Avstanden fra e til denne bokstaven er da forskyvningen.  

...