arkadaşlar ekdeki resimde 3. soru da yardım istiyorum varmı aramızda anlayan bu tür konulardan bir algoritma yazdım ama sonucunu sıfır alıyorum
int main()
{
double x;
printf("giriniz x:");scanf("%lf",&x);
printf("%lf ",fc(x));
return 0;
}
double fc(double x)
{
double b=0;
for (int i = 1; i <= 2; i++)
b=(1/2*i) * pow (1/x+1),2*i);
return b;
}
[eklenti yönetici tarafından silindi]
kardes
b=(1/2*i) .....
kismi
b=(1/2.0*i) ....
olacak. Yoksa o bolme isareti tamsayili bolme yapar ve sonuc hep sifir olur. Ayrica bu tur basit hatalari kendin de bulabilmelisin iyi bir programci olmak icin. Mesela her satirdan sonra printf ile degiskenleri ekrana bastir (en amiyane cozum) veya debugger kullan.(daha profesyonel cozum)
Alıntı yapılan: unixmania - 26 Aralık 2018 - 11:42:18
kardes
b=(1/2*i) .....
kismi
b=(1/2.0*i) ....
olacak. Yoksa o bolme isareti tamsayili bolme yapar ve sonuc hep sifir olur. Ayrica bu tur basit hatalari kendin de bulabilmelisin iyi bir programci olmak icin. Mesela her satirdan sonra printf ile degiskenleri ekrana bastir (en amiyane cozum) veya debugger kullan.(daha profesyonel cozum)
b=(1/2*i) * pow (1/x+1),2*i);
Burada yapmak istediğin şey nedir ?
pow fonksiyonu 2 tane double değer alır ve bu değerleri girdiğinde ilk sayının ikinci sayı kuvvetini alır girmiş olduğunuz yazmış olduğunuz yanlış
Bu arada fonksiyon main fonksiyonundan önce yazılmalıdır program çalıştırıldığında main fonksiyonu çalışır fc() bilinmiyor içerisinde ne olduğu.