Найти НОД трёх чисел, используя рекурсивную функцию нахождения НОД двух чисел - Pascal ABC

  1. Помогите решить.8. Найти НОД трёх чисел, используя рекурсивную функцию нахождения НОД двух чисел. Из трёх чисел найти пару чисел с максимальным НОД. (например, 25, 15, 45 НОД(25,15,45)=5, числа 15 и 45 имеют максимальный НОД=15).


textual

Код:

Function NOD(a,b : Longint) : Longint;
  Function nd(aa,bb : Longint) : Longint;
  Begin
    If aa mod bb = 0 then nd:=bb else nd:=nd(bb,aa mod bb);
  End;
Begin
  NOD:=a;
  If a<>b then
    If a>b then NOD:=nd(a,b)
      else NOD:=nd(b,a);
End;


Похожие ответы
  1. Проверьте, правильно ли работает программа. А именно PROCEDURE BSr, и правильность передачи переменных в основную программу. ЗАДАНИЕ: Сформировать массив из чисел, больших среднего.

  1. 34. Найти сумму положительных целых чисел, меньших 100

  1. С клавиатуры задается последовательность чисел. Ввод прекращается по отрицательному числу в задаваемой последовательности. Найти сумму чисел, а также те из них, которые лежат в интервале от 1 до 5. Определить количество таких чисел.

  1. Подсчитать количество чисел, принадлежащих промежутку [X,Y] и лежащих выше главной диагонали. Как вывести ответ из промежутка? Не дописал. Был бы рад помощи.

  1. Pascal1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 var a,c: integer; begin cls; randomize; a:=random (99999+99999+1)-99999; writeln ( 'исходное числo: ',a); if (a mod 10) mod 2 =0 then writeln (' делится на 2') else writeln (' не делится на 2'); while a<>0 do begin c:= c+(a mod 10); a:= a div 10; end; if c mod 3 = 0 then writeln (' число делится на 3') else writeln (' число не делится на 3'); end.признак делимости на 6 - это значит, что число делится на 2 и 3. я сделала по отдельности на 2 и 3 ( программа выше). а как это обобщить?

  1. Пусть даны целые числа a1, a2, …, an, среди которых могут быть повторяющиеся. Составьте новый массив из чисел, взятых по одному из каждой группы равных членов данной последовательности. Вот мое решение, однако это кастыль

  1. В заданном массиве из 5 действительных чисел определите количество чисел, не попадающих в интервал от -2 до 2,5

  1. Pascal1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 program file_4;   type   f = file of real;   var   cisla: f;   c: array[1..100] of real;   sr: real;   s: real;   i, n: integer;   str: shortstring;   begin   writeln('введите имя файла');   readln(str);   assign(cisla, str);   reset(cisla);   n := filesize(cisla);   for i:=1 to n do     read(cisla, c[i]);     for i := 1 to n do       s := s + c[i];   sr := s / n;   writeln('среднее арифметическое = ', sr); end.PABCSystem.pas(5944) : Ошибка времени выполнения: Bad typed file size

  1. Заполнить массив случайными числами и отсортировать его. Ввести число Х. Используя двоичный поиск, определить, есть ли в массиве число, равное Х. Подсчитать количество сравнений. Пример: Массив: 147392452 После сортировки: 122344579 Введите число Х: 2 Число 2 найдено. Количество сравнений: 2

  1. Всем доброго времени суток! Помогите решить задачу, обязательно через массив. И желательно как можно проще. Задача: Вычислить сумму квадратов чисел, принадлежащие промежутку (A,B] и стоящих на четных местах;Подсчитать количество чисел, не меньших заданного С. Спасибо