
Найти наибольший общий делитель следующих чисел(16 32 40 64 80 128). Использовать процедуру для
нахождения общего делителя. ПАСКАЛЬ!!!

Ответы на вопрос

procedure nod( var dv,tr,pt,dv1,tr1,pt1,dv2,tr2,pt2 :real; );
var a:array[1..6] of real;
i : integer;
begin
dv1:=100;
tr1:=100;
pt1:=100;
for i:= low(a) to high (a) do begin
readln(a[i]);
repeat
if( (a[i] mod 2) =0) then begin
a[i]:=a[i]/2;
dv:=dv+1;
end
else if( ( a[i] mod 3)=0) then begin
a[i]:=a[i]/3;
tr:=tr+1;
end
else if ( ( a[i] mod 5)=0) then begin
a[i]:=a[i]/5;
pt:=pt+1;
end;
untill(a=1);
if dvif trif ptdv:=0;
tr:=0;
pt:=0;
end;
if dv1>0 then dv2:=dv1*2 else dv2:=1;
if tr1>0 then tr2:=tr1*3 else tr2:=1;
if pt1>0 then pt2:=pt1*5 else pt2:=1;
nod:=dv2*tr2*pt2;
writeln(nod);
end;
begin
nod( dv,tr,pt,dv1,tr1,pt1,dv2,tr2,pt2 );
end.
end;



Конечно, давайте напишем программу на Pascal для нахождения наибольшего общего делителя (НОД) для заданных чисел. Воспользуемся алгоритмом Евклида.
```pascal program GCD_Pascal;
// Функция для нахождения НОД двух чисел function FindGCD(a, b: Integer): Integer; begin while b <> 0 do begin // На каждом шаге заменяем a на b, b на a mod b // Это основной принцип алгоритма Евклида // НОД(a, b) = НОД(b, a mod b) a := a mod b; // Меняем значения переменных местами Swap(a, b); end; // Когда b становится равным 0, a содержит значение НОД Result := a; end;
var numbers: array[1..6] of Integer = (16, 32, 40, 64, 80, 128); i, resultGCD: Integer;
begin // Начинаем с вычисления НОД первых двух чисел resultGCD := FindGCD(numbers[1], numbers[2]);
// Проходим по оставшимся числам и обновляем НОД for i := 3 to 6 do resultGCD := FindGCD(resultGCD, numbers[i]);
// Выводим результат writeln('Наибольший общий делитель чисел ', numbers[1], ', ', numbers[2], ', ', numbers[3], ', ', numbers[4], ', ', numbers[5], ', ', numbers[6], ' равен ', resultGCD);
end. ```
Этот код на Pascal определяет функцию `FindGCD`, которая использует алгоритм Евклида для нахождения НОД двух чисел. Затем программа использует эту функцию для нахождения НОД для массива чисел и выводит результат.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili