YOMEDIA

Bài tập 9 trang 80 SGK Tin học 11

Giải bài 9 tr 80 sách GK Tin học lớp 11

Cho mảng hai chiều kích thước \(n\times m\) với các phần tử là những số nguyên. Tìm trong mỗi dòng phần tử lớn nhất rồi đổi chỗ nó với phần tử có chỉ số dòng bằng chỉ số cột.

Chương trình sau đây giải bài toán trên:

program Diag;

var

   N, i, j, Max,Ind, Vsp: integer;

   A: array [1..15, 1..15] of integer;

begin

   write('Nhap N: '); readln(N);

   for i:= 1 to N do

         for j:= 1 to N do

           begin

                 write('A[', i, ',', j, '] '); readln(A[i,j]);

           end;

   for i:= 1 to N do

     begin

  Max:= A[i,1]; Ind:= 1;

  for j:= 2 to N do

  if A[i,j] > Max then

     begin

           Max:= A[i,j]; Ind:= j

     end;

  Vsp:= A[i, i]; A[i,i]:= Max; A[i, Ind]:= Vsp;

     end;

   for i:= 1 to N do

     begin

  writeln;

  for j:= 1 to N do write(A[i,j]: 3);

     end;

   writeln

end.

Hãy sửa lại chương trình trên khi yêu cầu bài toán thay dòng bằng cột.

ADSENSE

Hướng dẫn giải chi tiết bài 9

Sửa lại chương trình trên khi yêu cầu bài toán thay dòng bằng cột:

program bai9;

uses crt;

var A:array[1..15,1..15] of integer;

     N, i, j, max, ind, vsp:integer;

begin

clrscr;

write('Nhap N: ');readln(n);

for i:=1 to n do

for j:=1 to n do

begin

write('Nhap A[',i,',',j,']: ');

readln(A[i,j]);

end;

for i:=1 to n do

begin

max:=A[1,i];ind:=1;

for j:=2 to n do

if A[j,i] > max then

begin

max:=A[j,i];

ind:=j;

end;

vsp:=A[i,i];

A[i,i]:=max;

A[ind,i]:=vsp;

end;

for i:=1 to n do

begin

writeln;

for j:=1 to n do write(A[i,j]:3);

end;

writeln;

readln

end.

-- Mod Tin Học 11 HỌC247

Nếu bạn thấy hướng dẫn giải Bài tập 9 trang 80 SGK Tin học 11 HAY thì click chia sẻ 

Chưa có câu hỏi nào. Em hãy trở thành người đầu tiên đặt câu hỏi.

 

YOMEDIA