#include <iostream>
#include <unordered_map>
#include <string>
std::string AskNacipher(){
std::string Nacipher;
std::getline(std::cin, Nacipher);
return Nacipher;
}
int ConvertLetters(const std::string & Letters){
// Converts letters to numerical value.
std::unordered_map <char, double > Nacipher_Values = {
{' ', 0},
{'0', 0},
{'1', 1},
{'2', 2},
{'3', 3},
{'4', 4},
{'5', 5},
{'6', 6},
{'7', 7},
{'8', 8},
{'9', 9},
{'a', 1},
{'l', 2},
{'w', 3},
{'h', 4},
{'s', 5},
{'d', 6},
{'o', 7},
{'z', 8},
{'k', 9},
{'v', 10},
{'g', 11},
{'r', 12},
{'c', 13},
{'n', 14},
{'y', 15},
{'j', 16},
{'u', 17},
{'f', 18},
{'q', 19},
{'b', 20},
{'m', 21},
{'x', 22},
{'i', 23},
{'t', 24},
{'e', 25},
{'p', 26},
{'A', 1},
{'L', 2},
{'W', 3},
{'H', 4},
{'S', 5},
{'D', 6},
{'O', 7},
{'Z', 8},
{'K', 9},
{'V', 10},
{'G', 11},
{'R', 12},
{'C', 13},
{'N', 14},
{'Y', 15},
{'J', 16},
{'U', 17},
{'F', 18},
{'Q', 19},
{'B', 20},
{'M', 21},
{'X', 22},
{'I', 23},
{'T', 24},
{'E', 25},
{'P', 26}
};
// Creates string Nacipher
// converts to uppercase
// transform(Nacipher.begin(), Nacipher.end(), Nacipher.begin(),::toupper);
//std::cin >> Nacipher;
int sum = 0;
for (auto ch : Letters)
sum += Nacipher_Values[ch];
return sum;
}
void PrintNacipher(){
std::string Nacipher = AskNacipher();
if(!Nacipher.empty()){
std::cout << "by these letters ~" << Nacipher << "~ be transposed ~" << ConvertLetters(Nacipher) << "~ \n";
PrintNacipher();
}
else {
std::cout <<" \n";
std::cout <<"(if including numbers please use single digits only)\n";
}
}
int main() {
// Gives the value to the user.
PrintNacipher();
return 0;
}
Write, Run & Share C++ code online using OneCompiler's C++ online compiler for free. It's one of the robust, feature-rich online compilers for C++ language, running on the latest version 17. Getting started with the OneCompiler's C++ compiler is simple and pretty fast. The editor shows sample boilerplate code when you choose language as C++ and start coding!
OneCompiler's C++ online compiler supports stdin and users can give inputs to programs using the STDIN textbox under the I/O tab. Following is a sample program which takes name as input and print your name with hello.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string name;
cout << "Enter name:";
getline (cin, name);
cout << "Hello " << name;
return 0;
}
C++ is a widely used middle-level programming language.
When ever you want to perform a set of operations based on a condition If-Else is used.
if(conditional-expression) {
//code
}
else {
//code
}
You can also use if-else for nested Ifs and If-Else-If ladder when multiple conditions are to be performed on a single variable.
Switch is an alternative to If-Else-If ladder.
switch(conditional-expression){
case value1:
// code
break; // optional
case value2:
// code
break; // optional
......
default:
code to be executed when all the above cases are not matched;
}
For loop is used to iterate a set of statements based on a condition.
for(Initialization; Condition; Increment/decrement){
//code
}
While is also used to iterate a set of statements based on a condition. Usually while is preferred when number of iterations are not known in advance.
while (condition) {
// code
}
Do-while is also used to iterate a set of statements based on a condition. It is mostly used when you need to execute the statements atleast once.
do {
// code
} while (condition);
Function is a sub-routine which contains set of statements. Usually functions are written when multiple calls are required to same set of statements which increases re-usuability and modularity. Function gets run only when it is called.
return_type function_name(parameters);
function_name (parameters)
return_type function_name(parameters) {
// code
}