Advertisement
Guest User

Untitled

a guest
Mar 14th, 2015
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.90 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include <iostream>
  3. #include <fstream>
  4. using namespace std;
  5.  
  6.  
  7.  
  8. int RotateLeft(int n, int k)
  9. {
  10.     for (int i = 0; i < k; i++) {
  11.         if (n & 0x800000) {
  12.             n = (n << 1) + 1;
  13.         } else {
  14.             n = (n << 1);
  15.         }
  16.     }
  17.     return n;
  18. }
  19.  
  20. int RotateRight(int n, int k)
  21. {
  22.     for (int i = 0; i < k; i++) {
  23.         if (n & 1) {
  24.             n = (n >> 1) + 0x800000;
  25.         } else {
  26.             n = (n >> 1);
  27.         }
  28.     }
  29.     return n;
  30. }
  31. int _tmain(int argc, _TCHAR* argv[])
  32. {
  33.     short int k; char n;
  34.     cin >> k;
  35.     ifstream fin("input", ios::binary);
  36.     ofstream fout("encrypted", ios::binary);
  37.     fin.get(n);
  38.     while (!fin.eof()) {
  39.         n = RotateLeft(n, k);
  40.         fout.put(n);
  41.         fin.get(n);
  42.     }
  43.     fin.close(); fout.close();
  44.     ifstream fin1("encrypted", ios::binary);
  45.     ofstream fout1("decrypted", ios::binary);
  46.     fin1.get(n);
  47.     while (!fin1.eof()) {
  48.         n = RotateRight(n, k);
  49.         fout1.put(n);
  50.         fin1.get(n);
  51.     }
  52.     fin1.close(); fout1.close();
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement