Bài 2:"Dãy con"
Cho 2 dãy số thực A(1),A(2),...A(n) (1);B(1),B(2),...,B(m) (2).Dãy một được gọi là dãy con của dãy (2) nếu bỏ đi k phần (k>=0) trong (2) thì có dãy(1). Chẳng hạn:dãy 1,3,5 là dãy con của dãy o,1,2,1,4,3,5,7.Hãy nhập vào hai dãy và cho biết dãy (1) có phải là dãy con của (2) không?
Bài 3:"Dãy đoạn con" tương tự "dãy con" nhưng các phàn tử liên tiếp
Chẳng hạn:dãy 1,2,1 là dãy đoạn con của dãy 0,1,2,1,4,5,6,3;còn dãy 1,4,6 không là dãy đoạn con của nó.Hãy nhập vào hai dãy và cho biết dãy (1) có phải là dãy đoạn con của (2) không?
Bài 3:"Dãy răng cưa" là dãy giảm tăng hoặc tăng giảm.Ví dụ:1,4,2,7,3,8 hoặc 4,1,3,2,8,5,6 là dãy răng cưa. Nhập một dãy số nguyên, xuất ra dãy răng cưa dài nhất trong dãy số nguyên này
Bài 2 mình làm như sau: Không biết sai ở đâu mà không chạy đc?
program tap_con;
uses crt;
type mang1=array[1..50] of integer;
var a,b:mang1;
i,j,m,n:byte;
procedure nhapmang(var a:mang1; var n:byte);
begin
for i:=1 to n do
begin
writeln('Phan tu thu ',i,' la: '); readln(a[i]);
end;
end;
procedure loaibo(a:mang1; n:byte; b:mang1; m:byte);
var kt:boolean; k:byte;
begin
kt:=false; i:=1;
while i<=n do
begin
for j:=1 to m do
if a[i]=b[j] then begin kt:=true; i:=i+1; end;
if kt=false then begin
for k:=i to n-1 do a[k]:=a[k+1];
n:=n-1;
end;
end;
end;
procedure sapxep(var a:mang1; var n:byte);
var tam:integer;
begin
tam:=0;
for i:=n downto 2 do
for j:=1 to i-1 do
if a[j]<a[j+1] then
begin
tam:=a[j];
a[j]:=a[j+1];
a[j+1]:=tam;
end;
end;
function kiemtra(a:mang1; b:mang1; m:byte):boolean;
var kt2:boolean;
begin
kt2:=true;
for i:=1 to m do
if a[i]<>b[i] then kt2:=false;
kiemtra:=kt2;
end;
begin
write('Nhap so phan tu cua mang A: '); readln(n);
nhapmang(a,n);
write('Nhap so phan tu cua mang B: '); readln(m);
nhapmang(b,m);
if m>n then write('B khong phai la tap con cua A')
else
begin
loaibo(a,n,b,m);
if n=m then begin
sapxep(a,n); sapxep(b,m);
if kiemtra(a,b,m) then writeln('B la tap con cua A')
else writeln('B khong phai la tap con cua A')
end
else writeln('B khong phai la tap con cua A');
end;
readln
end.
Bookmarks