Új hozzászólás Aktív témák
-
Dirty_Pio
csendes tag
válasz
Jester01
#943
üzenetére
Szoval ha ki szeretned szamitani az Euler-fele szam egyik x-ik hatvanyat( e^x -t ), akkor az a dolgod, hogy veszed a Taylor fele felbontasat a szamnak, ami lenyegebe a megoldas: e^x=1+e^1/1!+e^2/2!+e^3/3!+... egeszen egy megfeleloen nagy szamig. Es magyarazas kozbe ra is jottem mi is a problema, azaz en nem valasztottam eleg nagy szamot azaz enm eleg pontos az osszegem, mivel az elso x db szamot vettem igy ha mondjuk az e^4-t szeretnem kiszamolni csak az osszeg elso 4 tagjat veszem, es a kovetkezo szamok nem eleg kicsik ahhoz, hogy lehanyagolhato legyen. A kodban a kovetkezo javitasokat eszkozoltem :
#include <stdio.h>
int ex(int n, int x)
{
if (n>0) return x*ex(n-1,x);
else return 1;
}
int fact(int n)
{
if (n>0) return n*fact(n-1);
else return 1;
}
float xex(int n, int x)
{
float q;
if (n>0) {q=(float)ex(n,x)/fact(n);
// printf("%f \n",q);
return q+xex(n-1,x);
}
-->>else return 0;<<-- mivel igy ketszer szamolna a 0 faktorialist h
}
int main(void)
{
int x,n;
scanf("%d",&x);
->>printf("%f",xex(32,x)); <<- ennyit bit meg a float vagy a memoria... ha nagyobb pontossaggal probalkozok akkor errort kapok. Mondjuk igy sem olyan pontos a szamitas, mint amilyent a google mutat, de azt hiszem nincs mar mas hiba. Ha ti talaltok szoljatok!
system("pause");
return 0;
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- HIBÁTLAN iPhone 14 128GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3159
- GYÖNYÖRŰ iPhone 12 Pro Max 128GB Graphite -1 ÉV GARANCIA -Kártyafüggetlen, MS3951, 100% Akkumulátor
- Apple iPhone 15 Pro Max 256 GB White Titanium 1 év Garancia Beszámítás Házhozszállítás
- Eladó ÚJ Hoco HD Wi-Fi SIM Android A10 10.1"tablet / 24 hó jótállás
- HP EliteOne 800 G5 All-in-One i5-8500 16GB 512GB 23.8" Érintőkijelző!! 1 év garancia
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


