Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <vector>
- using namespace std;
- class WeirdRotor
- {
- private:
- int multiplier;
- int adder;
- public:
- WeirdRotor(int mult, int add) : multiplier(mult), adder(add)
- {
- };
- int encrypt(int number)
- {
- return number * multiplier + adder;
- }
- };
- class WeirdMachine
- {
- private:
- vector<WeirdRotor> rotors;
- int x;
- public:
- WeirdMachine()
- {
- //ifstream rotorFile("Rotors.txt");
- ifstream rotorFile;
- rotorFile.open("Rotors.txt");
- if(!rotorFile.is_open())
- {
- cout<<"dang"<<endl;
- }
- while (rotorFile.good())
- {
- int mult, adder;
- rotorFile>>mult;
- rotorFile>>adder;
- WeirdRotor r;
- rotors.push_back(r);
- }
- if(!rotorFile.good())
- {
- cout<<"failed not good"<<endl;
- break;
- }
- }
- vector<WeirdRotor> getRotors() const
- {
- return rotors;
- }
- int weirdEncode(int convertedNumber)
- {
- for (WeirdRotor wr : rotors)
- {
- convertedNumber = wr.encrypt(convertedNumber);
- }
- return convertedNumber;
- }
- };
- int main()
- {
- WeirdMachine wm;
- vector<WeirdRotor> testing = wm.getRotors();
- cout<<testing.size()<<endl;
- char ch;
- while (cin.get(ch))
- {
- int convertedNumber = static_cast<int>(ch);
- if (convertedNumber == 26)
- {
- break;
- }
- cout<<wm.weirdEncode(convertedNumber)<<" ";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement