Các bài tập Pascal cơ bản đến nâng cao
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Go down
ThienanAdmin
ThienanAdmin
Người điều hành
Người điều hành
Posts : 18
Join date : 30/04/2024
Age : 12
https://pascalbaitap.forumvi.com

Bài tập mảng 4 Empty Bài tập mảng 4

Tue Jun 25, 2024 10:25 am
Bài tập:Sinh ngẫu nhiên n số nguyên. Sắp xếp các số này theo thứ tự tăng dần. Nhập vào một số nguyên x bất kì. Hãy chen số x vào dãy và luôn thỏa mãn là dãy tăng dần. Chỉ ra vị trí chèn.
GIẢI
Code:
uses crt;
var a:array[1..100] of integer;
n,i,j,x,k,vt:integer;
procedure sx(var a,b:integer);
var tam:integer;
begin
    tam:=a;
    a:=b;
    b:=tam;
end;
begin
clrscr;

write('Ban muon nhap bao nhiu so:');readln(n);
        randomize;
for i:=1 to n do a[i]:=random(20);
for i:=1 to n do write(a[i]:3);
writeln;
      for i:=1 to n-1 do
      for j:=i+1 to n do
      if a[i]>a[j] then sx(a[i],a[j]);
      writeln('Day so sau khi xep tang dan:');
      for i:=1 to n do write(a[i]:3);
      writeln;
write('nhap x:');readln(x);
k:=x;
      for j:=n downto 1 do
          if k<a[j] then vt:=j
          else if k>a[n] then vt:=n+1;
          for i:=1 to n do
          if x<a[i] then sx(x,a[i]);
      a[n+1]:=k;
writeln('Day so sau khi chen ',k,' vao:');
for i:=1 to n+1 do write(a[i]:3);
      writeln;
      writeln('Vi tri chen la:',vt);
readln;
end.
Nguồn bài : https://forumpascalvanlang.forumvi.com/ Bài tập mảng 4 1f636
Về Đầu Trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết