Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Sabah
0 / 0 / 0
Регистрация: 11.03.2018
Сообщений: 7
1

Подключить словарь к "виселице"

16.03.2018, 01:06. Просмотров 438. Ответов 8
Метки нет (Все метки)

Нужно что-бы программа брала слова из .txt файла и загадывала их, а не те три слова по умолчанию.

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
#include <vector>
#include <iostream>
#include <string>
#include <algorithm>
#include <ctime>
using namespace std;
 
int main()
{
    const int MAX_WRONG = 8;
    vector<string>words;
    words.push_back("GUESS");
    words.push_back("HANGMAN");
    words.push_back("DIFFICULT");
    srand((time(0)));   
    random_shuffle(words.begin(), words.end());
    const string THE_WORD = words[0];
    int wrong =0;
    string soFar(THE_WORD.size(),'-');
    string used = "";
    cout<<"Welcome! Good luck!"<<endl;
    while ((wrong < MAX_WRONG) && (soFar != THE_WORD)) {
        cout<<"/n/nYou have "<< (MAX_WRONG - wrong);
        cout<<" incorrect guesses left." <<endl;
        cout<<"You've used the following: "<< used << endl;
        cout << "So far? the word is:" << soFar << endl;
        char guess;
        cout << "\nEnter you guess:"; cin >> guess;
        guess = toupper (guess);
        while (used.find(guess)!=string::npos) {
            cout << "\n You've alredy guessed " << guess << endl;
            cout <<"Enter you guess:"; cin >> guess;
            guess = toupper(guess);
        }
        used +=guess;
        if (THE_WORD.find(guess) != string::npos) {
            cout << "that's rigt! " << guess << "is in the word.\n";
            for(int i = 0; i < THE_WORD.length(); ++i) {
                if (THE_WORD[i] == guess) {
                soFar[i] = guess;
                }
            }
        }else {
            cout << "Sorry, " << guess << " isn't in the word.\n";
            ++wrong;
        }
    }
    system("pause");
    return 0;
}
Добавлено через 1 час 49 минут
Во первых поделючаем библиотеку #include <iostream>
char buff[5]; загоняем в буфер допустим 5 слов
ifstream fin("words.txt"); открыли файл теперь у нас появилось 5 слов в буфере buff
и это все до чего я дотугодумил, а вот как их перемешать и записать в программу не знаю.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2018, 01:06
Ответы с готовыми решениями:

Паттерн "Итератор" для шаблонного класса "Словарь"
Препод дал задание сделать шаблонный словарь и реализовать для него иттератор. Сделал словарь, но...

Заданный словарь слов. Найти в нем слова-палиндромы, то есть такие, которые одинаково читаются слева направо и наоборот, например, "АННА", "ШАЛАШ"
Заданный словарь слов. Найти в нем слова-палиндромы, то есть такие, которые одинаково читаются...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;,...

Для каждой строки найти слова, которые не имеют ни одного из букв: "l", "k", "r", "s" i "j"
Задано символьные строки. Строка состоит из нескольких слов (наборов символов), которые разделяются...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование)
Разработать программу с использованием наследования классов, реализующую классы: − воин; −...

8
nd2
3102 / 2596 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.03.2018, 01:19 2
Цитата Сообщение от Sabah Посмотреть сообщение
Во первых поделючаем библиотеку #include <iostream>
fstream.
Цитата Сообщение от Sabah Посмотреть сообщение
char buff[5]; загоняем в буфер допустим 5 слов
C++
1
string buff[5];
0
Sabah
0 / 0 / 0
Регистрация: 11.03.2018
Сообщений: 7
16.03.2018, 01:35  [ТС] 3
Все равно не получается =(
0
nd2
3102 / 2596 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.03.2018, 01:47 4
Цитата Сообщение от Sabah Посмотреть сообщение
Все равно не получается =(
Как может получиться, если ничего не делать?
0
16.03.2018, 01:47
Sabah
0 / 0 / 0
Регистрация: 11.03.2018
Сообщений: 7
16.03.2018, 01:55  [ТС] 5
Пятый час в гугле, много чего перепробовал, ничего не работает
0
nd2
3102 / 2596 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.03.2018, 01:59 6
Цитата Сообщение от Sabah Посмотреть сообщение
много чего перепробовал, ничего не работает
Про это один ты знаешь, я ничего не вижу.
0
Sabah
0 / 0 / 0
Регистрация: 11.03.2018
Сообщений: 7
16.03.2018, 02:02  [ТС] 7
А что сюда постить если оно даже не компилируется? Говорю не могу понять как подключить, и так уже размышления выложил. И всё равно ничего не делаю
0
nd2
3102 / 2596 / 1134
Регистрация: 29.01.2016
Сообщений: 8,690
16.03.2018, 02:04 8
Цитата Сообщение от Sabah Посмотреть сообщение
А что сюда постить если оно даже не компилируется?
А что, код за тебя писать?
0
Sabah
0 / 0 / 0
Регистрация: 11.03.2018
Сообщений: 7
16.03.2018, 02:06  [ТС] 9
Был бы очень блогадарен если бы дописали этот кусок, я бы посмотрел как это и от этого бы уже и отталкивался, и продолжил свои изыскания в С++
0
16.03.2018, 02:06
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2018, 02:06

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления"
Помогите с кодом написания задачи, не понимаю как написать классы в классе. Нужно создать класс...

Создать абстрактный класс "Издание" и производные классы "Книга", "Статья", "Электронный ресурс"
1. Создать абстрактный класс Издание с методами, позволяющими вывести на экран информацию об...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания"
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.