Trần Nhật Anh
(Trần Nhật Anh)
Điều hành viên
Mọi người ơi, em có một đề bài: Tính tích phân từ a1 đến a2 của x^2+1 bằng cách chia thành n hình chữ nhật nhỏ.
Sau đây là bài của em:
Bài này có chạy và ra được kết quả.
Sau đây là bài của bạn em:
Bài này cũng chạy nhưng kết quả bao giờ cũng bằng 0. Mọi người xem giúp em xem lí do tại sao? em chẳng thấy 2 bài này có gì khác nhau cả.
Sau đây là bài của em:
Mã:
// Bai tap so 4
// Nhap tu ban phim 2 so thuc a1, a2 va so nguyen n
// Tinh tich phan tu a1 den a2 cua (x^2+1)dx
//bang cach tinh dien tich cua n chu nhat nho
#include<math.h>
#include<conio.h>
#include<stdlib.h>
#include<stdio.h>
float s,a1,a2,a;
int i,n;
int main(void)
{
printf("Tinh tich phan tu a1 den a2 cua (x^2+1)dx");
printf("\na1="); scanf("%f",&a1);
printf("a2="); scanf("%f",&a2);
printf("n="); scanf("%i",&n);
if(n<1)
printf("ban can nhap n>=1");
else
{
s=0;
a=a1;
for(i=1;i<=n;i++)
{
a=a+(a2-a1)/n;
s=s+((a2-a1)/n)*(a*a+1);
}
printf("Tich phan la:%f",s);
}
getch();
return 1;
}
Sau đây là bài của bạn em:
Mã:
#include<math.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
float x,y,a1,a2;
int i,n;
int main(void)
{
printf("\n Nhap a1="); scanf("%f",&a1);
printf("\n Nhap a2="); scanf("%f",&a2);
printf("\n Nhap n="); scanf("%f",&n);
x=a1;
for(i=1;i<=n;i++)
{
x=x+(a2-a1)/n;
y=y+((a2-a1)/n)*(x*x+1);
}
printf("\n Tich phan y=%f",y);
getch();
return 1;
}