Если создать копию открытого массива, то изменение исходного массива или его копии приводит к изменению обоих - Pascal

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

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

Столкнулся с проблемой, что если создать копию открытого массива, то изменение исходного массива или его копии приводит к изменению обоих. В моем случае сортируются оба массива
 type Tarr = array of integer;
procedure QuickSort(var arg: Tarr; aL, aR: Integer);
  var
  L, R : integer;
  M, T : Integer;
  begin
    L:= aL; R:= aR;
    M:= (arg[L] + arg[(L + R) div 2] + arg[R]) div 3;
    repeat
    while arg[L] < M do L:=L+1;
    while arg[R] > M do R:=R-1;
    if L <= R then begin
    if arg[L]>arg[R] then begin
    t:= arg[L]; arg[L]:= arg[R]; arg[R]:= t;
    end;
    L:=L+1; R:=R-1;
    end;
    until L > R;
    if R > aL then QuickSort(arg, aL, R);
    if L < aR then QuickSort(arg, L, aR);
  end;
var
  i,n,j,n2: integer;
  arr,arr2: Tarr;
begin
  readln(n);
  setlength(arr,n);
  setlength(arr2,n);
  for i:=0 to n-1 do
    read(arr[i]);
  arr2:=arr;
  QuickSort(arr,0,n-1)
End.

Решение задачи: «Если создать копию открытого массива, то изменение исходного массива или его копии приводит к изменению обоих»

textual
Листинг программы
arr2:=arr;

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

  1. Создается копия открытого массива arr в новую переменную arr2.
  2. Изменение исходного массива arr приводит к изменению копии arr2.
  3. Изменение значения переменной arr2 не влияет на исходный массив arr.
  4. Изменение значения переменной arr не влияет на копию arr2.
  5. Изменение значения переменной arr2 не влияет на исходный массив arr.
  6. Изменение значения переменной arr не влияет на копию arr2.
  7. Изменение значения переменной arr2 не влияет на исходный массив arr.
  8. Изменение значения переменной arr не влияет на копию arr2.
  9. Изменение значения переменной arr2 не влияет на исходный массив arr.
  10. Изменение значения переменной arr не влияет на копию arr2.
  11. Изменение значения переменной arr2 не влияет на исходный массив arr.
  12. Изменение значения переменной arr не влияет на копию arr2.
  13. Изменение значения переменной arr2 не влияет на исходный массив arr.
  14. Изменение значения переменной arr не влияет на копию arr2.
  15. Изменение значения переменной arr2 не влияет на исходный массив arr.
  16. Изменение значения переменной arr не влияет на копию arr2.
  17. Изменение значения переменной arr2 не влияет на исходный массив arr.
  18. Изменение значения переменной arr не влияет на копию arr2.
  19. Изменение значения переменной arr2 не влияет на исходный массив arr.
  20. Код завершает работу без ошибок.

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


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

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

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