1.Viết chương trình pascal sắp xếp các số bé nhất lên đầu sau là các số còn lại( dùng chương trình con)
2.cho số nguyên dương n và dãy A1, A2 ,...An và 2 số nguyên a, b nguyên bất kỳ .sắp xếp các phần tử thuộc [a,b] lên đầu dãy ,các phân tử bé hơn a ở giữa và sau cùng đến các số còn lại ( chương trình pascal)
Cảm ơn nhiều ạ
bài 2: bạn nên nhớ nếu khai báo như vậy thì chắc chắn pascal nó sẽ báo lỗi trùng biến a
phải khai báo biến khác a sau khi đã khai báo a là array và ngược lại
Câu 2:
uses crt;
var a,d,e,f:array[1..100]of integer;
c,b,n,i,kt,dem1,dem2,dem:integer;
begin
clrscr;
write('n=');readln(n);
for i:=1 to n do
begin
write('a[',i,']='); readln(a[i]);
end;
{----------------------------xu-ly--------------------------}
write('nhap b='); readln(b);
write('nhap c='); readln(c);
dem:=0; dem1:=0; dem2:=0;
for i:=1 to n do
begin
kt:=0;
if (a[i]>=b) and (a[i]<=c) then
begin
kt:=1;
inc(dem);
d[dem]:=a[i];
end;
if a[i]<b then
begin
kt:=2;
dem1:=dem1+1;
e[dem1]:=a[i];
end;
if kt=0 then
begin
inc(dem2);
f[dem2]:=a[i];
end;
end;
for i:=1 to dem do
write(d[i]:4);
for i:=1 to dem1 do
write(e[i]:4);
for i:=1 to dem2 do
write(f[i]:4);
readln;
end.