-
Notifications
You must be signed in to change notification settings - Fork 0
/
nsaEncoder1.cpp
151 lines (133 loc) · 3.55 KB
/
nsaEncoder1.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
//Objective: template for C++ programs and to test code
//Name: Kevin Jaewoo Lee 1989282
//Course: COMSC-110-1572
//Compiler: TDM MinGW
//Editor: MS NotePad
//libraries
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
//Programmer defined data types
//NONE
//Special compiler dependent definitions
//NONE
//global constants/variables
//NONE
//Programmer defined functions
void introduction(string obj, string ins); //user introduction
string getFileName();
//main program
int main()
{
//Data
string objective = "The program will be a template for C++ programs and to test code.\n"; //program objective
string instructions = "Encode the entered text so that each character is converted to the next character in the ASCII code. That is, convert 'A' to 'B', '4' to '5', '*' to '+', etc. So the word Hello will appear as Ifmmp in encoded form. Remember a line of text contains multiple characters, and each character has an ASCII value, and by adding 1 to that ASCII value results in the next character in the ASCII table.\n\n"; //user instructions
int i;
string fileName;
ofstream fout;
ifstream fin;
int count = 0;
string first;
string second;
string third;
string forth;
//user introduction
introduction(objective, instructions);
//read input file
fileName = getFileName();
string secret = "secret.txt";
fin.open(fileName.c_str());
if (!fin.good()) throw "I/O error";
fout.open(secret.c_str(), ios::app);
if (!fout.good()) throw "I/O error";
int r;
cout << "Enter a line of text:";
cin >> r;
cin.ignore(1000,10);
getline(fin,first);
getline(fin,second);
getline(fin,third);
getline(fin,forth);
//encode the sentence
for (i = 0; i < first.length(); i=i+1)
{
first[i] = first[i] + 1; // bump the ASCII code by 1
count = count + 1;
}//for i
if ( r == 1)
{
cout << first;
}//if
for (i = 0; i < second.length(); i=i+1)
{
second[i] = second[i] + 1; // bump the ASCII code by 1
count = count + 1;
}//for i
if ( r == 2)
{
cout << second;
}//if
for (i = 0; i < third.length(); i=i+1)
{
third[i] = third[i] + 1; // bump the ASCII code by 1
count = count + 1;
}//for i
if ( r == 3)
{
cout << third;
}
for (i = 0; i < forth.length(); i=i+1)
{
forth[i] = forth[i] + 1; // bump the ASCII code by 1
count = count + 1;
}//for i
if ( r == 4)
{
cout << forth;
}//if
if ( r > 4 )
{
cout << " there are no line " << endl;
count = count + 1;
}
//output result
if (count == 0)
{
cout << " File was empty . " <<endl;
}
fout << first << endl;
fout << second << endl;
fout << third << endl;
fout << forth << endl;
fout.close();
fin.close();
}//main
//user introduction
void introduction(string obj, string ins)
{
//data
//obj is the program objective
//ins is the user instructions
//user introduction
cout << "Objective: " << obj;
cout << "Programmer: Kevin Jaewoo Lee 1989282\n";
cout << "Editor(s) used: Notepad\n";
cout << "Compiler(s) used: TDM MinGW\n";
cout << "File: " << __FILE__ << endl;
cout << "Compiled: " << __DATE__ << " at " << __TIME__ << endl;
cout << "Instructions: " << ins;
}//introduction
//get user specified filename
string getFileName()
{
//data
string fN;
//input filename
do
{
cout << "Please enter an input filename [i.e. : x.txt] : ";
getline(cin,fN);
}while(!(fN.length() >=5)); // do-while
return fN;
}//getFileName