Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: Tính S(n)=1+1/2+1/3+...+1/n. code này sai ở đâu

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

    Mặc định Tính S(n)=1+1/2+1/3+...+1/n. code này sai ở đâu

    Đề bài là tính S(n)=1+1/2+1/3+...+1/n
    bài này dễ nhưng mình mới học C . thông cảm cho mình nha.
    làm đệ qui thì mình làm ok nhưng ko hiểu sao làm vòng for thì sai
    sau đây là code đệ qui đúng
    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. float tinh(float n);
    4. void main()
    5. {
    6. clrscr();
    7. float tong=0;
    8. int n ,i;
    9.  
    10. printf("\n nhap so nguyen n  ");
    11. scanf("%d",&n);
    12.  
    13.  
    14. for(i=1;i<=n;i++)
    15.  
    16.   { tong=tinh(i);            }
    17.    printf("\n ket qua la %f " ,tong);
    18.   getch();
    19.  
    20.   }
    21.  
    22.  
    23.   float tinh(float n)
    24.  
    25.   {
    26.   if(n==1)
    27.   return 1;
    28.   return tinh(n-1) + 1/n;
    29.   }

    Còn đây là code vòng for mình lại làm sai . gà quá
    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. #include<math.h>
    4. void main()
    5.   {
    6.     int n,i; float kq=0;
    7.     printf("\n nhap n ");
    8.     scanf("%d",&n);
    9.  
    10.     for(i=1;i<=n;i++)
    11.       {
    12.         kq=kq+(1/i);
    13.       }
    14.  
    15.     printf("\n kq=%f",kq);
    16.     getch();
    17.  
    18.   }
    Đã được chỉnh sửa lần cuối bởi caotuan8888 : 21-03-2009 lúc 02:20 AM.

  2. #2
    Ngày gia nhập
    02 2008
    Nơi ở
    Việt Nam
    Bài viết
    577

    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. #include<math.h>
    4. void main()
    5.   {
    6.     int n,i; float kq=0;
    7.     printf("\n nhap n ");
    8.     scanf("%d",&n);
    9.  
    10.     for(i=1;i<=n;i++)
    11.       {
    12.         kq=kq+(1./i);  ///////
    13.       }
    14.  
    15.     printf("\n kq=%f",kq);
    16.     getch();
    17.  
    18.   }

    Cần ép kiểu, nếu không sẽ không ra kết quả là gt thực

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

    Chơi long double luôn cho lẹ bạn ơi
    Chú ý cái kiểu int và kiểu float khi bạn dùng chung với nhau
    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. #include<math.h>
    4. void main()
    5. {
    6.     long double n,i,kq=0;
    7.     printf("\nNhap n = ");
    8.     scanf("%lf",&n);
    9.  
    10.     for(i=1;i<=n;i++)
    11.     {
    12.         kq=kq+(1/i);
    13.     }
    14.  
    15.     printf("\nKet qua = %.20lf",kq);
    16.     getch();
    17. }

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

    ép kiểu cho
    S+=float1/i
    là ok thui

  5. #5
    Ngày gia nhập
    03 2009
    Nơi ở
    Tứ xứ trên đất sài thành
    Bài viết
    60

    Code:
    #include<stdio.h>
    #include<conio.h>
    //ko cần math.h
    void main()
      {
        int n,i; float kq=0;
        printf("\n nhap n ");
        scanf("%d",&n);
    
        for(i=1;i<=n;i++)
          {
            kq=kq+(1.0/i);//hay ep kiểu (float)1/i;
          }
    
        printf("\n kq=%f",kq);
        getch();
    
      }

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

  1. Tại sao lại bỏ Store Proceduce nếu code theo hướng Code First trong MVC3
    Gửi bởi rogerminh2401 trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 5
    Bài viết cuối: 02-11-2012, 08:22 PM
  2. Trả lời: 5
    Bài viết cuối: 27-04-2012, 07:51 PM
  3. compiler Warning: Unreachable code và chạy sai trong khi code đúng. Vì sao?
    Gửi bởi lovemoney trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 19
    Bài viết cuối: 19-01-2012, 10:02 PM
  4. Bài tập C++ Nhập code và name sv vào in ra thì name in đúng nhưng code thì in ra cả 2 code lẫn name
    Gửi bởi spacy0212 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 27-09-2011, 08:47 AM
  5. Code quản lý sinh viên bằng danh sách lối vòng. Giúp mình thay đổi code kế thừa?
    Gửi bởi caocanha trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 6
    Bài viết cuối: 04-05-2009, 03:39 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