Új hozzászólás Aktív témák
-
SKFA
csendes tag
Üdv ismét!
Nagyjából sikerült megérteni a feladatot, a következőképpen hangzana:Ez a feladat szövege: Az e kiszámolása (ex=1+x+x2/2!+x3/3!+...) adott pontossággal (input). Az exp() nem használható .
Input: pontosság (>10E-15)
Output: Az e a kért pontossággal.Ha jól értelmezem, akkor
ha input=7, akkor ezt a műveletsort hajtaná végre:
e=2+(1/2!)+(1/3!)+(1/4!)+(1/5!)+(1/6!)+(1/7!), és kiírná e-t.
Ha input=3, akkor ezt:
e=2+(1/2!)+(1/3!), és kiírná e-t.#include <stdio.h>
#include <math.h>
int faktorialis(int n){
if(n==1) return 1;
return (n * faktorialis(n-1));
}
int eszam(){
int h, p=0, i=0;
double e=2.0;
printf("Adja a meg a kivant pontossagot!\n");
scanf("%d", &p);
if (p<0)
printf("Csak pozitiv egesz szam fogadhato el!");
else
for (i=2; i<p; i++) {
e+=1/faktorialis(p);
}
return e;
}
int main(){
printf("\nVegeredmeny:%e",eszam());
return 0;
}Idáig jutottam, már abszolút nincs ötletem hogyan tovább. Így a program nem működik, 1.6-ot ad eredményül, többek között ezt sem tudom miért. Estére viszont be kellene adnom, különben csúszok egy évet.
Valaki tud, segítsen. Előre is köszönöm! -
SKFA
csendes tag
válasz
Jester01
#208
üzenetére
Köszönöm a segítséget utólag, és előre is!

Őszintén szólva annyira nem vágom a programozást hogy így kivitelezzem, tanárnak is valószínűleg eleg lenne egy egyszerűbb megoldás.
Ha jól értem a pontosságnak nem sok köze van a tizedesjegyek számához, sokkal inkább a az x^n/x! elvégzett műveletek számához.
-
SKFA
csendes tag
Üdvözlet!
Nemrég kaptam egy beadandó feladatot, amit sehogysem bírok megfejteni....
Így hangzik: (e^x=1+x+(x^2/2!)+(x^3/3!)+(X^4/4!)... ) adott pontossággal (input). Azb exp() nem használható.
Input pontosság: (>10E-15)
Output: Az e a kért pontossággal.Egyáltalán mit jelentene ennél a feladatnál a pontosság? Input=x?
Ameddig eljutottam:#include <stdio.h>
#include <math.h>
int main (){
int p, i=0;
double e;
printf("Adja a meg a kivant pontossagot!\n");
scanf("%d", &p);
if (p<0)
printf("Csak pozitiv egesz szam fogadhato el!");
else
for (i=0; i<p; i++){
e=1+p+pow(p,i);}
printf("%lf", e);
return 0; }Van esetleg valakinek valamiféle ötlete a megoldáshoz?
Előre is köszönöm!
Ú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!
- Eladó/Lenovo X240 Ultrabook/I5-4200U/8GB DDR3/Win 10Home/12,5" FHD/ !ÉRINTŐKÉP!/!!!
- Bomba ár! Lenovo ThinkPad T14s G2 - i7-11GEN I 16GB I 1TSSD I 14" FHD Touch I W11 I Cam I Gari!
- Bomba ár! Lenovo ThinkPad L460 - Intel 3955U I 8GB I 128GB SSD I 14" FHD I Cam I W10 I Garancia!
- Bomba ár! Lenovo IdeaPad V15-IWL: i5-8GEN I 8GB I 256SSD I 15,6" FHD I Cam I W11 I Garancia!
- Bomba ár! Lenovo V155-15API - Ryzen 5 I 8GB I 512SSD I 15,6" FHD I Radeon I HDMI I Cam I W11 I Gari
- HIBÁTLAN iPhone 12 mini 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3818, 100% Akksi
- BESZÁMÍTÁS! GIGABYTE B450M R7 2700X 16GB DDR4 512GB SSD RX 5700 XT OC 8GB GameMax STORM Antec 550W
- REFURBISHED és ÚJ - Lenovo ThinkPad 40AS USB-C Dock Gen2 (akár 3x4K felbontás)
- HP ZBook Firefly 14 i7-1165G7 16GB 1000GB Nvidia Quadro T500 4GB 14" FHD 1 év garancia
- Razer gamer szék
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest



