Форум программистов, компьютерный форум CyberForum.ru

Игра Угадай Слово ошибка в коде - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ создать программу для сравнения алгоритмов сортировки http://www.cyberforum.ru/cpp-beginners/thread863412.html
создать программу для сравнения алгоритмов сортировки (Выбором и Пузырьком)т.е. чтоб выдавал время построения массива.Помогите очень нужно.Желательно с объяснением.
C++ Сравнить n-чисел и найти максимальное и минимальное значение, не прибегая к if Надо сравнить n-чисел и найти максимальное и минимальное значение, не прибегая к ужасным разветлению оператора if? http://www.cyberforum.ru/cpp-beginners/thread863409.html
C++ Рекурсивная структура
Добрый день! Стоит задача написать односвязный список. Как все работает в общем я представляю, а конкретно я понимаю это так: имеем общую структуру элемента: struct List { int item; List *Next; };
Сортировка Шелла C++
Добрый день! Как сделать сортировку методом Шелла, если у меня числа в массив можно ввести и с клавиатуры и случайные числа. В массиве 100 элементов. register int i, j, gap, k; char x, a; a=9; a=5; a=3; a=2; a=1; for(k=0; k < 5; k++) {
C++ Возврат данных из .dll http://www.cyberforum.ru/cpp-beginners/thread863387.html
Добрый день, Есть функция в dll файле, которая при каждом ее запросе создает массив данных. Вопрос - как можно записать эти данные не привлекая txt файл, чтобы при следующем запуске программы эти данные не потерялись, и их можно было бы загрузить снова.
C++ Задача с бинарным деревом (написать функцию, которая свяжет все узлы на одном уровне:) Есть бинарное дерево: struct node { int n; // value of node struct node *left; // left subtree struct node *right; // right subtree struct node *level; // level pointer (node “to the right”) } Поля инициализированы нулями. Нужно написать функцию, которая свяжет все узлы на одном уровне: подробнее

Показать сообщение отдельно
hotborsh
0 / 0 / 0
Регистрация: 25.12.2010
Сообщений: 18
13.05.2013, 14:23     Игра Угадай Слово ошибка в коде
Здравствуйте,проблема в том, что программа работает не корректно. А именно в начале программы при вводе "да" игра закрывается, хотя наоборот должна начаться. Помогите пожалуйста. Собственно вот код :
C++
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>
#include <cctype>
using std::string;
const int NUM = 20;
const string wordlist[NUM] = {"Г*ðáóç", "ГЎГ*ГЎГіГёГЄГ*", "âîðîáåé",
    "Г¤Г*Г¬Г*", "¸æèê", "ГґГ*áðèêГ*", "ГЈГ*Г°Г*Г¦", "äåäóøêГ*", "ГіГІГЄГ*",
    "êîñìåòèêГ*", "ГІГ°Г*êòîð", "ëèГ*Г*Г*", "ìîðÿê", "Г*Г*ñîñ", "îìëåò",
    "Г·Г*éêГ*", "ГЈГЁГІГ*ðèñò", "ðåìîГ*ГІ", "Г±Г*ìîâГ*Г°", "ÿáëîêî"};
int main()
{
    setlocale(LC_ALL, "Russian");
    
    using std::cout;
    using std::cin;
    using std::tolower;
    using std::endl;
    
    std::srand(std::time(0));
    char play;
    cout << " Áóäåøü ëè ГўГ» ГЁГЈГ°Г*ГІГј èãðó Гў ñëîâГ*? <Г¤Г*/Г*ГҐГІ> ";
    cin >> play;
    play = tolower(play);
    while (play == 'Г¤Г*')
    {
        string target = wordlist[std::rand() % NUM];
        int length = target.length();
        string attempt(length, '-');
        string badchars;
        int guesses = 6;
        cout << " ìîå ñåêðåòГ*îå ñëîâî " << length
            << " ГЎГіГЄГўГ», ГўГ» äîãГ*Г¤Г*ëè \ Г*ГҐГІ "
            << " îäГ*Гі ГЎГіГЄГўГі Г§Г* îäèГ* Г°Г*Г§. Âû ïîëó÷Г*ГҐГІГҐ " << guesses
            << " Г*ГҐГЇГ°Г*âèëüГ*Г®.\ Г*ГҐГІ ";
        cout << " Г‚Г*ГёГ* ñëîâî: " << attempt << endl;
        while (guesses > 0 && attempt != target)
        {
            char letter;
            cout << " ÓãГ*Г¤Г*éòå ñëîâî ";
            cin >> letter;
            if (badchars.find(letter) != string::npos
                || attempt.find(letter) != string::npos)
            {
                cout << " Âû óæå äîãГ*Г¤Г*ëèñü. Ïîïðîáóéòå ГҐГ№ГҐ Г°Г*Г§..\ Г*ГҐГІ ";
                    continue;
            }
            int loc = target.find(letter);
            if (loc == string::npos)
            {
                cout << "Oh, bad guess!\ Г*ГҐГІ ";
                --guesses;
                badchars += letter; // add to string
            }
            else
            {
                cout << " ГЇГ°Г*âèëüГ*Г®!\ Г*ГҐГІ ";
                attempt[loc]=letter;
                // check if letter appears again
                loc = target.find(letter, loc + 1);
                while (loc != string::npos)
                {
                    attempt[loc]=letter;
                    loc = target.find(letter, loc + 1);
                }
           }
            cout << " Г‚Г*ГёГҐ ñëîâî:" << attempt << endl;
            if (attempt != target)
            {
                if (badchars.length() > 0)
                    cout << " ГЌГҐГЇГ°Г*âèëüГ*ûé âûáîð:" << badchars << endl;
                cout << guesses << " Г*ГҐГўГҐГ°Г*ûõ ïðåäïîëîæåГ*ГЁГ© îñòГ*ëîñü \ Г*ГҐГІ ";
            }
        }
        if (guesses > 0)
            cout << " ГќГІГ® ГЇГ°Г*âèëüГ*Г®!\ Г*ГҐГІ ";
        else
            cout << " ГЉ ñîæГ*ëåГ*ГЁГѕ, ГЅГІГ® ñëîâî " << target << ".\ Г*ГҐГІ ";
 
        cout << " Áóäåòå ëè ГўГ» ГЁГЈГ°Г*ГІГј ГҐГ№ГҐ?< Г¤Г* / Г*ГҐГІ > ";
        cin >> play;
        play = tolower(play);
    }
 
    cout << " äî Г±ГўГЁГ¤Г*Г*ГЁГї \ Г*ГҐГІ ";
 
 system("pause");
    return 0; 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru