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
|
//This work is public domain, authored by Albatross (Amaya S).
#include <iostream>
#include <string>
#include <cctype>
#include <array>
int main() {
const std::array<std::string, 26> firstname = { "Back Alley", "Railroad",
"Uptown", "Bay Harbor", "Circus", "Carpool", "Meat Locker", "Flophouse",
"Igloo", "Boxcar", "Outback", "Watchtower", "Playground", "Conservatory",
"Delicatessen", "Beach House", "Backstage", "Ice Truck", "Garage Sale",
"Box Factory", "Hangar", "Swamp", "Nursery", "Strip Mall", "Octagon",
"Kitchen" };
const std::array<std::string, 26> lastname = { "Strangler", "Tickler", "Slicer",
"Slasher", "Stabber", "Hacker", "Smasher", "Mangler", "Flayer",
"Smotherer", "Skinner", "Pickler", "Chomper", "Butcher", "Peeler",
"Disemboweler", "Cutter", "Killer", "Asphyxiator", "Chef", "Diner",
"Monster", "Boiler", "Pounder", "Collector", "Keeper" };
bool nospaceflag, onenameflag;
char firstlet, lastlet;
std::string naem = "";
std::cout << "What is your full name, without titles or suffixes?" << std::endl;
do {
nospaceflag = true;
onenameflag = true;
firstlet = '\0';
std::getline(std::cin, naem);
for(char it : naem) {
if(std::isalpha(it)) {
lastlet = std::tolower(it);
if(firstlet == '\0')
firstlet = std::tolower(it);
if(!nospaceflag && onenameflag)
onenameflag = false;
}
else if(it == ' ' || it == '\t') {
if(firstlet != '\0')
nospaceflag = false;
}
}
if(firstlet == '\0') {
std::cout << "Please enter your full name." << std::endl;
continue;
}
if(onenameflag)
std::cout << "No, no, no. What's your FULL name?" << std::endl;
} while(onenameflag);
std::cout << "No it's not.\n" << "Your real name is "
<< firstname[firstlet - 'a'] << " " << lastname[lastlet - 'a'] << ".\n"
<< "We are watching your every move.\n"
<< "Did you think we didn't know?" << std::endl;
return 0;
}
|