verschlüsselung
-
wie macht man eigentlich ein verschlüsselungsprogramm
ich meine man muss ein bestimmtes wort eingeben oder eine zahl und dann bekommt man was
oder auch mit mheren abfragenmfg lulasch
-
am einfachsten wäre es wenn du die buchsatebn in zahlen umwandeln würdest a = 97...
-
Musst du dich mal mit Kryptografie beschäftigen. Glaube nicht das hier jetzt jemand anfängt und das ganze erklärt, wo es ganze Bücher gibt die sich nur damit beschäftigen. Aber google hilft da bestimmt auch weiter.
-
Verschlüsselung kann sehr kompliziert werden. Für den Anfang kannste dir erstmal rot13 anschauen (eher Verschleierung, als Verschlüsselung).
Hier ist die Beschreibung: http://de.wikipedia.org/wiki/ROT13
Beispiel:#include <iostream> #include <string> using namespace std; string rot13(const string &wert) { string ergebnis; char alphabet[52]; int i; for(i=0;i<26;++i) { alphabet[i] = 'a' + ((i+13)%26); alphabet[i+26] = 'A' + ((i+13)%26); } for(i=0;i<wert.length();++i) { if(wert[i]>='a' && wert[i]<='z') ergebnis.push_back(alphabet[wert[i]-'a']); else if(wert[i]>='A' && wert[i]<='Z') ergebnis.push_back(alphabet[wert[i]-'A'+26]); else ergebnis.push_back(wert[i]); } return ergebnis; } int main() { cout << rot13("CPsernx") << endl; cin.get(); }
-
und hier nochmal ohne das alphabet-array:
#include <iostream> #include <string> using namespace std; string rot13(const string &wert) { string ergebnis; int i; for(i=0;i<wert.length();++i) { if(wert[i]>='a' && wert[i]<='z') ergebnis.push_back('a' + ((wert[i]-'a'+13)%26)); else if(wert[i]>='A' && wert[i]<='Z') ergebnis.push_back('A' + ((wert[i]-'A'+39)%26)); else ergebnis.push_back(wert[i]); } return ergebnis; } int main() { cout << rot13("CPsernx") << endl; cin.get(); }
-
Braucht man das Alphabet Array?
MfG, Alex

-
Alex
schrieb:Braucht man das Alphabet Array?
wenn man es statisch (bzw. global) als lookup-table verwaltet, kann rechenaufwand gespart werden. es macht natürlich keinen sinn, es bei jedem aufruf mit den gleichen werten neu zu initialisieren, so wie es im Beispiel gemacht wurde, um die version ohne array klarer zu machen.