Задать вопрос
14 марта, 08:32

Какую задачу решает приведенный фрагмент программы на языке Паскаль (a и b-переменные целого типа)

readln (a, b) ;

while ab do

if a>b

then a:=a-b

else b:=b-a;

writeln (a) ;

1) определяет минимум из двух чисел a и b

2) меняет значение a и b местами

3) определяет наименьшее общее кратное чисел a и b

4) определяет наибольшее общее кратное чисел a и b

5) определяет, на сколько больше значение среди чиселa а и b отличается от меньшего из них

+3
Ответы (2)
  1. 14 марта, 09:19
    0
    Ответ: Определяет наибольший общий делитель

    Пример 1:

    a=2 и b=3

    Первая итерация цикла: b=1

    Вторая итерация цикла: a=1

    Вывод: 1

    Пример 2:

    a=15 и b=5

    Первая итерация цикла: a=10

    Вторая итерация цикла: a=5

    Вывод: 5

    Пример 3

    a=25 и b=15

    Первая итерация цикла: a=10

    Вторая итерация цикла: b=5

    Третья итерация цикла: a=5

    Вывод: 5
  2. 14 марта, 09:58
    0
    5-й вариант.

    Обратите внимание на условие: если a больше b, то вычислить a - b. В противном случае, т. е., если b больше или равно a, вычисляется b-a. Однако, в задаче неточность. Строка else b:=b-a должна выглядеть вот так: else a:=b-a.

    Иначе, в случае, если второе число больше или равно первому, то выводится первое, а результат вычислений нигде не используется и не показывается.

    В доказательство моих слов давайте рассмотрим два варианта

    1) a=5; b=1

    Условие выполняется, происходит вычисление 5-1, результат которого помещается в переменную a, которая потом выводится на экран. Т. е. на экране будет напечатано 4.

    2) a=2; b=3

    Условие не выполняется, переход к блоку else, где происходит вычисление 3-2, результат которого помещается в переменную b. Однако, на экран выводится переменная a, которая содержит двоечку. Таким образом, либо при постановке задачи допущена ошибка, либо в перечне допустимых вариантов отсутствует правильный ответ.
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Какую задачу решает приведенный фрагмент программы на языке Паскаль (a и b-переменные целого типа) readln (a, b) ; while ab do if a>b then ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы