MaxMustermann
Mitglied
Hallo,
hab folgenden Programmcode:
Im Moment lest er eingegebene Zeichen ein und gibt diese wieder aus.
Ich soll ihn so umschreiben, dass er eingelesene Wörter/Sätze verschlüsselt und dann wieder ausgibt. Die Schlüsselvariable soll fix definiert sein und muss nicht vom Benutzen eingegeben werden.
Bsp.: Schlüssel: 2 ; eingegebenes Wort: Guten Tag --> ausgegebenes Wort: Iwvgp Vci
Die eingegeben Wörter sollten immer in Kleinbuchstaben ausgegeben werden und Leerzeichen dürfen nicht verschlüsselt werden.
Mein Code:
Bis jetzt verschlüsselt das Programm eingegebene Kleinbuchstaben, aber hab noch das Problem, dass Leerzeichen mit verschlüsselt werden und Großbuchstaben noch nicht richtig verschlüsselt werden.
Jemand einen Tipp, wie ich das Problem lösen könnte?
hab folgenden Programmcode:
C:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main (void)
{
char c;
while( (c = getchar()) != '\n')
{
putchar(c);
}
putchar ('\n');
return EXIT_SUCCESS;
}
Im Moment lest er eingegebene Zeichen ein und gibt diese wieder aus.
Ich soll ihn so umschreiben, dass er eingelesene Wörter/Sätze verschlüsselt und dann wieder ausgibt. Die Schlüsselvariable soll fix definiert sein und muss nicht vom Benutzen eingegeben werden.
Bsp.: Schlüssel: 2 ; eingegebenes Wort: Guten Tag --> ausgegebenes Wort: Iwvgp Vci
Die eingegeben Wörter sollten immer in Kleinbuchstaben ausgegeben werden und Leerzeichen dürfen nicht verschlüsselt werden.
Mein Code:
C:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main (void)
{
int key = 3;
int letter = 0;
int letter2 = 0;
char c;
while( (c = getchar()) != '\n')
{
letter = (int)c;
if((letter + key) > 122)
{
letter2 = (letter = 96+key);
}
/*if (letter == 32)
{
letter2 = letter;
}*/
else
{
letter2 = letter + key;
}
c = (char)letter2;
putchar(c);
}
putchar ('\n');
return EXIT_SUCCESS;
}
Bis jetzt verschlüsselt das Programm eingegebene Kleinbuchstaben, aber hab noch das Problem, dass Leerzeichen mit verschlüsselt werden und Großbuchstaben noch nicht richtig verschlüsselt werden.
Jemand einen Tipp, wie ich das Problem lösen könnte?