Arama butonu
Bu konudaki kullanıcılar: 1 misafir
3
Cevap
829
Tıklama
0
Öne Çıkarma
C Programlama Dilinde İntegral Hesabı
V
7 yıl
Teğmen
Konu Sahibi

Merhaba arkadaşlar.Başlıkta olduğu gibi bir programla uğraşmaktayım.Bunu daha da geliştirmeyi düşünüyorum ama tabiki de eksikliklerim ve hatalarım var.Bunları düzeltmeme yardımcı olursanız sevinirim.

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include <conio.h>
#include <math.h>
#define N 1000

double f(double x);
double integral(int a, int b);

int main() {
double c;
c = integral(0,5);
printf("%lf The result of riemann sums.", c);
getch();
return 0;
}
double f(double x)
{
return x*x;
}
double integral(int a, int b)
{
int i; double sum; double y=0; double x;
double h;
h = (b - a) / N;
for (i = 1; i < N; i++)
{
x = x + i;
y = sqrt(x);
y+=(a + h*i);
sum= h*y;
}
f(x);
return 0;
}



H
7 yıl
Yüzbaşı

Daha önce simpson ile yapmıştım, riemann ile hiç denemedim fakat kodunuzda x'e başlangıç değeri vermemişsiniz.Düzelte düzelte doğruyu bulabileceğinize eminim.



M
7 yıl
Er

Başlangıç değerimizle bitiş değerimizin arasını çok fazla sayıda dikdörtgene bölüyoruz ve çok fazla sayıda olan bu dikdörtgenlerin alanlarını topluyoruz. Böylece gerçeğe en yakın sonucu buluyoruz. Dikdörtgenlerin taban genişlikleri her seferinde "artis" diye bahsettiğim çok küçük bir sayı oluyor. Dikdörtgenlerin yükseklik değeri ise bulunulan x noktasının fonksiyondan return edilen değeri oluyor.

#include <stdio.h>
#include <stdlib.h>

double f(double x){
return x*x;
}

double integral(double baslangic,double son){
int cokBuyukSayi=100000,i;
double artis=(son-baslangic)/cokBuyukSayi;
double toplam=0;

for(i=0;i<cokBuyukSayi;i++){
toplam+=artis*f(baslangic+i*artis);
}

return toplam;
}

int main(){
double sonuc=integral(0,5);
printf("x kare'nin 0'dan 5'e integrali : %lf",sonuc);

return 0;
}





< Bu mesaj bu kişi tarafından değiştirildi meteoncu -- 6 Nisan 2017; 22:13:33 >
Bu mesaja 1 cevap geldi.
V
7 yıl
Teğmen
Konu Sahibi

Yaptığınızı anladım çok teşekkür ederim.Düşündüğüm işlemi programa bu şekilde aktaramamıştım.



< Bu ileti mobil sürüm kullanılarak atıldı >


Bu mesajda bahsedilenler: @meteoncu
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.