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ố 13 kết quả

Đề tài: [C] Viết n nguyên tố đầu tiên???

  1. #1
    Ngày gia nhập
    01 2007
    Bài viết
    2

    Mặc định [C] Viết n nguyên tố đầu tiên???

    Bai` này em không hiểu sai ở đâu các bác ơi.Em làm bài này để học về cách sử dụng hàm và thủ tục.Mong các pro giúp.:(

    Viết ra n số nguyên tó đầu tiên. mà nó cứ lặp vô hạn hoặc không chạy dc thế mấy đau :((
    Các bác giúp em với

    Code:
    #include<stdio.h>
    #include<conio.h>
    #include<math.h>
    bool ngto(int k)
    {
       int i;
       bool ngto;
       ngto= false;
       if (k<2){
                return(0);
               } 
       for(i=2;i<=(trunc(sqrt(k)));i++)
            {
              if(k%i==0){
                            return(0);
                         }                         
             }
       ngto=true;
    
    }
    void inngto(int k,int dem)
    {
         
         if(ngto(k)){
                         printf("%d",k,"  ");
                         dem++;
                     }      
    }
    main()
    {
             int n,k=1;
             printf("Nhap n= ");
             scanf("%d",&n);
             int dem =0;
             while(dem<n){
                             
                              inngto(k,dem);
                               k++;
                          }
             getch();     
    }
    Đã được chỉnh sửa lần cuối bởi genius2080 : 03-02-2007 lúc 03:00 PM.
    Help Me

  2. #2
    Ngày gia nhập
    12 2006
    Bài viết
    43

    mình cũng mới học C àh, minh thấy có chỗ ỡ hàm in nguyên tố á nó liên quan tới vòng lập while trong hàm main, cái đó làm cho vòng lập chạy vô hạn đó.
    Biếm điếm lúc nào cũng nhỏ hơn n, do có những số kô phải là số nguyên tố và làm biến điếm kô tăng.
    Vòng lập của bạn chỉ kết thúc khi dem = n. Bạn xem lại nha.

  3. #3
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Lưu ý: genius2080 hãy chú ý đến tiêu đề bài viết của mình nhé. Chỉ một lần nữa bài viết của bạn sẽ bị xóa mà không cần phải sửa lại.

    Bài của bạn sao mà lằng nhằng vậy? Theo Dreaminess bạn làm theo cách này:
    Code:
    Do
    {
     Tìm số nguyên tố
     Nếu thấy thì đếm (count++)
    }While (Count< Một số lượng số nguyên tố muốn tìm);
    Chỉ vậy thôi, nhớ xét cả trường hợp count CHỈ CÓ nhỏ hơn số lượng nguyên tố yêu cầu.(Nếu cần thiết)

    Good luck
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  4. #4
    Ngày gia nhập
    12 2006
    Bài viết
    43

    Mình có gợi ý cho bài này như sau (hồi nãy có bổ sung rùi nhưng sao kô được bây, giờ phải đánh lại lần 2 ).

    Code:
    #include <stdio.h>
    #include <conio.h>
    int ngto(int n)  //ham kiem tra so nguyen to dua vao so uoc
    {
        int i;
        int dem=0;
        for (i=1;i<=n;++i)
            if (n%i==0)
              dem = dem + 1;
            if ( dem == 2 )
            return 1; // la so nguyen to
            else
            return 0; // ko phai so nguyen to
    }
    main()
    {
      int n;
      int i;
    do
    {
       clrscr();
       printf("nhap vao so n : ");
       scanf("%d",&n);
    }
    while (n < 1);
       for (i=1;i<=n;++i)
       if ( ngto(i) )
         printf("%d ",i);
         getch();
         return 0;
    }

  5. #5
    Ngày gia nhập
    11 2006
    Bài viết
    633

    Dùng sàng Eratosthene kết hợp với bộ đếm sẽ làm được.

  6. #6
    Ngày gia nhập
    01 2007
    Bài viết
    2

    Mặc định [C] Viết n nguyên tố đầu tiên???

    ^_^.Mình sẽ lưu ý.
    Bác BATHONG ơi.Bài làm của bác chỉ in ra các số nguyên tố <n mà thôi.
    Còn bài của em nó bắt viết ra n số nguyên tố đầu tiên(Tức là n=4 thì in ra 2 3 5 7)mà :( .Mong các bác giúp đỡ. :(
    Help Me

  7. #7
    Ngày gia nhập
    11 2006
    Bài viết
    633

    Trời ạ, bạn làm thử theo cách của tui là được roài.

  8. #8
    Ngày gia nhập
    12 2006
    Bài viết
    43

    hic hic có lẽ mình đọc nhầm, đúng là bài của mình là in ra cac số nguyên tố <=n, nếu muốn in n số nguyên đầu thì:

    #include <stdio.h>
    #include <conio.h>
    int ngto(int n) //ham nay viet giong phia tren
    {
    int i;
    int dem=0;
    for (i=1;i<=n;++i)
    if (n%i==0)
    dem = dem + 1;
    if ( dem == 2 )
    return 1; // la so nguyen to
    else
    return 0; // ko phai so nguyen to
    }
    main()
    {
    int n;
    int i=1; //bien i dung xet so nguyen to
    int dem = 0; //bien diem de xac dinh so nguyen to in ra
    do
    {
    clrscr();
    printf("nhap vao so n : ");
    scanf("%d",&n);
    }
    while (n < 1);
    do
    {
    if ( ngto(i) ) //neu i la so nguyen to
    {
    printf("%d ",i)
    dem = dem + 1;
    }
    ++i;
    }
    while (dem < n);
    getch(0;
    return 0;
    }

  9. #9
    Ngày gia nhập
    08 2006
    Nơi ở
    Hải Phòng
    Bài viết
    218

    PHP Code:
    #include "stdio.h"
    #include "math.h"
    int nijkflag;
    void main()
     {
      
    i=1j=1;
      
    printf("Nhap n: "); scanf("%d",&n);
      for(
    i=1i<=ni++)
          do
           {
         
    flag=0;
         
    j++;
         for (
    k=2k<= sqrt(j); k++)
          if (
    k==0)
            {
             
    flag=1;
             break;
            }
           }
          while (
    flag);
          
    printf("%d - ",j);
      
    getch();
     } 

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

    for(i=2;i<=(trunc(sqrt(k)));i++)
    Mới từ pascal chuyển sang C++ hả, viết thế này mà compile của C++ nó dịch được thì tui đi bằng đầu

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

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