- Ebook Giải thuật và lập trình Lê Minh Hoàng
- Các thuật toán sắp xếp trong Pascal

Sắp xếp mảng 1 chiều



Viết chương trình nhập vào một mảng gồm N số nguyên. Sắp xếp lại mảng theo thứ tự tăng dần và in kết quả ra màn hình.

Ý tưởng:
Cho biến i chạy từ 1 đến N-1, đồng thời cho biến j chạy từ i+1 đến N: Nếu A[i]>A[j] thì đổi chổ A[i], A[j].

Dưới đây là thuật toán sắp xếp mảng 1 chiều:

Uses Crt;
Type Mang = ARRAY[1..50] Of Integer;
Var A:Mang;
N,i,j,Tam:Integer;
Begin
{Nhập mảng}
Write('Nhap N='); Readln(N);
For i:=1 To N Do
Begin
Write('A[',i,']='); Readln(A[i]);
End;
{Sắp xếp}
For i:=1 To N-1 Do
For j:=i+1 To N Do
If A[i]>A[j] Then
Begin
Tam:=A[i]; A[i]:=A[j]; A[j]:=Tam;
End;
{In kết quả ra màn hình}
Writeln('Ket qua sau khi sap xep:');
For i:=1 To N Do Write(A[i]:5);
Readln;
End.



Nặc danh nói...

cho em hoi chữ "tam" có nghia la j"


19:20 14 tháng 11, 2012
Mập nói...

"tạm" là giá trị của a[i] : để khi a[i] > a[i+1] thì a[i] sẽ = a[i+1], còn a[i+1] sẽ = a[i], nhưng lúc này a[i] đã nhận giá trị mới là a[i+1] nên ta phải đặt "tạm" = a[i] để thay giá trị "tạm" vào a[i+1]


14:03 19 tháng 12, 2012
Nặc danh nói...

hoi kho hieu 1 ty


15:54 9 tháng 1, 2013
Hổ Yêu Thỏ Đen nói...

Hoàng Bảo love Phương Thảo Nhiều lắm


09:18 23 tháng 1, 2013
Cường nói...

cái này là straight selection sort phải không ạ?


20:56 4 tháng 2, 2013
Nặc danh nói...

Hello, i read your blog from time to time and i own
a similar one and i was just wondering if you get
a lot of spam comments? If so how do you protect against it, any plugin or anything you
can recommend? I get so much lately it's driving me mad so any support is very much appreciated.

Here is my homepage ... their web site


12:57 23 tháng 2, 2013
Nặc danh nói...

Pascap đúng là khó


08:33 17 tháng 6, 2014
Nặc danh nói...

nó sẽ dễ hơn nếu bạn nói đúng tên nó (pascal)


10:28 1 tháng 7, 2014
Nặc danh nói...

-______- .......


18:06 18 tháng 12, 2014
Bá Linh Đào nói...
Nhận xét này đã bị tác giả xóa.
Phạm Duy nói...

hay cai lz....danh sai the mak cug dang 2`


10:45 7 tháng 12, 2015
ad sdaad nói...

Câu lệnh for to do ở cuối lm j nhỉ chưa hiểu


22:01 14 tháng 1, 2016
ad sdaad nói...

Câu lệnh for to do ở cuối lm j nhỉ chưa hiểu


22:02 14 tháng 1, 2016
Trí Trần nói...

Ban phai cho chay tu phan tu dau den phan tu coi moi in ra duoc toan mang nha ban neu khong se khong in ra duoc vi n la bien dem
Vd:n 1 2 3 4 5 6 7
A[i]3 4 5 6 7 10 11


19:03 18 tháng 1, 2016
Unknown nói...
Nhận xét này đã bị tác giả xóa.
ÁNH PHẠM THỊ NGỌC nói...

đây là dãy k giảm chứ k phải tăng mà ???


18:19 8 tháng 11, 2016
Nặc danh nói...

què


21:45 17 tháng 11, 2016
Nặc danh nói...

ga


17:27 21 tháng 11, 2016
Nhan Tran nói...

Có ai biết sắp xếp bằng phương pháp đánh dấu ko


18:04 11 tháng 12, 2016
river nói...

ai giải tích hộ mình mảng a[j] là như nào đi


10:53 13 tháng 1, 2017
river nói...

ai giải tích hộ mình mảng a[j] là như nào đi


10:55 13 tháng 1, 2017
Nặc danh nói...

ngọc mập nói


08:26 16 tháng 2, 2017
Unknown nói...

Ê cho mình hỏi tại sao lại có (:5) ở chỗ write(A[i]:5) tại cái hàng thứ 3 từ cuối lên trên


19:19 6 tháng 4, 2017
Unknown nói...

nếu chuyển ko làm bằng vòng lặp for do mà làm = while do thì làm thế nào


10:06 2 tháng 5, 2017
Nặc danh nói...

Nhap vao 2 so set xem 2 so do co phai cap so ban be khong


19:05 16 tháng 10, 2017
pek_ngok_ngkech_123 nói...

@Hoyeuthoden Pkươg Tkảo lov3 Hoàg Bảo nkìu lémk. <3 <3 <3


08:02 10 tháng 11, 2017
Tram Do nói...
Nhận xét này đã bị tác giả xóa.
Tram Do nói...

Cảm ơn tác giả đã chia sẻ, tuy nhiên bài này chưa mang tính chất sắp xếp tự động mà còn quá thủ c6ng vì mình phải gán từng A[i]. Mong sắp tới tác giả có bài viết sắp xếp tự động có dãy số tự in ra luôn.


13:01 18 tháng 11, 2017
Unknown nói...

đơn giản là có hai ca nước đầy , muốn tráo nước của 2 ca thì cần phải có cái ca "tạm"... đw nói đw hiểu


21:39 25 tháng 11, 2017
VìTớRấtThíchCậuSHANA HãySốngThậtHPVớiYUJI nói...

k giảm là >= (0, 1, 2, 2, 3,3....)
tăng là > (1, 3, 4,...)


21:42 25 tháng 11, 2017
Huệ Bùi Minh nói...

Tạm hay còn gọi là biến trung gian để đổi chỗ


14:55 29 tháng 11, 2017
Wind Emperor nói...

Cho hỏi ":5" là sao thế?


20:23 4 tháng 12, 2017
mavansanh nói...

đây là phương pháp buble sort


17:34 7 tháng 12, 2017

Đăng nhận xét

Thành viên Blog

Tổng số lượt xem trang

Translate

Return to top of page Copyright © 2012 | Theme by Hack Tutors. Cung cấp bởi Blogger.
Các code pascal trong blog được sưu tầm, lựa chọn sao cho tối ưu nhất. Cảm ơn các tác giả đã viết thuật toán.