Bài 4: Bài toán và thuật toán

Bạn chưa đăng nhập. Vui lòng đăng nhập để hỏi bài
nam

lập trình nhập từ bàn phím 1 dãy a có n số thuộc z, và k thuộc z

a, sắp xếp và đưa ra dãy a theo thứ tự tăng dần

b, chèn k vào trong dãy sao cho thứ tự vẫn tăng dần

Minh Lệ
19 tháng 10 2019 lúc 20:23

Program hotrotinhoc;

var a: array[1..32000] of integer;

i,n,j,tg,k,t: integer;

begin

write('n='); readln(n);

for i:=1 to n do

begin

write('a[',i,']='); readln(a[i]);

end;

write('k='); readln(k);

for i:=1 to n do

for j:=i to n do

if a[i]>a[j] then

begin

tg:=a[i];

a[i]:=a[j];

a[j]:=tg;

end;

writeln('Day sap xep theo thu tu tang dan la :');

for i:=1 to n do

begin

write(a[i],' ');

if a[i]<k then t:=i;

end;

writeln('Day sau khi chen k : ');

for i:=1 to n do

if (a[i]<k) and (t=i) then write(a[i],' ',k,' ') else write(a[i],' ');

readln

end.

Khách vãng lai đã xóa
Nguyễn Lê Phước Thịnh
20 tháng 10 2019 lúc 22:49

uses crt;
var a:array[1..100]of integer;
k,n,i,tam,x,t:integer;
begin
clrscr;
write('nhap so phan tu:'); readln(n);
for i:=1 to n do
begin
write('a[',i,']='); readln(a[i]);
end;
{-----------------------------------------------------}
for i:=1 to n do write(a[i],' ');
{----------------------------------------------------------------}
writeln;
writeln('day tang dan la:');
for i:=1 to n-1 do
for k:=i+1 to n do
if a[i]>a[k] then begin
t:=a[i];
a[i]:=a[k];
a[k]:=t;
end;
for i:=1 to n do write(a[i],' ');
writeln;
{--------------------------------------------}
write('nhap gia tri x:'); readln(x);
i:=1;
while(x>a[i]) and (i<=n) do
i:=i+1;
for k:=n+1 downto i do
a[k]:=a[k-1];
a[i]:=x;
writeln('mang da chen x:');
for i:=1 to n+1 do write(a[i],' ');
readln;
end.

Khách vãng lai đã xóa

Các câu hỏi tương tự
huỳnh thị yến nhi
Xem chi tiết
Ngọc Linh
Xem chi tiết
Đỗ Phương Thùy
Xem chi tiết
Tq Thịnh
Xem chi tiết
Bùi Thế Hùng
Xem chi tiết
Tiểu Bạch Kiểm
Xem chi tiết
Tuyết Mai
Xem chi tiết
Như Ý
Xem chi tiết
Tiểu Bạch Kiểm
Xem chi tiết