Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
Natasha7

Игра "Цифры рядом"

30.01.2013, 13:50. Показов 1449. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, помогите, пожалуйста, написать программу:
Программа загадывает целое четырехзначное положительное число. Игрок должен отгадать число. Он называет две цифры и получает один из 3-х ответов:
1)есть, если совпала одна или обе цифры с цифрами задуманного числа;
2)есть рядом, если совпали обе цифры, причем в числе они стоят рядом в любом порядке,
3)нет - в противных случаях.
Например: исходное число 1277. "13", "17" - есть; "12", "72" - есть рядом.
Когда игрок готов назвать все число, он сообщает все 4 цифры в определенном порядке. Если совпало с заданным числом - выигрыш, нет - проигрыш.
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.01.2013, 13:50
Ответы с готовыми решениями:

Функция определения рядом ли цифры в 2 числах
Здравствуите, очень нужна помощь.Дали задание по C Recursia.Значит, нужно написать функцию которая получает 3 параметра 1-положительное...

Определить количество N-разрядных натуральных чисел, у которых никакие 2 рядом стоящие цифры не равны
Доброго времени суток! Сессия грядет и студенты вспоминают про киберфорум. Вот над чем я бьюсь, и прошу помощи: Определите...

Игра "Цифры рядом"
Привет, кто-нибудь может помочь Программа загадывает целое четырехзначное положительное число. Игрок должен отгадать число. Он называет...

1
6 / 6 / 5
Регистрация: 22.08.2011
Сообщений: 75
30.01.2013, 17:24
Лучший ответ Сообщение было отмечено как решение

Решение

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
#include <iostream>
#include <ctime>
#include <cstdlib>
 
using std::cout;
using std::cin;
using std::endl;
using std::string;
 
int main()
{
    srand(time(NULL));
    char val[4]; // вместо числа я использую массив из четырёх символов, ведь
    // мы не производим с числом арифметических операций
    for (int i=0; i<4; i++)
    {
        // заполняем val случайным образом
        val[i] = rand()%10 + '0';
    }
    char guess_1, guess_2;
    while (true)
    {
        cout << "Введи первую цифру ";
        cin  >> guess_1;
        cout << "Теперь вторую ";
        cin  >> guess_2;
        int ix_1 = -1;
        int ix_2 = -1;
        for (int i=0; i<4; i++) // ищем введённые цифры. Если они найдены,
        // присваиваем их индексы переменным ix_1, ix_2
        {
            if (val[i]==guess_1 && ix_1==-1) { ix_1 = i; }
            else if (val[i]==guess_2) { ix_2 = i; } // else if необходимо в
            // случае если игрок ввёл две одинаковых цифры
        }
        if (ix_1>=0 && ix_2>=0) // если найдены обе цифры, проверяем
        // на "есть рядом"
        {
            if ((ix_1-ix_2)==1 || (ix_2-ix_1)==1)
            {
                cout << "Есть рядом" << endl;
            }
            else { cout << "Есть" << endl; }
        }
        else if (ix_1>0 || ix_2>0) { cout << "Есть" << endl; }
        else { cout << "Нет" << endl; }
        cout << "Назовёшь число?(да/нет) ";
        string check;
        cin >> check;
        if (check=="да")
        {
            string attempt;
            cin >> attempt;
            string contin;
            for (int i=0; i<4; i++)
            {
                if (val[i]!=attempt[i])
                {
                    cout << "Проигрыш.\nПопробуешь ещё раз?(да/нет) ";
                    cin >> contin;
                    if (contin=="нет") { return 0; }
                    else { break; }
                }
                else
                {
                    cout << "Выигрыш. Возьми с полки пирожок" << endl;
                    return 0;
                }
            }
        }
    }
    return 0;
}
Заметь, программа не проверяет ошибки, например, если геймер ввёл две цифры или букву.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.01.2013, 17:24
Помогаю со студенческими работами здесь

Сколько n-значных чисел можно составить, используя цифры 5 и 9, в которых три одинаковые цифры не стоят рядом?
Две цифры Сколько n-значных чисел можно составить, используя цифры 5 и 9, в которых три одинаковые цифры не стоят рядом? Для n=3...

Сколько существует шестизначных десятичных чисел, содержащих по две чётные цифры каждое, но эти цифры не стоят рядом?
Сколько существует шестизначных десятичных чисел содержащих по две чётные цифры каждое, но эти цифры не стоят рядом. Числа могут начинаться...

Сколько существует шестизначных десятичных чисел содержащих по две чётные цифры каждое, но эти цифры не стоят рядом
Помогите пожалуйста решить задачу. Сколько существует шестизначных десятичных чисел содержащих по две чётные цифры каждое,но эти цифры в...

Что означают цифры рядом с GENERATE
Здравствуйте, форумчане! Не могу вспомнить, что означают цифры, рядом с GENERATE. GENERATE 15,2 мне понятно, это клиенты приходят в...

Две одинаковые цифры, стоящие рядом
Помогите разобраться с ошибкой, как я понимаю он не выходит из цикла. //Ввести целое число и определить, верно ли, что в его записи...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru