Viết hàm tính s(n) = 1 + 1/2 + 1/3 + ... + 1/n bằng đệ quy nhưng bị lỗi lặp vô tận

bài này cần gì struct nhỉ? (chưa học nên chả biết struct là cái gì cơ mà mình thì không cần nó).

#include <stdio.h>

double tong(int n) {
    if (n <= 1) return 1;
    return (double) 1/n + tong(n - 1);
}

int main() {
    /* whatever you put here, it will be run. */
}

Kết quả xuất ra dưới dạng phân số chứ không phải số thập phân.

Hiểu rồi nhé anh Béo :joy: Dùng struct + operator

2 Likes

ha ha, mình cũng ít dùng struct nên hồi đó không nhớ ra là có struct cũng làm đc :smiley:

3 Likes
#include<stdio.h>
   double S(int n){
   	if(n==0)
   	return 0 ;
   	else return S(n-1)+(1.0/n);
   } 

em gặp lỗi y như bác, nhờ lời giải ở dưới mà em tính đc nên phải tạo acc vào đây để like

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?