C Dili Fonksiyon çağırma

calem2

Üye
24 Haz 2010
103
0
/*
Program kullanıcıdan derece cinsinden bir değer ister onu radyana çevirir cosinüs değerini bulup ekrana yazdırır.
Fakat sonuç doğru çıkmıyor. Bu şekilde çıkıyor sonuç 1.#INF00
*/
#include<stdio.h>
#include<math.h>
#define pi 3.141592
int faktoriyel(int sayi)
{
int sonuc = 1,i;
for(i=sayi;i>0;i--){

sonuc*=i;
}
return sonuc;
}

int main( **** )
{
printf("Lutfen cosunusu hesaplanacak dereceyi gir.");
float x,cos=0;
int i,isaret=-1;
scanf("%f",&x);
x = (x*pi)/180;
for(i=0;i<50;i++){
cos += (pow(isaret,i)*pow(x,2*i))/(faktoriyel(2*i));
}
printf("%.3f",cos);
return 0;
}
 
Son düzenleme:

KaraPapak36

Katılımcı Üye
28 Nis 2016
657
1
Kardeş baktımda bence denkleminde yazarken bi yanlışlıkvar Cos() denklemini yazarsan belki yardımcı olabilirim.

Kod:
#include<stdio.h>
#include<math.h>
#define pi 3.141592

int fackto(double a)
{
	double b=0.0,fackt=1.0;
	
	for(b=1;b<a;b++)
	{
		fackt =fackt*b;
	}	
	return fackt;
}

int main()
{
	printf("Lutfen cosununu hesaplanacak dereceyi gir: ");
	double x,cos=0.0,isaret=1.0;
	double i;
	scanf("%f",&x);
	x = x / (2*pi);
	
	for(i=0;i<50;i++)
	{
		cos += (pow(isaret,i)*pow(x,2*i))/(fackto(2*i));
	}
	
	printf("%f\n\n",cos);	
	
	return 0;
}
 

KaraPapak36

Katılımcı Üye
28 Nis 2016
657
1
kardeşim bu aralar pek uğraşamıyorum ama senin programı güzel yazmışsın biraz daha dikkat edersen olur. int olarak tanımladıklarını float olarak tanımla birde for da 1'er 1'er arttırmak yerine 2 şer 2 şer arttır. onun dışında formülde açıyı radyan cinsinden kullanıyorsun ve fackt fonksiyonuna ilk gidiş hariç her gidişinde 0 değeri döndürüyor ona bi bak.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.