Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <map>
- using namespace std;
- std::map<std::string, std::string> usermap;
- void addUser(std::string username, std::string password) {
- usermap[username] = password;
- }
- bool registered(std::string username) {
- if (usermap.find(username) != usermap.end()) {
- return true;
- }
- return false;
- }
- string getPassword(std::string username) {
- if (registered(username)) {
- return usermap[username];
- }
- return NULL;
- }
- bool passwordIsCorrect(std::string username, std::string password) {
- if (registered(username)) {
- if (usermap[username] == password) {
- return true;
- }
- return false;
- }
- return false;
- }
- void program() {
- std::string huser;
- std::string hpass;
- int hop;
- std::cout << "\nWelcome!\n1. login\n2. register\n";
- std::cin >> hop;
- if (hop == 1) {
- std::cout << "Enter your username: \n";
- std::cin >> huser;
- if(registered(huser)) {
- std::cout << "Enter your password: \n";
- std::cin >> hpass;
- if (passwordIsCorrect(huser, hpass)) {
- std::cout << "Logged in!\n";
- program();
- } else {
- std::cout << "Invalid password!\n";
- program();
- }
- } else {
- std::cout << "Invalid username!\n";
- program();
- }
- } else if (hop == 2) {
- std::cout << "Enter a username: \n";
- std::cin >> huser;
- if (registered(huser)) {
- std::cout << "Already registered!\n";
- program();
- } else {
- std::cout << "Enter a password: \n";
- std::cin >> hpass;
- addUser(huser, hpass);
- std::cout << "registered!\n";
- program();
- }
- }
- }
- int main(int argc, char **argv) {
- program();
- }
RAW Paste Data