1. Trang chủ
  2. » Luận Văn - Báo Cáo

tiểu luận ma trận

13 454 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 49,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nhap tu ban phim'; writeln'2.. Nhap tu File text'; writeln'3... Sap xep tang theo hang'; writeln'2.. procedure ct1;var a,b,c:km; n:kcs; begin repeat clrscr; writeln'CHUONG TRINH TINH TO

Trang 1

program ma_tran;

uses crt;

type km=array[1 10,1 10] of integer; kcs=1 10;

var a:km;

n:kcs;

procedure nhapmt(ten:char; var a:km;n:kcs); var i,j:kcs;

begin

for i:=1 to n do

for j:=1 to n do

begin

write(ten,'[',i,j,']= ');

readln(a[i,j]);

end;

end;

procedure inmt(a:km;n:kcs);

var i,j:kcs;

begin

for i:=1 to n do

begin

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

writeln;

end;

end;

procedure luumt(a:km;n:kcs);

var i,j:kcs;

s:string;

f:text;

begin

write('Nhap ten File de luu: ');readln(s); assign(f,s);

rewrite(f);

for i:=1 to n do

begin

Trang 2

for j:=1 to n do write(f,a[i,j]:4);

writeln(f);

end;

close(f);

write('Ma tran vua duoc luu voi ten la: ',s);

end;

procedure chonmt(var a:km;n:kcs);

var nhap,dau:1 3;

chon:1 10;

i,j:kcs;

f:text;

begin

writeln('Hay chon cach nhap ma tran');

writeln('1 Nhap tu ban phim');

writeln('2 Nhap tu File text');

writeln('3 Nhap ngau nhien');

write('Chon: '); readln(nhap);

case nhap of

1: nhapmt('A',a,n);

2: begin

write('Hay lua chon File ma tran 1 10'); readln(chon); case chon of

1: begin

assign(f,'mt1'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]);

close(f);

end;

2: begin

assign(f,'mt2'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]);

close(f);

end;

3: begin

assign(f,'mt3'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]);

Trang 3

close(f);

end;

4: begin

assign(f,'mt4'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]); close(f);

end;

5: begin

assign(f,'mt5'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]); close(f);

end;

6: begin

assign(f,'mt6'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]); close(f);

end;

7: begin

assign(f,'mt7'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]); close(f);

end;

8: begin

assign(f,'mt8'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]); close(f);

end;

9: begin

assign(f,'mt9'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]); close(f);

end;

10: begin

Trang 4

assign(f,'mt10'); reset(f);

for i:=1 to n do

for j:=1 to n do read(f,a[i,j]);

close(f);

end;

end;

end;

3: begin

randomize;

for i:=1 to n do

for j:=1 to n do

begin

dau:=random(3);

if dau=0 then a[i,j]:=(0-random(9)) else a[i,j]:=random(9);

end;

end;

end;

end;

procedure tongmt(a,b:km;var c:km;n:kcs);

var i,j:kcs;

begin

for i:=1 to n do

for j:=1 to n do

c[i,j]:=a[i,j]+b[i,j];

end;

procedure tichmt(a,b:km;var c:km;n:kcs);

var i,j,k:kcs;

begin

for i:=1 to n do

for k:=1 to n do

begin

c[i,k]:=0;

for j:=1 to n do c[i,k]:=a[i,j]*b[j,k]+c[i,k]; end;

end;

Trang 5

procedure mtcv(a:km;var b:km;n:kcs); var i,j:kcs;

begin

for i:=1 to n do

for j:=1 to n do b[i,j]:=a[j,i];

end;

procedure sapxepmt(var a:km;n:kcs); var i,j,k:kcs;

chon:1 4;

tg:1 100;

begin

writeln('1 Sap xep tang theo hang'); writeln('2 Sap xep giam theo hang'); writeln('3 Sap xep tang theo cot'); writeln('4 Sap xep giam theo cot'); write('Chon: ');readln(chon);

case chon of

1: begin

for i:=1 to n do

for j:=1 to (n-1) do

for k:=j to n do

if a[i,j]>a[i,k] then

begin

tg:=a[i,j];

a[i,j]:=a[i,k];

a[i,k]:=tg;

end;

end;

2: begin

for i:=1 to n do

for j:=1 to (n-1) do

for k:=j to n do

if a[i,j]<a[i,k] then

begin

tg:=a[i,j];

a[i,j]:=a[i,k];

a[i,k]:=tg;

end;

Trang 6

end;

3: begin

for i:=1 to (n-1) do

for j:=1 to n do

for k:=i to n do

if a[i,j]>a[k,j] then

begin

tg:=a[i,j];

a[i,j]:=a[k,j];

a[k,j]:=tg;

end;

end;

4: begin

for i:=1 to (n-1) do

for j:=1 to n do

for k:=i to n do

if a[i,j]<a[k,j] then

begin

tg:=a[i,j];

a[i,j]:=a[k,j];

a[k,j]:=tg;

end;

end;

end;

end;

procedure copymt(a:km;n:kcs;var b:km;m:kcs); var i,j,x,y:kcs;

begin

write('copy tu phan tu nao? a[');

repeat

readln(x,y);

if (m>(n-x+1)) or (m>(n-y+1)) then

write('Khong the copy tu phan tu nay! Nhap lai a['); until ((m<=(n-x+1)) or (m<=(n-y+1)));

for i:=1 to m do

for j:=1 to m do

b[i,j]:=a[i+x-1,j+y-1];

end;

Trang 7

procedure ct1;

var a,b,c:km;

n:kcs;

begin

repeat

clrscr;

writeln('CHUONG TRINH TINH TONG 2 MA TRAN'); write('Chon cap cua ma tran: n= '); readln(n);

writeln('Chon ma tran thu nhat');

chonmt(a,n);

writeln;

writeln('Chon ma tran thu hai');

chonmt(b,n);

writeln('Hai ma tran vua nhap:');

inmt(a,n);

writeln;

writeln;

inmt(b,n);

write('Nhan phim ENTER de tinh tong 2 ma tran nay'); readln;

clrscr;

tongmt(a,b,c,n);

writeln('Tong 2 ma tran la:');

writeln;

inmt(c,n);

writeln;

write('Nhan phim ESC de quay lai menu');

until readkey=#27;

end;

procedure ct2;

var a,b,c:km;

n:kcs;

begin

Trang 8

clrscr;

writeln('CHUONG TRINH TINH TICH 2 MA TRAN'); writeln;

write('Chon cap cua ma tran: n= '); readln(n);

writeln('Chon ma tran thu nhat');

chonmt(a,n);

writeln;

writeln('Chon ma tran thu hai');

chonmt(b,n);

writeln;

writeln('2 ma tran vua nhap la:');

inmt(a,n);

writeln;

writeln;

inmt(b,n);

write('Nhan phim ENTER de tinh tich 2 ma tran nay'); readln;

clrscr;

tichmt(a,b,c,n);

writeln('Tich 2 ma tran la:');

writeln;

inmt(c,n);

writeln;

write('Nhan phim ESC de quay lai menu');

until readkey=#27;

end;

procedure ct3;

var a,b:km;

n:kcs;

begin

repeat

clrscr;

writeln('CHUONG TRINH MA TRAN CHUYEN VI'); writeln;

write('Chon cap cua ma tran, n= '); readln(n);

writeln('Chon ma tran');

chonmt(a,n);

writeln;

writeln;

writeln('Ma tran vua nhap la:');

writeln;

Trang 9

inmt(a,n);

writeln;

writeln;

mtcv(a,b,n);

writeln('Ma tran chuyen vi cua ma tran tren la:'); writeln;

writeln;

inmt(b,n);

writeln;

writeln;

write('Nhan phim ESC de quay lai menu');

until readkey=#27;

end;

procedure ct4;

var a:km;

n:kcs;

begin

repeat

clrscr;

writeln('CHUONG TRINH SAP XEP MA TRAN'); writeln;

writeln;

write('Chon cap cua ma tran, n= '); readln(n); writeln;

writeln('Hay chon ma tran');

chonmt(a,n);

writeln('Ma tran vua nhap la:');

writeln;

inmt(a,n);

write('Nhan phim ENTER de sap xep ma tran'); readln;

sapxepmt(a,n);

writeln;

writeln;

write('Ma tran da sap xep la:');

writeln;

inmt(a,n);

write('Nhan phim ESC de quay lai menu');

until readkey=#27;

end;

Trang 10

procedure ct5;

var a,b:km;

n,m:kcs;

begin

repeat

clrscr;

writeln('CHUONG TRINH COPY MA TRAN'); writeln;

writeln;

write('Chon cap cua ma tran, n= '); readln(n); writeln;

writeln('Hay chon ma tran');

writeln;

chonmt(a,n);

writeln;

writeln('Ma tran vua nhap la:');

writeln;

inmt(a,n);

writeln;writeln;

write('Nhan phim ENTER de copy ma tran'); readln;

write('Chon cap cua ma tran con muon copy, m= '); repeat

readln(m);

if m>n then write('m phai <= ',n,' Nhap lai m= '); until m<=n;

writeln;

copymt(a,n,b,m);

writeln('Ma tran con vua duoc copy la:');

writeln;writeln;

inmt(b,m);

writeln;

writeln;

write('Nhan phim ESC de quay lai menu');

until readkey=#27;

end;

procedure ct6; {Ma tran tam giac}

var a:km;

Trang 11

i,j,n:kcs;

chon:1 2;

s:string;

f:text;

begin

repeat

clrscr;

writeln('CHUONG TRINH MA TRAN TAM GIAC'); writeln;

write('Chon cap cua ma tran, n= ');readln(n);

writeln;writeln;

chonmt(a,n);

writeln;

writeln('Ma tran vua nhap la:');

writeln;writeln;

inmt(a,n);

writeln;

write('Nhan phim ENTER de sap xep ma tran tam giac'); readln;

writeln('1 Ma tran tam giac tren');

writeln('2 Ma tran tam giac duoi');

write('Chon '); readln(chon);

case chon of

1: begin

writeln('Ma tran tam giac tren:');

writeln;writeln;

for i:=1 to n do

begin

for j:=1 to n do

if i<j then write(a[i,j]:4) else write(' ');

writeln;

end;

write('Nhan phim l de luu ma tran nay');

if readkey=#108 then

begin

write('Nhap ten File muon luu: '); readln(s);

if length(s)<>0 then

begin

assign(f,s);

rewrite(f);

for i:=1 to n do

begin

for j:=1 to n do;

if i<j then write(f,a[i,j]) else write(f,s); end;

Trang 12

writeln(f);

close(f);

end;

write('Ma tran da duoc luu voi ten: ',s); end;

end;

2: begin

writeln('Ma tran tam giac duoi:');

writeln;writeln;

for i:=1 to n do

begin

for j:=1 to n do

if i>j then write(a[i,j]:4) else write(' ');

writeln;

end;

write('Nhan phim l de luu ma tran nay');

if readkey=#108 then

begin

write('Nhap ten File muon luu: '); readln(s);

if length(s)<>0 then

begin

assign(f,s);

rewrite(f);

for i:=1 to n do

begin

for j:=1 to n do;

if i>j then write(f,a[i,j]) else write(f,s); end;

writeln(f);

close(f);

end;

write('Ma tran da duoc luu voi ten: ',s); end;

end;

end;

writeln;writeln;writeln;

write('Nhan phim ESC de quay lai menu');

until readkey=#27;

end;

Trang 13

begin clrscr; ct6; end

Ngày đăng: 30/12/2015, 18:42

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w