Предмет: Информатика, автор: sqeezzzey

ДАЮ 80, СРОЧНО.Компьютер случайным образом загадывает число от 1 до 20 (диапазон на ваш выбор). Пользователь вводит число, пытаясь его угадать. Программа соответственно отвечает, больше загаданное число или меньше введённого с клавиатуры. После введения правильного ответа программа выводит сообщение о выигрыше и количество попыток.

*Нужно - диапазон вводить с клавиатуры, ввести ограничение – например, количество попыток должно быть не больше 6. Или даже вести обратный отсчет попыток.

Ответы

Автор ответа: TTолковник
0

import random

a, b = input(), input() // вводим числа

order = [i for i in range(a, b+1)] // это последовательность от а до б для проверки

x = random.randrange(a, b, 1) // рандомное число

count_tryings = 6 // количество попыток

while count_tryings !=0: // запускаем цикл игры

usver = input() // наш юзверь пытается угадать

if usver in order: // это проверка на то, чтобы он не вышел из последовательности, попытки также тратятся

if usver == x:

print('Ты выиграл')

break

elif usver < x:

print('пробуйте больше')

elif usver > x:

print('пробуйте меньше')

else:

print('вышли за пределы последовательности')

count_tryings-=1 // - 1 попытка


TTолковник: хотел бы отметить, что поиграть я не смог, потому что мой комп блокирует ввод с клавиатуры, так что проверить на логику не могу, подкрутите сами, что нужно
sqeezzzey: Я сглупил, не написал, что нужно на пэаскале, не составит вам труда написать на паскале?
TTолковник: алгоритм перепишите, я паскаль из принципа не юзаю
TTолковник: там слишком много всего лишнего и ненужного, там нет ООП, единственный сомнительный плюс перед питоном - типизация руками
Автор ответа: nno971055
0

Ответ:

var n,u,i: byte;

begin

   randomize;

   n := random(100);

   i := 1;

   writeln('Отгадайте число за 10 попыток');

   while i <= 10 do begin

       write(i,'-я попытка: ');

       readln(u);

       if u > n then

           writeln('Много')

       else

           if u < n then

               writeln('Мало')

           else begin

               writeln('Угадано!');

               break;

           end;

       i := i + 1;

   end;

   if i = 11 then  

       writeln('Вы не угадали. Было загадано ',n);

Объяснение:

Похожие вопросы
Предмет: Қазақ тiлi, автор: qwertyuiop119
Предмет: Химия, автор: UtiMoyaZaya