Как можно эффективно решить эту задачу?
Бинарный поиск
Создать 2 переменные min и max, которым присвоить 1 и 100 соответственно. В цикле попросить пользователя ввести число от 1 до 100 и присвоить его переменной, и завершить цикл, когда введенное пользователем будет числом в нужном диапазоне. Затем в цикле рандомно генерировать число x от min до max, и сверять с загаданным пользователем. Если х меньше загаданного, то min присвоить х, если больше, то х присвоить в max. Если числа равны закончить цикл и вывести поздравление.
По идее так!