✎ Задать свой вопрос   *более 30 000 пользователей получили ответ на «Решим всё»

Задача 7642 Ниже на четырёх языках записан алгоритм.

УСЛОВИЕ:

Ниже на четырёх языках записан алгоритм. Получив на входе число х, этот алгоритм печатает два числа: а и Ь. Укажите такое число х, при вводе которого алгоритм печатает сначала 1, а потом 2.

РЕШЕНИЕ:

Программа состоит из одного цикла, его мы будем разбирать.
Но сначала определимся с переменными. Есть: a = 0 и b = 1. Нужно: a = 1 и b = 2.

Разбираем каждую переменную:
a) Смотрим, от чего зависит "а". В цикле есть строчка "a:=a+1" (паскаль), что она делает? Эта строчка работает как счетчик. С каждым заходом в цикл "а" увеличивается на единицу. На выходе мы должны получить "а = 1", следовательно, нам нужно, чтобы цикл сработал один раз. Смотрим на условие цикла: while x > 0. Также заметим строчку "x:=x div 10", значит, перед выходом из цикла, от исходного числа "отрубают" последнюю цифру. И это будет продолжаться до тех пор, пока исходное число не станет нулём. Выходит, чтобы цикл выполнился один раз, нам нужно число, состоящее из одной цифры.

б) Смотрим, от чего зависит переменная "b". Замечаем строчку: "b := b·(x mod 10)". Получается, каждая "отрубленная" последняя цифра будет умножаться на "b".
Сейчас у нас b = 1, а после выполнения программы должно быть b = 2. Вспоминаем, что у нас число состоит из одной цифры. Какая цифра при умножении на единицу даёт двойку? Конечно, это сама двойка.

Получается, ответ 2.

Вопрос к решению?
Нашли ошибку?

ОТВЕТ:

2

Добавил YanMarkov, просмотры: ☺ 1504 ⌚ 11.03.2016. информатика 10-11 класс

Решения пользователей

Увы, но свой вариант решения никто не написал... Будь первым!
Хочешь предложить свое решение? Войди и сделай это!

Написать комментарий

Последние решения
(прикреплено изображение) [удалить]
✎ к задаче 38639
(прикреплено изображение) [удалить]
✎ к задаче 38644
https://youtu.be/TCYxxYO_5ag
поставьте лайк)
[удалить]
✎ к задаче 38497
(прикреплено изображение) [удалить]
✎ к задаче 38641
(прикреплено изображение) [удалить]
✎ к задаче 38638