Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 12 kết quả

Đề tài: 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.

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

    Wink 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.

    Các bác giúp em làm bài toán này nhé:
    Em mới học C nên không biết làm như thế nào hết.
    Mong các bác giúp đỡ.
    Em cảm ơn!

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

    Trích dẫn Nguyên bản được gửi bởi maiit Xem bài viết
    Các bác giúp em làm bài toán này nhé:
    Em mới học C nên không biết làm như thế nào hết.
    Mong các bác giúp đỡ.
    Em cảm ơn!
    C++ Code:
    1. //Ham kiem tra so nguyen to
    2. bool prime(int x){
    3. int i;
    4. for (i = 2;i <= (int)x; i++){
    5. if (x%i ==0) return false;
    6. }
    7. return true;
    8. }
    Sau đó bạn dùng một biến s = 2 và dùng biến đếm , tăng s lên 1 đơn vị và kiểm tra xem có là số nguyên tố đến khi biến đếm = n thì dừng

  3. #3
    Ngày gia nhập
    02 2011
    Nơi ở
    hà nội
    Bài viết
    131

    Trích dẫn Nguyên bản được gửi bởi maiit Xem bài viết
    Các bác giúp em làm bài toán này nhé:
    Em mới học C nên không biết làm như thế nào hết.
    Mong các bác giúp đỡ.
    Em cảm ơn!
    Dạng bài này khá phổ biến. Nếu search sẽ thấy rất nhiều nguồn tham khảo. Bạn có thể tham khảo ở đâyhttp://forums.congdongcviet.com/showthread.php?t=15496
    Chia tay bình minh

  4. #4
    Ngày gia nhập
    12 2010
    Nơi ở
    Hanoi, Vietnam, Vietnam
    Bài viết
    687

    Trích dẫn Nguyên bản được gửi bởi programmingvietnam Xem bài viết
    C++ Code:
    1. //Ham kiem tra so nguyen to
    2. bool prime(int x){
    3. int i;
    4. for (i = 2;i <= (int)x; i++){
    5. if (x%i ==0) return false;
    6. }
    7. return true;
    8. }
    Sau đó bạn dùng một biến s = 2 và dùng biến đếm , tăng s lên 1 đơn vị và kiểm tra xem có là số nguyên tố đến khi biến đếm = n thì dừng
    ko nên viết như thế , cái
    C++ Code:
    1. i <=(int) x
    có vẻ thừa vì bản thân giá trị x đã là kiểu int sao lại cần phải ép kiểu nhỉ
    viết như thế này có vẻ hợp lí hơn
    C++ Code:
    1. i <=(int)sqrt(x);

  5. #5
    Ngày gia nhập
    05 2011
    Bài viết
    299

    Trích dẫn Nguyên bản được gửi bởi programmingvietnam Xem bài viết
    C++ Code:
    1. //Ham kiem tra so nguyen to
    2. bool prime(int x){
    3. int i;
    4. for (i = 2;i <= (int)x; i++){
    5. if (x%i ==0) return false;
    6. }
    7. return true;
    8. }
    Sau đó bạn dùng một biến s = 2 và dùng biến đếm , tăng s lên 1 đơn vị và kiểm tra xem có là số nguyên tố đến khi biến đếm = n thì dừng
    hix, giờ này mà còn
    C++ Code:
    1. i <= (int) x
    . số nguyên tố chia hết cho 1 và chính nó thì kiểm tra chia hết cho chính nó không làm gì
    Programming tutorials and source code examples

    Trong nhà không vợ không con
    Uống bia gặm thịt sao ngon thế này
    Nhậu nhẹt không bị la rầy
    Một tuần ta cứ bảy ngày " nâng ly "....

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

    Mặc định 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.

    Em nhầm một tý mấy bác làm gì mà căng thế. Tính em thích sự nhẹ nhàng. Sửa như của bạn Xuyến đấy

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

    liệt kê n số nguyên tố đầu tiên
    C Code:
    1. #include<stdio.h>
    2. #include<stdlib.h>
    3. #include<conio.h>
    4. #include<math.h>
    5.  
    6. int ktSNT (const int a)
    7. {
    8.     int i = 0;
    9.     for(i = 2; i <= (int)sqrt(a); i++)
    10.     {
    11.         if( a % i == 0 || a < 2 && a != 2)
    12.         {
    13.             return 0;
    14.         }
    15.     }
    16.     return 1;
    17. }
    18. int main ()
    19. {
    20.     int N,i, k = 0;
    21.     int* snt = 0;
    22.     printf("\n Nhap vao N:");
    23.     scanf("%d", &N);
    24.  
    25.     snt = (int*)malloc(N*sizeof(int));
    26.     k = 0;
    27.     i = 2;
    28.     while(k < N)
    29.     {
    30.         i++;
    31.         if(ktSNT(i) == 1)
    32.         {
    33.             snt[k] = i;
    34.             k++;
    35.         }
    36.     }
    37.  
    38.     printf("\n          Bang cac so nguyen to\n");
    39.     for (i = 0; i < k; i++)
    40.     {
    41.         printf("%5d", snt[i]);
    42.     }
    43.     free(snt);
    44.     getch();
    45.     return 0;
    46. }

    skype: hvphu2010
    Yahoo: hvphu2010
    Sdt: 0129 609 4567

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

    Phạm vi số N là bao nhiêu ? Nếu N lớn thì phải dùng sàng E.
    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ợ

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

    Thumbs up In N số nguyên tố đầu tiên

    C Code:
    1. for(i=1; i<=N; i++) a[i]=1;
    2. for(i=2; i<=N/2; i++)
    3.     for(j=2; j<=N/i; j++)
    4.         a[i*j]=0;
    5. for(i=1; i<=N; i++)
    6.    if( a[i] == 1 )
    7.       printf("%8d", i);

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

    Code:
    #include<stdio.h> 
    #include<math.h> 
    #include<conio.h>
    int nto(int n); 
    int main() 
    { 
        int tong=0,n,i=0; 
        printf("nhap n:");scanf("%d",&n); 
        printf("%d so nguyen to dau tien la:\n",n); 
        for(int j=0;;j++) 
        { 
            if(nto(j)==1) 
            { 
                printf("%5d",j); 
                i++; 
            } 
            if(i==n)break; 
        } 
        getch();
    } 
    int nto(int n) 
    { 
        if(n==0||n==1) 
            return 0; 
        for(int i=2;i<=(int)sqrt(n);i++) 
            if(n%i==0)return 0; 
        return 1;     
    }
    thử cái này coi

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

  1. Bài tập C Viết chương trình tính tổng bậc 3 của n số nguyên đầu tiên ??
    Gửi bởi keilmask trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 7
    Bài viết cuối: 12-08-2013, 11:58 PM
  2. Bài tập C giải thuật nhập vào số nguyên n in ra n số nguyên tố đầu tiên?
    Gửi bởi LTC trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 48
    Bài viết cuối: 25-04-2013, 07:40 PM
  3. 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
  4. viết hàm chèn x vào trước phần tử có gí trị là số nguyên tố đầu tiên trong mảng
    Gửi bởi bobobo trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 17-10-2010, 07:24 PM
  5. [C] Viết n nguyên tố đầu tiên???
    Gửi bởi genius2080 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 12
    Bài viết cuối: 06-02-2007, 10:57 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