Ks113
08.02.2022 08:35

Модифицированный алгоритм Евклида для вычисления наибольшего общего делителя двух натуральных чисел, формулируется так: нужно заменять большее число на остаток от деления большего на меньшее до тех пор, пока остаток не станет равно нулю; тогда второе число и есть НОД. Напишите программу, которая реализует этот алгоритм. Входные данные
Входная строка содержит два числа, разделённые пробелом – a и b .

Выходные данные
Программа должна вывести в одной строке два числа: сначала наибольший общий делитель двух введённых чисел, а затем – количество шагов цикла, которые были выполнены.

Модифицированный алгоритм Евклида для вычисления наибольшего общего делителя двух натуральных чисел, формулируется так: нужно заменять большее число на остаток от деления большего на меньшее до тех пор, пока остаток не станет равно нулю; тогда второе число и есть НОД. Напишите программу, которая реализует этот алгоритм.

Входные данные
Входная строка содержит два числа, разделённые пробелом – a и b .

Выходные данные
Программа должна вывести в одной строке два числа: сначала наибольший общий делитель двух введённых чисел, а затем – количество шагов цикла, которые были выполнены.

Написать на Паскале,

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Аня20181
09.11.2022 09:19

ответ:1. Таблицы сложения и умножения:

Вычисления во вложении. Последнее деление на самом деле можно было бы "в столбик" и не писать, и так понятно, какой будет результат.

2. Переводим в двоичную систему счисления и дописываем вперед незначащие нули, пока не наберётся 8 знаков:

3. Добавляется знаковый бит: дописываем вперед 0, если число положительное, и 1, если отрицательное. Для неотрицательных чисел по сути ничего не меняется, а отрицательные представляем в дополнительном коде: меняем все биты на противоположные и добавляем к результату 1.

-56: меняем биты на противоположные (получаем 11100011) и добавляем 1. Окончательно получается  

Объяснение:

0,0(0 оценок)
Ответ:
евол
07.08.2022 10:15
Для вычисления среднего учащихся, сдавших экзамен, нужно просмотреть все n=30 учащихся и найти сумму s и количество k для тех учащихся, которые набрали более а затем получить и вывести s/k с нужной точностью.

const
  n=30;
var
  x:array[1..n] of integer;
  i,k,s: integer;
begin
  Randomize;
  Writeln('Результаты сдачи');
  k:=0; s:=0;
  for i:=1 to n do
  begin
    x[i]:=Random(101);
    Write(x[i]:4);
    if x[i]>20 then begin s:=s+x[i]; Inc(k) end
  end;
  Writeln;
  Writeln('Средний сдавших равен ',s/k:6:3)
end.

Тестовое решение:
Результаты сдачи
  39  10  74  74  46  61  22  11   6  48  17  62  21  98  69  54  12   4  38  72  53  46  92  16  87  67  34  44  45  86
Средний сдавших равен 57.913
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота