Расположить в порядке возрастания положительные элементы массива, кратные заданному числу - Pascal

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

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

Помогите с задачей:

Расположить в порядке возрастания положительные элементы массива, кратные заданному числу.

В порядке возрастания я уже разобрался как делать, а вот кратному числу нет. Вот я сделал в порядке возрастания:
Листинг программы
  1. rogram gg;
  2. uses crt;
  3. const
  4. m = 10;
  5. var
  6. arr: array[1..m] of integer;
  7. i, j, k: integer;
  8. begin
  9. randomize;
  10. write ('Исходный массив: ');
  11. for i := 1 to m do begin
  12. arr[i] := random(256);
  13. write (arr[i]:4);
  14. end;
  15. writeln; writeln;
  16.  
  17. for i := 1 to m-1 do
  18. for j := 1 to m-i do
  19. if arr[j] > arr[j+1] then begin
  20. k := arr[j];
  21. arr[j] := arr[j+1];
  22. arr[j+1] := k
  23. end;
  24. write ('Отсортированный массив: ');
  25. for i := 1 to m do
  26. write (arr[i]:4);
  27. writeln;
  28. readln
  29. end.

Решение задачи: «Расположить в порядке возрастания положительные элементы массива, кратные заданному числу»

textual
Листинг программы
  1. uses crt;
  2. const
  3.     m = 20;
  4.  
  5. var
  6.     arr: array[1..m] of integer;
  7.     i, j, k, x: integer;
  8.  
  9. begin
  10. randomize;
  11. writeln ('Исходный массив: ');
  12. for i := 1 to m do
  13.  begin
  14.   arr[i] := -25+random(200);
  15.   write (arr[i]:4);
  16.  end;
  17. writeln;
  18. writeln;
  19. write('Введите число для проверки кратности x=');
  20. readln(x);
  21. for i := 1 to m-1 do
  22. for j := i+1 to m do
  23. if(arr[i]>0)and(arr[j]>0)and(arr[i] mod x=0)and(arr[j] mod x=0)
  24. and(arr[i]>arr[j])then
  25.  begin
  26.    k := arr[i];
  27.    arr[i] := arr[j];
  28.    arr[j] := k
  29.  end;
  30. writeln ('Отсортированный массив: ');
  31. for i := 1 to m do
  32. write (arr[i]:4);
  33. readln
  34. end.

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

  1. Объявляется константа m со значением 20.
  2. Объявляется переменная arr - массив из 20 целочисленных элементов.
  3. Объявляются переменные i, j, k, x - все целочисленные.
  4. Используется функция randomize для инициализации генератора случайных чисел.
  5. Выводится сообщение Исходный массив:.
  6. Далее в цикле от 1 до 20 генерируются случайные числа и помещаются в массив arr. Последовательность чисел выводится на экран.
  7. Пользователю предлагается ввести число для проверки кратности.
  8. Затем двойной цикл проходит по всем парам элементов массива и проверяет их на положительность и кратность заданному числу. Если оба элемента положительные и кратные, и при этом первый элемент больше второго, то они меняются местами.
  9. Выводится сообщение Отсортированный массив:.
  10. Отсортированный массив выводится на экран.
  11. Программа ожидает ввода пользователя перед завершением.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

10   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы