Zitat von
chilliboy999
Sow, also eigtl müsste mein Code einwandfrei funktionieren. Ich hab alles logisch durchdacht, aber iwie funktioniert das nicht, wenn der Integerwert zu groß ist.
Wie bereits geschrieben, i-wann ist die ASCII Tabelle auch zu ende
Sollte der integer Wert die 126 übersteigen, musst du ab 33 wieder beginnen zu zählen, damit du wieder vernünftige Zeichen hast
Hier ein Beispielcode in C++:
Code:
#include <iostream>
#include <string>
int main() {
int len,i;
std::string Text,Output;
std::cout << "Text eingeben:\t";
std::cin >> Text;
std::cout << "Integer Wert:\t";
std::cin >> len;
for ( i=0; i < Text.length(); i++ ) {
if ( int(Text[i]) + len < 127 ) {
Output += int(Text[i]) + len;
} else if ( int(Text[i]) + len > 126 ) {
Output += char((int(Text[i])+len) - 126 + 32);
}
}
std::cout << Output << std::endl;
return 0;
}
Gib als Test "}" und "~" ein und Addiere sie mit 1