Chương trình sau đây thực hiện những gì?

  1. Tác giả: LTTK CTV
    Đánh giá: ✪ ✪ ✪ ✪ ✪

    Chương trình sau đây thực hiện những gì?
    PHP:
    1. program BT8;
    2. const NMax = 50;
    3. type Mass = array [1...NMax, O..NMax-1] of real;
    4. var A: Mass;
    5. i,j N: byte; C: real;
    6. begin
    7. Write ('Nhap N= ?');
    8. readln(N); for i:= 1 to N do
    9. for 0 to N-1 do
    10. begin
    11. write('A[i,j; readln(A[i,j ] )
    12. end,
    13. for i:= 1 to N do
    14. for j:= 1 to N-1 do
    15. begin
    16. C:= A[i,j];
    17. A[i , j ] := A[N-i+1, j ]
    18. A [N-i+1,j] := C;
    19. end;
    20. for i:=1 to N do begin
    21. for j : =1 to N— 1 do write (A [ i, j ] : 5 : 2 , ' ');
    22. writeln
    23. end;
    24. End.
    Trả lời:
    Khi chạy chương trình, với N= 4 thì kết quả của chương trình như hình 67 dưới:
    01.jpg
    Chương trình thực hiện việc hoán đổi vị trí dòng thứ i với dòng thứ N-i+J, nghĩa là hoán đổi vị trí dòng đầu tiên với dòng cuối cùng của màng hai chiều, dòng thứ hai từ trên xuống với dòng thứ hai từ dưới lên,.. Việc hoán đổi vị trí dòng thứ i với dòng đối xứng với nó được thực hiện khi i nhận giá trị từ 1 đến N, làm cho mỗi dòng được hoán đổi vị trí hai lần. Vì vậy, cuối cùng mảng A không thay đổi so với ban đầu.