Nhập Và In Ra Mảng Có Thứ Tự Tăng Dần - Dạy Nhau Học Trang chủ » Viết Hàm Sắp Xếp Mảng Theo Thứ Tự Tăng Dần Python » Nhập Và In Ra Mảng Có Thứ Tự Tăng Dần - Dạy Nhau Học Có thể bạn quan tâm Viet Hàm Số Bậc 3 Viết Hàm Tìm Max Của 2 Số Thực X Y Viết Hàm Tính Tổng Từ 1 đến N Viết Hán Tự Viết Hán Tự đẹp Nhập và in ra mảng có thứ tự tăng dần programming python trungtech1908 (Đinh Đức Bảo Trung) August 22, 2020, 8:55am #1 array=[] print("Nhập số phần tử có trong mảng: ",end="") x=int(input()) for i in range(x): print("Phần tử thứ "+str(i+1)+" là: ") a=int(input()) array.append(a) for i in range(x-1): for j in range(i+1,x): if array[i]>array[j]: tg=array[i] array[i]=array[j] array[j]=tg print("Mảng sau khi sắp xếp là:",array) Đây là thuật toán sắp xếp mảng(chỉ chứa kiểu int) theo thứ tự tăng dần. Mình ko hiểu sao 2 cái lệnh in cuối ko chạy (mình chạy trên terminal). nó chỉ in dc ra mảng tăng dần nhưng ko có 2 lệnh in đấy. Help me!!! tungsoul (thanh tung phan) August 22, 2020, 9:46am #2 trungtech1908: print(“Mảng sau khi sắp xếp là:”,array) code của bạn đúng rồi mà, thử lại lần nữa xem. nhưng mà nhìn như code c ấy x = int(input("Nhập số phần tử có trong mảng: ")) array = [int(input("Phần tử thứ " + str(i + 1) + " là: ")) for i in range(x)] for i in range(x-1): for j in range(i+1, x): if array[i] > array[j]: array[i], array[j] = array[j], array[i] print("Mảng sau khi sắp xếp là:", array) 3 Likes trungtech1908 (Đinh Đức Bảo Trung) August 22, 2020, 10:08am #3 Ủa, vậy code ntn ms chuẩn, m nghĩ ra dc mỗi cái này à.Đề là nhập vào một mảng, in ra màn hình thứ tự tăng dần của mảng HR16 (Gà Coder) August 22, 2020, 12:18pm #4 Nếu đề chỉ nói là sắp xếp mảng không thôi, không cấm dùng hàm có sẵn thì dùng luôn hàm sorted hoặc method sort có sẵn của Python luôn cho nhanh, vừa code nhanh hơn, vừa chạy nhanh hơn (không có sự khác biệt lớn nếu dữ liệu đầu vào nhỏ). Bubble sort có độ phức tạp là O(n^2), trong khi hàm sorted và method sort dùng thuật toán Timsort có độ phức tạp ở trường hợp tệ nhất chỉ là O(n log n). so_phan_tu = int(input("Nhập số phần tử có trong mảng: ")) list = [] for i in range(so_phan_tu): data_input = int(input(f"Phần tử thứ ${i + 1} là:")) list.append(data_input) print("Mảng sau khi sắp xếp là:", sorted(list)) P/s: Bạn nên tìm hiểu thêm về String formatting và String interpolation chứ làm theo kiểu cộng chuỗi cổ điển dễ gây “đau mắt” lắm. 7 Likes rogp10 (rogp10) August 22, 2020, 11:13am #5 trungtech1908: print("Phần tử thứ "+str(i+1)+" là: ") Câu này là biết lấy của bên C chép qua rồi Python quất 2 dòng như sau: numbers = [int(v) for v in input("Nhập dãy số: ").split(" ")] print("Dãy số đã sắp xếp: ", sorted(numbers)) 7 Likes trungtech1908 (Đinh Đức Bảo Trung) August 22, 2020, 11:15am #6 Thật ra năm lớp 8 có học qua Pascal và cx đi thi dc giải cao và hứng thú vs cái mới nên chọn Python chứ tui ko có bt C. Trình độ Pascal thui nha:)))) TaoLaoBidaoBanBanhBa August 22, 2020, 11:31am #7 #1. Python có hàm sort, sort cái là ra liền #2. Nếu không dùng hàm sort, thì dùng hàm min/max để lấy số nhỏ/lớn nhất trong list, rồi đem sang list mới. Loop cho tới khi hết list #3. Nếu không xài mấy function cho sẵn đó, thì làm thủ công như này: LIST_INT = [1, -1, 2, 5, -10, 20, 100, 99, 23, -30] new_list= [] count = 0 while LIST_INT: # Cái này để chắc ăn thôi, phòng khi sai gì đó thì loop tự exit sau 100 lần count = count + 1 if count > 100: print(count) break # Lấy số đầu tiên trong list, đặt nó là MIN_number MIN_number = LIST_INT[0] # Duyet tung so trong list for number in LIST_INT: # nếu số vừa duyệt nhỏ hơn số MIN_number... if number < MIN_number: # ...thì MIN_number có giá trị mới MIN_number = number # khi kết thúc vòng for này, thì MIN_number sẽ là số nhỏ nhất trong list # chuyển số MIN_number qua list mới new_list.append(MIN_number) # xoá item (tuong đương MIN_number) ở list cũ LIST_INT.remove(MIN_number) # sẽ loop lại từ đầu, 1 lần while, 1 lần for, cứ vậy cho tới khi nào hết các item trong list # khi list empty thì while tự exit print(new_list) Output: [-30, -10, -1, 1, 2, 5, 20, 23, 99, 100] [Finished in 0.5s] 4 Likes trungtech1908 (Đinh Đức Bảo Trung) August 22, 2020, 12:11pm #8 hì, thanks trungtech1908 (Đinh Đức Bảo Trung) August 22, 2020, 12:20pm #9 code hình như sai, tui nghĩ cái input gộp chung vs for hơi sai noname00 (HK boy) August 22, 2020, 12:27pm #10 rogp10: numbers = [int(v) for v in input("Nhập dãy số: ").split(" ")] print("Dãy số đã sắp xếp: ", sorted(numbers)) Chơi xấu hơn xíu: # welcome to the hell print("Dãy số đã sắp xếp: ", sorted(map(int, input("Nhập dãy số: ").split()))) trungtech1908: code hình như sai, tui nghĩ cái input gộp chung vs for hơi sai Code không hề sai, đây là Python. 4 Likes trungtech1908 (Đinh Đức Bảo Trung) August 22, 2020, 12:29pm #11 sorry tui cóp thiếu DayNhauHoc's Discord Học C++ Free? Click Blog Dạy Nhau Học Tự Học Lập Trình 83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao? Từ khóa » Viết Hàm Sắp Xếp Mảng Theo Thứ Tự Tăng Dần Python Sắp Xếp Mảng Tăng / Giảm Dần Bằng Python - Freetuts Viết Hàm Sắp Xếp Danh Sách Số Thực Theo Thứ Tự Tăng Dần. (Không ... Sắp Xếp Phần Tử Trong List Python Sắp Xếp Tăng Dần Cho List Trong Python | Tìm ở đây Bài Tập Python Cơ Bản: Sắp Xếp Các Phần Tử Trong List Theo Thứ Tự ... Hàm Sorted() Trong Python Hàm List Sort() Trong Python - Học Lập Trình Python - VietTuts Hàm List Sort() Trong Python Ngôn Ngữ Python - Sắp Xếp Mảng Tăng / Giảm NumPy - Sắp Xếp Mảng Trong Python Cùng ôn Lại Những Thuật Toán Sắp Xếp Và Xây Dựng Hàm Sort Sử ... Sắp Xếp List Trong Python - Lập Trình Từ Đầu Bài 45. Sắp Xếp Dãy Số Giảm Dần, Tăng Dần - Lập Trình Không Khó