Nhập vào một mảng hai chiều,tính tổng các đường chéo
0 bình luận về “Nhập vào một mảng hai chiều,tính tổng các đường chéo”
program phuongt; uses crt; var A: array[1..50, 1..50] of integer; i, j, s, k, n: integer; begin clrscr; 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 for j:=1 to n do begin write(A[i,j]:3); if j=n then writeln; end; for i:=1 to n do for j:=1 to n do if i=j then s:=s+A[i,j]; writeln(‘Tong duong cheo chinh: ‘, s); for i:=1 to n do for j:=1 to n do if i+j-1=n then k:=k+A[i,j]; writeln(‘Tong duong cheo phu: ‘, k); readln end.
Không biết bạn cần loại nhập nào nhỉ? Mình làm 2 cách luôn nè ;))
C1. Nhập nhiều dòng:
uses crt; var i,j,n,m,d1,d2:longint; a:array[1..1000,1..1000]of longint; begin clrscr; write(‘Nhap n,m: ‘);readln(n,m); for i:=1 to n do for j:=1 to m do begin write(‘Nhap a[‘,i,’,’,j,’,]: ‘);readln(a[i,j]); if i=j then inc(d1,a[i,j]); if i=n-j+1 then inc(d2,a[i,j]); end; writeln(‘Tong duong cheo tren tu trai sang phai: ‘,d1); writeln(‘Tong duong cheo tren tu phai sang trai: ‘,d2); readln end.
C2. Nhập máy (nhập như khi xuất mảng):
uses crt; var i,j,n,m,d1,d2:longint; a:array[1..1000,1..1000]of longint; begin clrscr; write(‘Nhap n,m: ‘);readln(n,m); for i:=1 to n do begin for j:=1 to m do begin read(a[i,j]); if i=j then inc(d1,a[i,j]); if i=n-j+1 then inc(d2,a[i,j]); end; readln; end; writeln(‘Tong duong cheo tren tu trai sang phai: ‘,d1); writeln(‘Tong duong cheo tren tu phai sang trai: ‘,d2); readln end.
program phuongt;
uses crt;
var A: array[1..50, 1..50] of integer;
i, j, s, k, n: integer;
begin
clrscr;
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
for j:=1 to n do
begin
write(A[i,j]:3);
if j=n then writeln;
end;
for i:=1 to n do
for j:=1 to n do if i=j then s:=s+A[i,j];
writeln(‘Tong duong cheo chinh: ‘, s);
for i:=1 to n do
for j:=1 to n do if i+j-1=n then k:=k+A[i,j];
writeln(‘Tong duong cheo phu: ‘, k);
readln
end.
#Baongắn
Không biết bạn cần loại nhập nào nhỉ? Mình làm 2 cách luôn nè ;))
C1. Nhập nhiều dòng:
uses crt;
var i,j,n,m,d1,d2:longint; a:array[1..1000,1..1000]of longint;
begin
clrscr;
write(‘Nhap n,m: ‘);readln(n,m);
for i:=1 to n do
for j:=1 to m do
begin
write(‘Nhap a[‘,i,’,’,j,’,]: ‘);readln(a[i,j]);
if i=j then inc(d1,a[i,j]);
if i=n-j+1 then inc(d2,a[i,j]);
end;
writeln(‘Tong duong cheo tren tu trai sang phai: ‘,d1);
writeln(‘Tong duong cheo tren tu phai sang trai: ‘,d2);
readln
end.
C2. Nhập máy (nhập như khi xuất mảng):
uses crt;
var i,j,n,m,d1,d2:longint; a:array[1..1000,1..1000]of longint;
begin
clrscr;
write(‘Nhap n,m: ‘);readln(n,m);
for i:=1 to n do
begin
for j:=1 to m do
begin
read(a[i,j]);
if i=j then inc(d1,a[i,j]);
if i=n-j+1 then inc(d2,a[i,j]);
end;
readln;
end;
writeln(‘Tong duong cheo tren tu trai sang phai: ‘,d1);
writeln(‘Tong duong cheo tren tu phai sang trai: ‘,d2);
readln
end.