В программе константой прописывается целое число от 0 до 100(любое). Пользователь должен...

0 голосов
54 просмотров

В программе константой прописывается целое число от 0 до 100(любое). Пользователь должен его отгадать не более чем за 10 попыток.


Информатика (16 баллов) | 54 просмотров
0

Язык?

0

c++

Дан 1 ответ
0 голосов

Сгенерировать случайное число.

Ввести счетчик попыток. Присвоить ему значение 1.

Пока счетчик попыток меньше, либо равен 10

запрашивать у пользователя очередное число,

если оно больше загаданного, то выводить "много",

если оно меньше загаданного, то выводить "мало",

иначе сообщать, что число угадано и прерывать выполнение цикла,

увеличивать счетчик попыток на единицу.

После цикла, если число не было угадано, то вывести сообщение о том, что попытки исчерпаны, и какое число было загадано компьютером.

Самый верный способ отгадать число менее чем за 10 попыток - это делить диапазон на 2. Например, если число лежит в пределах от 0 до 100, то введя 50 мы сразу сокращаем диапазон поиска в два раза. Если было сказано, что загаданное число меньше 50-ти, то вводим 25 и таким образом снова сокращаем диапазон в 2 раза.

Если следовать этому правилу то потребуется 6-7 попыток, т.к. число 100 (изначальная длина диапазона) лежит в пределах между 26 и 27.

(26 баллов)
0

мне нужно это прописать в с++ , то есть прокомпелировать)

0

#include using namespace std;int main()/*{ setlocale(LC_ALL, "Russian"); int num = 100; (num % 100); int j = 0; int num2 = 0; while (num2 != num) { ++j; cout << "Введите число: "; cin >> num2; if (num < num2) { cout << "Слишком большое число!" << endl; } else if (num > num2) { cout << "Слишком маленькое число!" << endl; } } cout << endl << "Вы угадали число! c " << j << " попыток!" << endl; return 0;}

0

вот я написала, а результат не показывает )

0

#include "iostream"