Mam taki problem z poniższym programem, a nie wiem dlaczego ale wyświetla mi dwa rozwiązania.
Chce żeby wykonał tylko jedną rzecz, i ją wyświetlił. Problem pewnie banalny do rozwiązania jednak ja jako początkujący go nie widzę. Szkoda mi czasu na długie głowienie się nad tym. Program działa; ma zamieniać znaki z podanego ciągu na znaki z ciągu wcześniej zdeklarowanego w programie ciąg a lub b, w zależności od wyboru użytkownika. Taki tam program pseudo szyfrujący.
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <conio.h>
#include <cstring>
using namespace std;
string a = "abcdefghijklmnoprstuqxwyvz1234567890 ";
string b = "1234567890qwertyuiopasdfghjklzxcvbn_";
string c;
int x;
int main()
{
cout << "Aby zamienic wybierz 1: " << endl;
cout << "Aby przywrucic wybierz 2: " << endl;
cin >> x;
system("cls");
cout << "Podaj znaki: ";
int h;
getline(cin, c);
int n = c.length();
if (x = 1)
{
getline(cin, c);
int n = c.length();
for (int i = 0; i < n; i++)
{
h = a.find(c[i]);
cout << b[h];
}
cout << " " << endl;
n = c.length();
for (int i = 0; i < n; i++)
{
int v = b.find(c[i]);
cout << a[v];
}
cout << " " << endl;
}
system("pause");
return 0;
}
EDIT:PROBLEM ROZWIĄZANY KOLEJNY NA DOLE