Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.75
MrZedFlame
0 / 0 / 0
Регистрация: 15.07.2012
Сообщений: 29
#1

Программа отгадывает загаданное пользователем число: реализовать "защиту от дурака" - C++

20.10.2012, 11:36. Просмотров 1155. Ответов 7
Метки нет (Все метки)

Программа отгадывает, загаданное пользователем число
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
#include "stdafx.h"
#include <locale>
#include <iostream>
#include <conio.h>
#include <Windows.h>
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "Russian_Russia.1251");
    int min = 1; 
    int max = 1000; 
    int number; 
    char ch ;
    printf ("Загадайте число от 1 до 1000 \n");
    while(true)
    {    
        number = (min+max) / 2;
        std::cout << "Загаданное вами число больше, меньше или равно " << number << "? Если больше, нажмите +; еслименьше, нажмите -; если равно, нажмите =." << std::endl; 
        std::cin >> ch; 
        if(ch == '+') 
            min = number; 
        if(ch == '-') 
            max = number; 
        if(ch == '=') break;
        system("cls");
   } 
    std::cout << "Вы загадали число " << number <<std::endl;
    _getch();
    return 0;
}
Нужно сделать так, что бы когда вводишь символ, отличный от "+", "-", "=" программа выдавала что типа "некорректный ввод данных".
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2012, 11:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа отгадывает загаданное пользователем число: реализовать "защиту от дурака" (C++):

Игра - компьютер отгадывает загаданное пользователем число - C++
Доброго времени суток! Саму игру я написал, может, и коряво, но вроде работает нормально, но проблема в том, что компьютер повторяет одни...

Как с scanf сделать "защиту от дурака"? - C++
Нужно, чтобы пользователь ввел две целочисленные переменные. Как делал я: bool ReadInteger(int &amp;var) { if (scanf(&quot;%d&quot;, &amp;var) != 1)...

Реализовать защиту от дурака (проверку ввода) - C++
Вводится шестизначное число(номер автобусного билета). Нужно выполнить защиту от дурака(чтобы вводились только цифры, а не другие...

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

Реализовать структуру "Анкета" с полями "Фамилия", "Пол" и "Адрес" - C++
Здравствуйте. Проходим тему Структуры, не могу понять, как определить количество, само задание: #include &lt;iostream&gt; #include...

Написать программу, угадывающую загаданное пользователем число, за несколько попыток (цикл while) - C++
добрый вечер всем вот код,нужно чтоб компьютер отгадал число ведёное тобой с клавиатуры за определёное кол-во попыток,но проблема в том что...

7
CableGuy
14 / 14 / 1
Регистрация: 29.03.2012
Сообщений: 41
20.10.2012, 11:54 #2
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
#include "stdafx.h"
#include <locale>
#include <iostream>
#include <conio.h>
#include <Windows.h>
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "Russian_Russia.1251");
    int min = 1;
    int max = 1000;
    int number;
    char ch ;
    printf ("Загадайте число от 1 до 1000 \n");
    bool number_finded=false;
    while(number_finded==false)
    {
        number = (min+max) / 2;
        std::cout << "Загаданное вами число больше, меньше или равно " << number << "? Если больше, нажмите +; еслименьше, нажмите -; если равно, нажмите =." << std::endl;
        std::cin >> ch;
        if(ch == '+')
            min = number;
        else
            if(ch == '-')
                max = number;
            else
                if(ch == '=')
                    number_finded=true;
                else
                    std::cout << "Некоректный ввод данных" << std::endl;
   }
    std::cout << "Вы загадали число " << number <<std::endl;
    system("pause");
    return 0;
}
1
Евгений89
99 / 99 / 9
Регистрация: 17.04.2011
Сообщений: 554
Завершенные тесты: 2
20.10.2012, 11:55 #3
C++
1
2
3
while(ch!= '+'||'-'||'='){
cout << "не корректный ввод данных"
}
0
!Андрей!
6 / 6 / 0
Регистрация: 31.01.2012
Сообщений: 134
20.10.2012, 11:58 #4
MrZedFlame,
C++
1
2
do {cin >> ch;}
while((ch !='+') && (ch != '-') && (ch != '='));
0
Евгений89
99 / 99 / 9
Регистрация: 17.04.2011
Сообщений: 554
Завершенные тесты: 2
20.10.2012, 12:05 #5
C++
1
2
3
while(ch!= '+')||(ch!='-')||(ch!= '='){
cout << "не корректный ввод данных"
}
0
MrZedFlame
0 / 0 / 0
Регистрация: 15.07.2012
Сообщений: 29
20.10.2012, 12:13  [ТС] #6
Цитата Сообщение от Евгений89 Посмотреть сообщение
C++
1
2
3
while(ch!= '+')||(ch!='-')||(ch!= '='){
cout << "не корректный ввод данных"
}
Куда его вставить то?
0
Евгений89
99 / 99 / 9
Регистрация: 17.04.2011
Сообщений: 554
Завершенные тесты: 2
20.10.2012, 12:43 #7
до того пока не произведен ввод символов

Добавлено через 10 минут
перед if

Добавлено через 4 минуты
Цитата Сообщение от CableGuy Посмотреть сообщение
std::cin >> ch;
после этой строчки
0
silent_1991
24.10.2012, 11:16     Программа отгадывает загаданное пользователем число: реализовать "защиту от дурака"
  #8

Не по теме:

Евгений89, два раза попробовали и оба раза не угадали

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.10.2012, 11:16
Привет! Вот еще темы с ответами:

Двусвязный список с объектом трех типов: "целое число", "вещественное число", "строка" - C++
Есть проблема. Реализовать двухсвязный список. Каждый элемент списка может содержать один объект. Объект может быть трех типов: &quot;целое...

Создать классы "Computer", "Software", "User" и реализовать взаимодействие объектов этих типов между собой - C++
Помогите решить задачку,нужна в инст на экзамен. Составить программу реализующую: 1)классы,которые могут содержать...

программа, которая отгадывает число - C++
Я загадаю целое число из интервала . Напишите программу, которая за минимальное число вопросов отгадает это число. Играть будем так. Я...

Реализовать класс родительский класс "Пара чисел" и класс-наследник "Комплексное число" - C++
Ткма работы создать класс pair (пара чисел); определить метод перемножения полей и операцию сложения пар (a,b)+(c,d) =(a+b,c+d)...


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

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

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