Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Trang 1 trên tổng số 5 123... Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 49 kết quả

Đề tài: giải thuật nhập vào số nguyên n in ra n số nguyên tố đầu tiên?

  1. #1
    Ngày gia nhập
    03 2011
    Bài viết
    1

    Mặc định giải thuật nhập vào số nguyên n in ra n số nguyên tố đầu tiên?

    giãi thuật của bài nhập vào số n in ra n số nguyên tố đâu tiên
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

  2. #2
    Ngày gia nhập
    03 2011
    Nơi ở
    Bình Dương, Hồ Chí Minh
    Bài viết
    392

    C Code:
    1. #include<stdio.h>
    2. bool kt(int n)
    3. {
    4.     int dem=0;
    5.     for (int i=1;i<=n;i++)
    6.         if (n%i==0)
    7.             dem++;
    8.     if (dem==2)
    9.         return true;
    10.     else
    11.         return false;
    12. }
    13. void main()
    14. {
    15.     printf("Nhap n: ");
    16.     int n,dem=0;
    17.     scanf("%d",&n);
    18.     printf("Cac so nguyen to: ");
    19.     for (int i=2;dem<n;i++)
    20.         if (kt(i)==true)
    21.         {
    22.             printf("%d ",i);
    23.             dem++;
    24.         }
    25. }
    THUẬT TOÁN:
    1. Viết một hàm kiểm tra một số có phải là số nguyên tố hay không (snt là số chỉ chia hết cho 1 và chính nó)
    2. Tạo một biến dem để đếm có bao nhiêu số nguyên tố được in ra rồi,Cho một vòng for chạy từ 2 đến n. rồi với mỗi i ta dùng hàm kiểm tra số nguyên tố vừa viết, kiểm tra xem i đó có phải là số nguyên tố hay không. nếu đúng thì xuất ra i đó đồng thời tăng biến dem lên 1 đơn vị.
    [/code]

  3. #3
    Ngày gia nhập
    10 2010
    Nơi ở
    Hà Nội
    Bài viết
    73

    C Code:
    1. bool kt(int n)
    2. {  
    3.     for (int i=2 ;i<=sqrt(n) ;i++)
    4.         if (n%i==0) return false;
    5.     return true;
    6. }
    viết đơn giản
    cho vòng for chạy đến sqrt(n); là đủ giảm được vòng lặp

  4. #4
    Ngày gia nhập
    09 2008
    Bài viết
    2

    Codes này chạy rất tốt.

    Nhưng các bạn cho mình hỏi: nếu đề bài không yêu cầu dùng hàm thì viết lại thế nào cho hợp lỳ nhỉ ?

    Thanks for help

  5. #5
    Ngày gia nhập
    12 2009
    Nơi ở
    The country of happiness
    Bài viết
    182

    không yêu cầu dùng hàm khác với yêu cầu không dùng hàm.
    Trích dẫn Nguyên bản được gửi bởi Wazi Armstrong Xem bài viết
    Ôi skill của mình đã đạt đến hàng tuyệt đỉnh
    Không chỉ ăn, tắm, đi lại có thể code
    Mà giờ đã mình có thể code cả khi ngủ. Code tạm vào buffer của não, lúc nào dậy chỉ việc viết ra một cách trôi chảy không lưỡng lự.
    PS: Nếu ngủ dài rảnh rảnh có thể debug luôn, dậy chỉ việc build ?
    Trích dẫn Nguyên bản được gửi bởi vietanh8286 Xem bài viết
    Lập trình viên giỏi là lập trình viên có vợ

  6. #6
    Ngày gia nhập
    11 2008
    Bài viết
    207

    Mặc định giải thuật nhập vào số nguyên n in ra n số nguyên tố đầu tiên?

    giãi thuật của bài nhập vào số n in ra n số nguyên tố đâu tiên
    xin hỏi chủ topic là bây giờ tui nhập số 10 nó sẽ in ra
    2-3-5-7 (*)
    hay
    2-3-5-7-11-13-17-19-23-29 (**)
    nếu là (*) thì mấy bài giải kia OK, nhưng nếu là (**) thì mấy bài giải này lạc đề rồi.
    Code:
    Codes này chạy rất tốt.
    Nhưng các bạn cho mình hỏi: nếu đề bài không yêu cầu dùng hàm thì viết lại thế nào cho hợp lỳ nhỉ ?
    bó tay

  7. #7
    Ngày gia nhập
    10 2010
    Nơi ở
    Hà Nội
    Bài viết
    73

    Trích dẫn Nguyên bản được gửi bởi longtth Xem bài viết
    xin hỏi chủ topic là bây giờ tui nhập số 10 nó sẽ in ra
    2-3-5-7 (*)
    hay
    2-3-5-7-11-13-17-19-23-29 (**)
    nếu là (*) thì mấy bài giải kia OK, nhưng nếu là (**) thì mấy bài giải này lạc đề rồi.
    bó tay
    không hiểu bạn đã xem chưa mà bảo lạc đề vậy
    Thất bại lớn nhất của đời người là tự đại
    Khiếm khuyết lớn nhất của đời người là kém hiểu biết


    => em có chỗ nào chưa đúng mong các bác chỉ bảo thêm <=

  8. #8
    Ngày gia nhập
    11 2011
    Bài viết
    2

    Mặc định Lỗi bài viết

    Bạn kia nói đúng đấy!! Đề yêu cầu xuất ra n số nguyên tố đầu tiên mà, chứ đâu phải xuất ra số nguyên tố từ 1 tới n đâu. Đọc lại đi nha bạn hiền....

  9. #9
    Ngày gia nhập
    10 2010
    Bài viết
    8

    Trích dẫn Nguyên bản được gửi bởi nguyenngocsang Xem bài viết
    Bạn kia nói đúng đấy!! Đề yêu cầu xuất ra n số nguyên tố đầu tiên mà, chứ đâu phải xuất ra số nguyên tố từ 1 tới n đâu. Đọc lại đi nha bạn hiền....
    Dùng vòng while là dễ đọc dễn hiểu nhất

    C Code:
    1. i = 2 ;
    2. count = 0 ;
    3. while(count <= n ) // n là số các số nguyên tố muốn in ra màn hình
    4. {  //Khi nào đủ n số thì thoát vòng lặp
    5.     if(nguyen_to(i))
    6.     {
    7.          printf(" %d\t",i);
    8.          count++;   // Mỗi lần gặp số nguyên tố thì ghi nhận vào biến đếm
    9.     }
    10.     i++;
    11. }


    Hàm kiểm tra nguyên tố :
    C Code:
    1. int nguyen_to(int k)
    2. {
    3.      int i ;
    4.      if(k<=1) return 0 ;
    5.      for(i=0;i<=sqrt(k);i++)
    6.         if(k%i==0) return 0;
    7.      return 1;
    8. }
    Đã được chỉnh sửa lần cuối bởi peiu : 23-11-2011 lúc 10:19 PM.

  10. #10
    Ngày gia nhập
    04 2010
    Bài viết
    1,534

    Đi theo số tăng 2 nhanh hơn

    C Code:
    1. int i, dem;
    2. if (n<1) return;
    3. printf("số nguyên tố: 2 "); // số đầu tiên là số 2
    4. for (i=3, dem=1; dem < n; i += 2)
    5. {
    6.   if (SoNguyenTo(i))
    7.   {
    8.     printf("%d ", i);
    9.     dem++;
    10.   }
    11. }
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

Các đề tài tương tự

  1. Lập trình C In k số nguyên tố đầu tiên có tổng các chữ số là chắn trong mảng, lỗi chỉ kiểm tra được với số đầu tiên?
    Gửi bởi ncn1992vn trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 5
    Bài viết cuối: 23-11-2012, 10:20 PM
  2. Nhập n, in ra n số nguyên tố đầu tiên và tổng của chúng
    Gửi bởi jlvljcky trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 30
    Bài viết cuối: 24-02-2012, 10:46 AM
  3. Viết chương trình nhập số nguyên dương n, liệt kê n số nguyên tố đầu tiên.
    Gửi bởi maiit trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 11
    Bài viết cuối: 19-06-2011, 01:05 PM
  4. Game Viết chương trình nhập số nguyên dương n, liệt kê n số nguyên tố đầu tiên trên C#?
    Gửi bởi maiit trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 18
    Bài viết cuối: 08-06-2011, 11:12 PM
  5. Lập trình C xin code cài đặt thuật toán sàng nguyên tố để liệt kê các số nguyên tố 2->480000
    Gửi bởi ngocdung_088 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 23
    Bài viết cuối: 06-12-2010, 11:53 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn