Thông tin
  • Đánh dấu xác nhận câu hỏi đã được giải quyết để giúp diễn đàn nâng cao chất lượng [cách sử dụng]
  • Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết [nội qui]
  • Tìm kiếm trước khi đặt câu hỏi

Thuật toán Liệt kê các số nguyên tố từ 1 đến n  Chủ đề đã được giải quyết

Góc trao đổi, hỏi đáp của ngôn ngữ Visual Basic 6 và Visual Basic Script

Các điều hành viên: Apple, nhochoclaptrinh, hongtamtk

Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi thinhle90 » Thứ 3 14/09/2010 5:44 pm

Mấy anh chị chỉ giúp em bài toán nhập vào số liệt kê các số nguyên tố đến n và lưu vào trong list.
Thank !
thinhle90
Thành viên chính thức
Thành viên chính thức
 
Bài viết: 17
Ngày tham gia: Thứ 3 14/09/2010 5:35 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi VuVanHoanh » Thứ 3 14/09/2010 7:39 pm

ListBox1, Command1

Syntax: [ Download ] [ Hide ]
Using Visual Basic Syntax Highlighting
  1. Private Sub Command1_Click()
  2. Dim i As Integer
  3. For i = 1 to n
  4. ListBox1.AddItem i
  5. Next
  6. End Sub
  7.  
Parsed in 0.000 seconds, using GeSHi 1.0.8.11
Dead.
Hình đại diện của thành viên
VuVanHoanh
Thành viên danh dự
Thành viên danh dự
 
Bài viết: 1256
Ngày tham gia: Thứ 5 03/06/2010 9:23 pm
Đến từ: Kim Sơn - Đông Triều - Quảng Ninh
Đã cảm ơn: 22 lần
Được cảm ơn: 135 lần

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi htpc » Thứ 3 14/09/2010 7:58 pm

VuVanHoanh đã viết:ListBox1, Command1

Syntax: [ Download ] [ Hide ]
Using Visual Basic Syntax Highlighting
  1. Private Sub Command1_Click()
  2. Dim i As Integer
  3. For i = 1 to n
  4. ListBox1.AddItem i
  5. Next
  6. End Sub
  7.  
Parsed in 0.000 seconds, using GeSHi 1.0.8.11

Người ta hỏi số nguyên tố cậu Hoanh ạ.
Cho i as integer chạy từ 2 -> n. Check i là số nguyên tố thì thêm vào list.
Giải thuật tìm số nguyên tố học từ cấp 2 :)
htpc
 

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi VuVanHoanh » Thứ 3 14/09/2010 8:37 pm

Nguyên tố thì,... :-? khá lâu đấy
ListBox1, Command1

Syntax: [ Download ] [ Hide ]
Using Visual Basic Syntax Highlighting
  1. Private Sub Command1_Click()
  2. Dim n As Integer
  3. Dim m As Integer
  4. Dim i As Integer
  5. Dim s As Integer
  6.  
  7. n = 'n bằng bao nhiêu thì bạn ghi ra
  8.  
  9. For i = 1 to n 'Số bạn cần đếm tới
  10. If n = 1 Or n = 2 Then
  11.      ListBox1.AddItem n
  12.      Exit Sub
  13. Else
  14. For m = 1 to i
  15.      If i mod m = 0 Then
  16.           s = s + 1
  17.      End if
  18.      If s = 2 Then
  19.           ListBox1.AddItem i
  20.           s = 0
  21.      End if
  22. End if
  23. Next
  24. s = 0
  25. Next
  26. End Sub
  27.  
Parsed in 0.000 seconds, using GeSHi 1.0.8.11
Dead.
Hình đại diện của thành viên
VuVanHoanh
Thành viên danh dự
Thành viên danh dự
 
Bài viết: 1256
Ngày tham gia: Thứ 5 03/06/2010 9:23 pm
Đến từ: Kim Sơn - Đông Triều - Quảng Ninh
Đã cảm ơn: 22 lần
Được cảm ơn: 135 lần

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi htpc » Thứ 3 14/09/2010 8:48 pm

Số 1 không phải là số nguyên tố, nên chỉ chạy từ 2->n :)
htpc
 

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi PhapSuXeko » Thứ 3 14/09/2010 10:31 pm

Syntax: [ Download ] [ Hide ]
Using Visual Basic Syntax Highlighting
  1. '//
  2. '// Hàm kiểm tra số Nguyên Tố
  3. '//
  4.    Function LaSNT(ByVal n As Integer) As Boolean
  5.         Dim i% = Sqrt(n)
  6.         While (i > 1)
  7.             If n Mod i = 0 Then LaSNT = False : Exit Function
  8.             i = i - 1
  9.         Wend
  10.         LaSNT = True
  11.     End Function
  12. '//
  13. '// Sử dụng, bỏ code vô Button
  14. '//
  15.    Dim n% = Inputbox ("Nhập n")
  16.     For i% = 2 To n
  17.         If LaSNT (i) = True Then Listbox1.AddItem(i)
  18.     Next
  19.  
Parsed in 0.016 seconds, using GeSHi 1.0.8.11

Đã sửa lại code VB6 như bác Trương Phú
Sửa lần cuối bởi PhapSuXeko vào ngày Thứ 4 15/09/2010 1:36 pm với 2 lần sửa trong tổng số.
Trang chủ phần mềm xem ảnh ImageGlass: http://www.imageglass.org
Hình đại diện của thành viên
PhapSuXeko
Mạnh Thường Quân
Mạnh Thường Quân
 
Bài viết: 294
Ngày tham gia: Chủ nhật 03/05/2009 7:44 pm
Đến từ: Tây Ninh
Đã cảm ơn: 1 lần
Được cảm ơn: 9 lần

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi thinhle90 » Thứ 4 15/09/2010 12:06 am

Thank! tất cả mọi người nha !
thinhle90
Thành viên chính thức
Thành viên chính thức
 
Bài viết: 17
Ngày tham gia: Thứ 3 14/09/2010 5:35 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n  Chủ đề đã được giải quyết

Gửi bàigửi bởi truongphu » Thứ 4 15/09/2010 7:52 am

1- Tiêu đề có nêu "thuật toán", đúng ra bài nầy ở Box Thuật toán. Thôi thì ở đây cũng được. Đây là đề mục rất quen thuộc; các bạn có thể search với từ "nguyên tố" sẽ thấy rất nhiều bài viết cả trong Box Thuật toán, Box Thắc mắc...

2- Bài viết của bạn PhapSuXeko ngay trước khi chủ đề tài cảm ơn, chúng ta xem như đại diện các thảo luận ở trên:

a- Bạn PhapSuXeko đã dùng code VB.Net, như vậy trả lời trong Box VB6 sẽ gây thắc mắc cho các bạn không quen. Mong các bạn khác lưu ý điểm nầy; code trên chạy trong môi trường VB6 sẽ báo lỗi.
* Với VB6, ta viết While... Wend

b- Nếu là Hàm kiểm tra số Nguyên Tố, ta chỉ cần kiểm tra căn bậc 2 số đó có phần thập phân hay không.

c- Kỹ thuật Code:
Dim i%
i = n / 2

rõ ràng không hay và làm chậm tính toán. ta viết lại:
Mã: Chọn tất cả
Dim i%
i = n \ 2


d- phân tích code:
dùng n\2 là hay hơn n. Tuy nhiên tối ưu là dùng phần nguyên của căn n = CInt(Sqr(n)); hoặc "ép" căn n thành Integer, ví dụ như:
Mã: Chọn tất cả
Dim i%
i = Sqr(n)
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh
Hình đại diện của thành viên
truongphu
VIP
VIP
 
Bài viết: 4711
Ngày tham gia: Chủ nhật 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Đã cảm ơn: 13 lần
Được cảm ơn: 457 lần

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi PhapSuXeko » Thứ 4 15/09/2010 8:34 am

Híc, post xong mới biết là vb6, có sửa lại nhưng quên cái vụ while wend
Trang chủ phần mềm xem ảnh ImageGlass: http://www.imageglass.org
Hình đại diện của thành viên
PhapSuXeko
Mạnh Thường Quân
Mạnh Thường Quân
 
Bài viết: 294
Ngày tham gia: Chủ nhật 03/05/2009 7:44 pm
Đến từ: Tây Ninh
Đã cảm ơn: 1 lần
Được cảm ơn: 9 lần

Re: Thuật toán Liệt kê các số nguyên tố từ 1 đến n

Gửi bàigửi bởi b0yhu3cut3 » Thứ 2 31/10/2011 1:34 pm

Em là thành viên mới, em muốn làm bài này chạy ở Pascal thì như thế nào
b0yhu3cut3
 
Bài viết: 1
Ngày tham gia: Thứ 2 31/10/2011 1:32 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần


Quay về Visual Basic 6 và Visual Basic Script (VB & VBS)

Ai đang trực tuyến?

Đang xem chuyên mục này: Bing [Bot]2 khách