Trong video về phần đệ quy của @NguyenVietNamSon,mình thấy khi giải bài toán:
Tính tổng:S=1+2+3+4+5+6+7+…+N.thì anh Sơn code như sau:
int tinhtong(int N,int sum=0,int i=0){
if(i>N)
return sum;
return tinhtong(N,sum+i,i+1);
}
int main(){
int N=12;
printf("Tong can tim bang: %d.\n",tinhtong(N));
return 0;
}
Nhưng mình code lại thế này vẫn nhận được kết quả như nhau.Ở đây mình bỏ lệnh return
khi gọi lại hàm tinhtong
.
int tinhtong(int N,int sum=0,int i=0){
if(i>N)
return sum;
tinhtong(N,sum+i,i+1);
}
int main(){
int N=12;
printf("Tong can tim bang: %d.\n",tinhtong(N));
return 0;
}
Cụ thể:
INPUT:
N=12;
OUTPUT:
sum=78;
Nhờ mọi người giải thích giúp mình về tác dụng của lệnh return
trong trường hợp này.