5 svar
107 visningar
axzel1 3 – Fd. Medlem
Postad: 26 apr 2020 12:59

Problem med att kryptera stora och små bokstäver samtidigt i caesar cypher kod!

Här är min nuvarande lösning:

for (int i = 0; i < längd.Length; i++)
{
//Separerar och ändrar på bokstäverna
char bokstav = längd[i];

if (bokstav == ' ')
continue;

//Ändrar bokstäver utåfrån rot
bokstav = (char)(bokstav + nummer);

//Substraherar eller adderar med 26 på 'overflow'
if (bokstav > 'z')
{
bokstav = (char)(bokstav - 26);
}

else if (bokstav < 'a')
{
bokstav = (char)(bokstav + 26);
}

//Sedan spara
längd[i] = bokstav;

}

Vet ej hur jag ska gå vidare för att kunna kryptera både stora och små bokstäver, hjälp

Tack på förhand, mvh Axel

Lindehaven 820 – Lärare
Postad: 26 apr 2020 13:09

Om du ska kryptera gemener och kapitäler på samma sätt så kan du använda metoden ToUpper eller ToLower.

axzel1 3 – Fd. Medlem
Postad: 26 apr 2020 13:12

Vet om detta, Problemet är att programmet ska kunna kryptera både stora och små bokstäver samtidigt te x "Abc" med rot 1 ska bli "Bcd"

Laguna 28468
Postad: 26 apr 2020 15:24

Du får stoppa in ett test nånstans på om den ursprungliga bokstaven var gemen eller versal. 

axzel1 3 – Fd. Medlem
Postad: 26 apr 2020 15:42

gjort det flertal gånger, får det ej att fungera. Skulle du inte kunna skriva så som jag skulle behövs för att for-while satsen skulle fungera för båda gemener och versaler

Laguna 28468
Postad: 26 apr 2020 18:16
axzel1 skrev:

gjort det flertal gånger, får det ej att fungera. Skulle du inte kunna skriva så som jag skulle behövs för att for-while satsen skulle fungera för båda gemener och versaler

Få se hur du har försökt.

Svara Avbryt
Close