Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int main()
- {
- cout << "podaj tekst do zaszyfrowania\n" ;
- string texts ;
- std::getline(std::cin, texts) ;
- cout << "podaj szyfr\n";
- int key ;
- cin >> key ;
- char letters[]= {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
- for (int n=0; n<texts.length(); n++)//jedziemy po calym struingu texts
- {
- for(int i=0;i<sizeof(letters);i++)//w tej petli sprawdzamy po kolei czy aktulny znak texts[n] jest którąś z liter alfabetu zawartych w tablicy letters
- {
- if(texts[n]==letters[i]) //jeżeli w istocie jest
- {
- cout << texts;ters[(i+key)%sizeof(letters)];//to zostanie zamieniony na letters [i+ key], czyli zaszyfrowany. modulo sprawia, że nie wyjedziemy poza tablice- szyfujac znak 'z' mając key=1 program odwolywalby sie do nieistniejacej komorki w tablicy- 27 litery alfabetu
- i=9000;//wyjscie z petli- zeby nie kodowac tego samego znaku dwukrotnie. inaczej majac znak a kodowany z szyfem 1, zostalby zmieniony na b, nastepnie b zostalby mieniony na c, i tak by sie zmienial w nieskonczonosc
- }
- }
- }
- cout << texts;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement