Общий знаменатель для случайного массива чисел - Pascal

Узнай цену своей работы

Формулировка задачи:

Условие: программа создает массив случайных чисел, в массиве n чисел. Программа должна найти общий наибольший знаменатель для всех n чисел и вывести его на экран. Вот моя программа и ее проблема в том, что она не работает жирным выделил свое подозрение на ошибку, но я не знаю точно уже

Решение задачи: «Общий знаменатель для случайного массива чисел»

textual
Листинг программы
const n=3;
var M:array[1..n] of integer;
i,d,s,j:integer;
cond:boolean;
Begin
  randomize;

for i:=1 to n do
M[i]:=1+random(10);

d:=n;
repeat
cond:=false;
for i:=1 to d-1 do
if M[i]>M[i+1] then
begin
s:=M[i+1];
M[i+1]:=M[i];
M[i]:=s;
cond:=true;
end;
dec(d)
until Not cond;

for i:=1 to n do
write(M[i], ' ');


cond:=true;

for i:=M[n] to High(integer) do
Begin
  cond:=true;
  for j := 1 to N do
  Begin
   if i mod M[j] <> 0 then
  Begin
    cond:=false;
    break
  End;
  End;
  if cond then
  Begin
    d:=i;
    break
  End;
End;

writeln;
write(d);

End.

Объяснение кода листинга программы

  1. Объявляются переменные: n (количество чисел в массиве), M (массив для хранения чисел), i, d, s, j (циклические переменные для работы с массивом и нахождения общего знаменателя), cond (флаг для проверки условий).
  2. Инициализируется генератор случайных чисел.
  3. Заполняется массив M случайными числами.
  4. Находится общее количество чисел в массиве (d).
  5. В цикле повторяется до тех пор, пока массив не будет отсортирован по возрастанию. Если элементы не отсортированы, то меняется местами текущий элемент с предыдущим, чтобы получить возрастающий порядок.
  6. В цикле проверяется, делится ли текущее число (i) на любое число из массива без остатка. Если делится, то число i считается общим знаменателем и сохраняется в переменной d.
  7. Выводится на экран массив M и общий знаменатель d.

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

13   голосов , оценка 4.231 из 5
Похожие ответы