int main()
{
string t1 = "L", t2 = "u", t3 = "k", t4 = "c", t5 = "y";
string temp1, temp2, temp3, temp4, temp5;
temp1 = '0', temp2 = '0', temp3 = '0', temp4 = '0', temp5 = '0';
while ((t1 != temp1) && (t2 != temp2) &&
(t3 != temp3) && (t4 != temp4) && (t5 != temp5))
{
temp1 = rand() % 'a' + 32;
temp2 = rand() % 'a' + 32;
temp3 = rand() % 'a' + 32;
temp4 = rand() % 'a' + 32;
temp5 = rand() % 'a' + 32;
cout << temp1 << temp2 << temp3 << temp4 << temp5; system("cls");
}
cout << temp1 << temp2 << temp3 << temp4 << temp5;
return 0;
}
Эта код должен "искать" каждый символ, пока не найдет нужный. Но как бы это всё в унисон организовать... Можно напичкать циклами, каждый из которых ищет свой символ по очереди, но это долго, потому что оригинальное слово другое и большое. Сейчас даже не представляю, как заставить перебирать все символы подряд, а так же, останавливая перебор символа, когда он найден, продолжая искать другие.
Ответ
Так вам надо зрелищ или подбор? Подбор - все символы начинаются с a и идут, меняясь одновременно, пока не будет получен нужный...
#include
using namespace std;
int main(int argc, const char * argv[])
{
string res = "Qwertyui";
string att = "AAAAAAAA";
for(;res != att;)
{
cout << att << '
';
for(int i = 0; i < att.length(); ++i)
if (att[i] != res[i]) att[i]++;
std::this_thread::sleep_for(200ms); // задержка для зрелищности :)
}
cout << att << endl;
}
Комментариев нет:
Отправить комментарий