Chào mọi người, mình vừa bắt đầu học C được vài tuần nên khả năng code còn khá yếu, hiện tại mình gặp khó khăn ở bài tập như sau:
Mình đã làm được 4 câu đầu, còn 2 câu cuối thì thấy hơi chật vật và chưa tìm ra hướng giải quyết.
Mọi người xem giúp mình 4 câu kia mình đã làm tối ưu chưa ạ, với cả giúp mình 2 câu cuối với. Mình cảm ơn.
Đây là phần code 4 câu đầu của mình
#include <stdio.h>
int main(){
int n,i,x,S0=1,gt=1; //gt la giai thua dung cho S2
float S1=0,S2,S3,tu,mau=1;
printf("Nhap n: ");
scanf("%d",&n);
printf("Nhap x: ");
scanf("%d",&x);
//In ra S0 = n! = ...
for(i=1;i<=n;i++){
S0*=i;
}
printf("S0 = %d! = %d",n,S0);
//In ra S1 = 1 + 1/2 + ... + 1/n
for(int i = 1; i <= n; i++){
S1 = S1 + 1.0 / i;
}
printf("\nS1 = 1 + 1/2 + ... + 1/n = %.2f", S1);
//In ra S2 = 1 + 1/2! + ... 1/n!
for(i=1;i<=n;i++){
gt*=i;
S2=S2+1.0/gt;
}
printf("\nS2 = 1 + 1/2! + ... 1/n! = %.2f",S2);
//In ra S3 = 1 + x + x2/2! + x3/3! + ... xn/n!
for(i=2;i<=n;i++){
tu=x*i;
mau=mau*i;
S3=S3+tu/mau;
}
printf("\nS3 = 1 + x + x2/2! + x3/3! + ... + xn/n! = %.2f",S3+1+x);
}