Trang 1 trên tổng số 4 123... Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 34 kết quả

Đề tài: Nhập vào 1 số n.Tính tổng các số nguyên tố từ 1->n.

  1. #1
    Ngày gia nhập
    03 2009
    Nơi ở
    TP HCM
    Bài viết
    20

    Question Nhập vào 1 số n.Tính tổng các số nguyên tố từ 1->n.

    Giúp em cái giải thuật ở kiểm tra các số đó là số nguyên tố.

  2. #2
    Ngày gia nhập
    01 2009
    Nơi ở
    Hà Nội
    Bài viết
    205

    - Lập 1 hàm kiểm tra 1 số có là số nguyên tố hay không. Nếu như 1 số không chia hết cho các số từ 2-> căn bậc 2 của nó thì nó là số nguyên tố, ngược lại thì không.

    - cho 1 biến chạy từ 2 -> n, kiểm tra từng số xem có phải nguyên tố không, nêu đúng thì cộng vào 1 biến tổng nào đó.

  3. #3
    Ngày gia nhập
    03 2009
    Nơi ở
    TP HCM
    Bài viết
    20

    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. #include<math.h>
    4. void main()
    5. {
    6. clrscr();
    7. unsigned int n,s=0;
    8. printf("\nNhap n:");
    9. scanf("%u",n);
    10. for(int i=2;i<=n;i++)
    11. for(int j=2;j<=sqrt(i);j++)
    12. if(i%j!=0)
    13. s+=i;
    14. printf("\nKet qua la:%u",s);
    15. getch();
    16. }
    Theo như anh nói thì code của em như vậy có đúng ko ?

  4. #4
    Ngày gia nhập
    01 2009
    Nơi ở
    Hà Nội
    Bài viết
    205

    Bạn sửa chỗ này:
    PHP Code:
    for(int i=2;i<=n;i++)
    for(
    int j=2;j<=sqrt(i);j++)
    if(
    i%j!=0)
    s+=i
    Thành:
    PHP Code:
    for(int i=2;i<=n;i++)
    {
        
    int ok=1;
        for(
    int j=2;j<=sqrt(i);j++)
            if(
    i%j==0)
            {
                
    ok=0;break;
            }
        if(
    ok==1s+=i;


  5. #5
    Ngày gia nhập
    03 2009
    Nơi ở
    TP HCM
    Bài viết
    20

    anh có thể giải thích dùm em dùng ok để làm gì được ko a ?

  6. #6
    Ngày gia nhập
    01 2009
    Nơi ở
    Hà Nội
    Bài viết
    205

    Mặc định Nhập vào 1 số n.Tính tổng các số nguyên tố từ 1->n.

    Trong hàm trên ok=0 thì số đó không phải là số nguyên tố, còn ok=1 là số nguyên tố. Sở dĩ câu lệnh của bạn sai là vì nếu như bạn khẳng định rằng nếu i%j!=0 thì i là số NT là sai, bởi vì vòng lặp sẽ hiểu là nếu khi chạy mà i không chia hết cho j thì i là số nguyên tố luôn. Đây là 1 sự lầm lẫn. Điều đó đồng nghĩa với kết luận nếu 1 số không phải là số nguyên tố thì nó phải chia hết cho mọi số bé hơn hoặc bằng nó !!!

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

    Bài này bạn nên chia ra làm hàm cho quen !

    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. #include<math.h>
    4. void main()
    5. {
    6. clrscr();
    7. unsigned int n,s=0;
    8. printf("\nNhap n:");
    9. scanf("%u",n);                        // coi lại cái dòng này nữa !!!!!!!!!!!!!!
    10. for(int i=2;i<=n;i++)
    11. for(int j=2;j<=sqrt(i);j++)
    12. if(i%j!=0)
    13. s+=i;
    14. printf("\nKet qua la:%u",s);
    15. getch();
    16. }
    Đã được chỉnh sửa lần cuối bởi basilisk : 23-03-2009 lúc 11:01 PM.

  8. #8
    Ngày gia nhập
    03 2009
    Nơi ở
    TP HCM
    Bài viết
    20

    Dạ cám ơn em hiểu rồi.

  9. #9
    Ngày gia nhập
    03 2009
    Nơi ở
    TP HCM
    Bài viết
    20

    anh ơi cho em hỏi tí nữa nếu nhập n=2 thì i=2,j=2
    i%j==0.Vậy 2 có phải là số nguyên tố ko anh.

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

    Tất nhiên , số 2 là số nguyên tố rùi !

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

  1. Tối ưu Code nhập số nguyên dương rồi đảo ngược số nguyên dương vừa nhập trong C
    Gửi bởi tyrant trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 12
    Bài viết cuối: 21-06-2018, 06:19 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. 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. Trả lời: 16
    Bài viết cuối: 16-07-2010, 06:44 AM

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