| Autor | Zpráva | ||
|---|---|---|---|
| Networker Profil |
Ahoj,
měl bych na Vás prosbu ohledně kódu psaném v DEV CPP (DEV C++) Potřebuji ve výsledku udělat výpis hodnot ze vzorečku: 20(summ)k=0 for 0.1(pow k) / k! Pro faktoriál mám toto: #include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(){
float k, fakt;
printf("Number k: ");
scanf("%f", &k);
fakt = 1;
while (k >= 1 ){
fakt = fakt * k;
k = k - 1;
}
printf("Faktorial: %f \n", fakt);
system("pause");
return(0);
} Pro a na "kátou" #include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(){
float a, k, i, end;
printf("Number k: ");
scanf("%f", &k);
a = 0.1;
while (k >= 1 ){
end = 1*pow(a, k);
printf("Number %.0f: %f \n", k, end);
k = k - 1;
}
system("pause");
return(0);
} Akorát mám následující problémy: 1. při faktoriálu třeba těch 20 mi to zobrazí špatné číslo... 2. Za desetinnou čárkou se mi zobrazuje jen pár míst (potřeboval bych hodnot spoustu) No a teď to dát nějak dohromady a udělat sumu :-) V JS se mi to nepovedlo, tak to zkouším v C++ ... |
||
| candiess Profil |
#2 · Zasláno: 29. 9. 2014, 21:14:24
Networker:
„V JS se mi to nepovedlo, tak to zkouším v C++ ...“ Mohl by jsi zde postnout to "nepovedené" dílo? Rád bych se na to mrkl |
||
| Joker Profil |
Networker:
„V JS se mi to nepovedlo, tak to zkouším v C++ ...“ Původní vlákno: Výpočet sumy v JS Hm: „Nechápu algoritmus - zkusím jiný programovací jazyk“. Překvapivě ten přístup moc nefunguje. Co se týká kódu, nechápu, proč k a fakt jsou typu float, když faktoriál se počítá jen z celých čísel a výsledkem je taky celé číslo.
Navíc použití méně přesného float povede leda k tomu, že v nějaké chvíli vznikne zaokrouhlovací chyba a dalším násobením se ještě rozroste. Což je tipuji důvod problému 1. „2. Za desetinnou čárkou se mi zobrazuje jen pár míst (potřeboval bych hodnot spoustu)“ C++ float je přesný zhruba na 7 desetinných míst, double na 15, výpočty v plovoucí čárce v JS a PHP asi na 12-13 platných cifer. |
||
| Jan Tvrdík Profil |
#4 · Zasláno: 30. 9. 2014, 00:59:43
Joker:
„double na 15, výpočty v plovoucí čárce v JS a PHP asi na 12-13 platných cifer.“ To je trochu divný ne? Vždyť PHP i JS používají naprosto stejný double jako C++. Nebo se mýlím? |
||
|
Časová prodleva: 11 let
|
|||
0