Bai 1
program max_min; {Cho ma tram, hay tim
phan tu be nhat, lon nhat cua day va cho
biet
vi tri cua chung trong ma tran}
uses crt;
var a:array [1..50,1..50] of integer;
m,n,i,j,min,max:integer;
begin
clrscr;
write('nhap so m= ');readln(m);
writeln;
write('nhap so n= ');readln(n);
writeln;
for i:=1 to m do for j:=1 to n do
begin
write('a[',i,',',j,']= '); readln(a[i,j]);
end;
writeln;
writeln;
for i:=1 to m do
begin
for j:=1 to n do write(a[i,j]:5);
writeln;
writeln;
end;
writeln;
writeln;
min:=a[1,1];
for i:=1 to m do for j:=1 to n do
if min > a[i,j] then min:=a[i,j];
writeln('min= ',min);
writeln;
write('do la so thu ');
for i:=1 to m do for j:=1 to n do
if a[i,j]=min then write('[',i,',',j,']');
writeln;
writeln;
max:=a[1,1];
for i:=1 to m do for j:=1 to n do
if max < a[i,j] then max:=a[i,j];
writeln;
writeln('max= ',max);
writeln;
write('do la so thu ');
for i:=1 to m do for j:=1 to n do
if a[i,j]=max then write('[',i,',',j,']');
readln;
end.
Bai 2
program tinh_tong; {Tinh tong cac phan tu
tren moi hang va moi cot
cua ma tran}
uses crt;
var a:array [1..50,1..50] of integer;
m,n,i,j:1..50;
s:integer;
begin
clrscr;
write('nhap so m= ');readln(m);
writeln;
write('nhap so n= ');readln(n);
writeln;
for i:=1 to m do for j:=1 to n do
begin
write('a[',i,',',j,']= '); readln(a[i,j]);
end;
writeln;
writeln;
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j]:5);
writeln;
writeln;
end;
writeln;
writeln;
for i:=1 to m do
begin
s:=0 ;
for j:=1 to n do s:=s+a[i,j];
writeln('Tong hang thu ',i,' la: ',s:5);
writeln;
end;
for j:=1 to n do
begin
s:=0;
for i:=1 to m do s:=s+a[i,j];
writeln('Tong cot thu ',j,' la: ',s:5);
writeln;
end;
readln;
end.
Bai 3
program tinh_tong; {Cho ma tram, hay tim
tong cac phan tu co gia tri chan (le)
cua ma tran do}
uses crt;
var a:array [1..50,1..50] of integer;
m,n,i,j:1..50;
s:integer;
begin
clrscr;
write('nhap so m= ');readln(m);
writeln;
write('nhap so n= ');readln(n);
writeln;
for i:=1 to m do for j:=1 to n do
begin
write('a[',i,',',j,']= '); readln(a[i,j]);
end;
writeln;
writeln;
for i:=1 to m do
begin
for j:=1 to n do write(a[i,j]:5);
writeln;
writeln;
end;
writeln;
writeln;
write('Cac phan tu chan cua ma tran la ');
s:=0;
for i:=1 to m do for j:=1 to n do
if (a[i,j]mod 2=0) then
begin
write(a[i,j]:5);
s:=s+a[i,j];{Tinh tong cac so le thi
(a[i,jmod 2<>0)}
end;
writeln;
writeln;
write('Tong cac phan tu chan cua ma tran
la s= ',s);
readln;
end.
Bai 4
program tinh_tong; {Cho ma tram, hay tim
tong cac phan tu co so hang la boi cua k,
voi k la so thich hop cho tu ban phim}
{lam tuong tu voi cac phan tu doi
voi cot }
uses crt;
var a:array [1..50,1..50] of integer;
m,n,i,j,k:1..50;
s:integer;
begin
clrscr;
write('Moi nhap so m= ');readln(m);
writeln;
write('Moi nhap so n= ');readln(n);
writeln;
write('Moi nhap k= ');readln(k);
writeln;
writeln;
for i:=1 to m do for j:=1 to n do
begin
write('a[',i,',',j,']= '); readln(a[i,j]);
end;
writeln;
writeln;
for i:=1 to m do
begin
for j:=1 to n do write(a[i,j]:5);
writeln;
writeln;
end;
writeln;
writeln;
for i:=1 to m do for j:=1 to n do
if (i mod k=0) then s:=s+a[i,j];
{if (j mod k=0) then s:=s+a[i,j];}
{Doi voi cot}
writeln;
write('Tong cac phan tu co so hang la boi
',k,' la s= ',s);
readln;
end.
Bai 5
program tinh_toan_voi_ma_tran;
uses crt;
VAR a,b:array[1..50,1..50] of integer;
m,n,p,q,i,j:integer;
procedure tinh_tong_hai_ma_tran;
var c:array[1..50,1..50] of integer;
begin
writeln('Tong ma tran mot va hai la ma
tran ba,ma tran ba bang');
writeln;
for i:=1 to m do for j:=1 to n do
c[i,j]:=a[i,j]+b[i,j];
for i:=1 to m do
begin
for j:=1 to n do write(c[i,j]:5);
writeln;
writeln;
end;
end;
procedure tinh_tich_hai_ma_tran;
var d:array[1..50,1..50] of integer;
k:integer;
begin
writeln('Tich ma tran mot va hai la ma
tran bon,ma tran bon bang');
for i:=1 to m do for k:=1 to q do
begin
d[i,k]:=0;
for j:=1 to n do d[i,k]:=d[i,k]
+a[i,j]*b[j,k];
end;
writeln;
writeln;
for i:=1 to m do
begin
for k:=1 to q do write(d[i,k]:5);
writeln;
writeln;
end;
writeln;
end;
BEGIN
clrscr;
write('nhap m= ');readln(m); {m,n so
dong,cot ma tran mot}
write('nhap n= ');readln(n);
for i:=1 to m do for j:=1 to n do
begin
write('a[',i,',',j,']= ');
readln(a[i,j]);
end;
writeln;
write('nhap p= ');readln(p); {p,q so
dong,cot ma tran hai}
write('nhap q= ');readln(q);
for i:=1 to p do for j:=1 to q do
begin
write('b[',i,',',j,']= ');
readln(b[i,j]);
end;
writeln;
Writeln;
writeln('Ta co ma tran mot la');
writeln;
writeln;
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j]:5);
writeln;writeln;
end;
writeln;
writeln;
writeln('Ta co ma tran hai la');
writeln;
writeln;
for i:=1 to p do
begin
for j:=1 to q do write(b[i,j]:5);
writeln;writeln;
end;
writeln;
if (m=p) and (n=q) then
tinh_tong_hai_ma_tran;
writeln;
if n=p then tinh_tich_hai_ma_tran;
writeln;
readln;
end.
Bai 6
program
cho_ra_cac_phan_tu_tren_duong_cheo_chinh;
{va ca tong cua chung}
uses crt;
var a:array [1..50,1..50] of integer;
n,i,j,s:integer;
begin
clrscr;
write('nhap so 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;
writeln;
writeln;
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:5);
writeln;
writeln;
end;
writeln;
writeln;
write('Cac phan tu tren duong cheo chinh
la');
writeln;
writeln;
for i:=1 to n do
write(a[i,i]:5);
writeln;
writeln;
s:=0;
for i:=1 to n do s:=s+a[i,i];
writeln;
writeln;
write('Tong cac phan tu tren duong cheo
chinh cua ma ma tran ',s);
readln;
end.
Bai 7
{program ma_tran_chuyen_vi; {cho ma tran
vuong ,tim ma tran chuyen vi}
{uses crt;
var n,i,j,tg:integer;
a:array[1..50,1..50] of integer;
BEGIN
clrscr;
repeat write('nhap so hang so cot cua day
');readln(n); until n>0;
for i:=1 to n do for j:=1 to n do
begin write('a[',i,',',j,']=
');readln(a[i,j]); end;
writeln; writeln; writeln('day ban dau
la'); writeln;
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:5);
writeln;
end;
for i:=1 to n do for j:=1 to i do
begin
tg:=a[i,j]; a[i,j]:=a[j,i]; a[j,i]:=tg;
end;
writeln; writeln; writeln('day sau khi
chuyen vi la');
writeln; writeln;
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:5);
writeln;
end;
readln;
end.}
program chuyen_vi_tong_quat; {cho ma
tram cap (m,n) tim ma tran chuyen vi }
uses crt;
var a,b:array[1..100,1..100]of integer;
m,n,i,j:integer;
begin clrscr;
write('nhap so hang');readln(m);
write('nhap so cot');readln(n);
for i:=1 to m do
for j:=1 to n do
begin
write('a[',i:2,',',j:2,']=');
readln(a[i,j]);
end;
{xem ma tran a sau khi nhap}
writeln('ma tran a sau nhap la:');
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j]:3);
writeln;
end;
{tao ma tran chuyen vi}
for i:=1 to n do
for j:=1 to m do
b[i,j]:=a[j,i];
writeln('ma tran chuyen vi la:');
for i:=1 to n do
begin
for j:=1 to m do
Write(b[i,j]:5);
writeln;
end;
readln;
end.
Bai 8
program ma_tran;
{Lap chuong trinh ma tran vuong A cap n
voi cac phan tu la so nguyen vao may
bien doi A ve ma tran tam giac duoi va ma
tran tam giac tren cua A ra man hinh}
uses crt;
type matran=array[1..50,1..50] of integer;
var a:matran;
i,j,n:integer;
begin
clrscr;
write('Do A la ma tran vuong nen so dong
bang so cot= '); readln(n);
for i:=1 to n do for j:=1 to n do
begin
write('a[',i,',',j,']= ');readln(a[i,j]);
writeln;
end;
writeln('Ma tran tam giac tren cua A');
for i:=1 to n do {chu y day la
cach viet so kieu ma tran }
begin
for j:=1 to n do
begin
write(a[i,j]:7);
end;
writeln;
end;
writeln('Ma tran tam giac duoi cua A');
for i:=2 to n do
begin
for j:=1 to i-1 do write(a[i,j]:7);
writeln;
end;
writeln;
readln;
end.
Bai 9
program Ma_tran_tam_giac_dac_biet;{bai 65}
{n n-1 1
................
1 }
uses crt;
var i,j,n:integer;
begin
clrscr;
write('Moi ban nhap n= ');
readln(n);
writeln;
writeln('Ma Tran tam giac dac biet ta thu
duoc la');
writeln;
for i:=n downto 1 do
begin
for j:=i downto 1 do
write(j:5);writeln;
writeln;
end;
readln;
end.