Liczba e
Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Zarejestruj się!

Liczba e

AutorWiadomość
Temat założony przez niniejszego użytkownika
Liczba e
» 2009-07-31 22:02:23
Postanowiłem napisac program liczący liczbę e wdł. wzoru e=1+1/1!+1/2!....
Wydawało mi się że wszystko jest ok, no ale program nie działa jak powinien. Nie wiedzialem gdzie zrobiłem błąd wieć dopisalem wyświetlanie wyniku każdej operacji żeby zobaczyć gdzie program źle liczy. Moje pytanie brzmi dlaczego a jest równe 0 cały czas? Jak to naprawić?

C/C++
#include <iostream>
#include <cmath>
using namespace std;
int silnia( int n )
{
    switch( n )
    {
    case 1:
        return 1;
        break;
    default:
        return n * silnia( n - 1 );
    }
}


int main()
{
    long double a, b, c = 0, d;
    int z = 1, g, x, liczba = 10;
    for( x = 2; x < liczba; x++ )
    {
        b = c;
        g = silnia( x );
        cout << g << endl;
        a = 1 / g;
        cout << a << endl;
        c = b + a;
        cout << c << endl;
    }
    d = 2 + c;
    cout << d;
    getchar();
}
P-8920
» 2009-07-31 22:17:33
a=1/g;
Pomyślałeś, że w działaniach na liczbach całkowitych 1/x, gdzie |x| != 1, zawsze wynosi 0? Zrób
a = 1.0 / g;
Swoją drogą, pięknie napisałeś silnię. Rozumiem, że pętle zabrali?
P-19108
Temat założony przez niniejszego użytkownika
» 2009-07-31 22:21:27
Mój błąd, dzięki za pomoc:)
P-8922
« 1 »
 Strona 1 z 1