Diskuze: N-ta mocnina cisla - algoritmus

C a C++ C a C++ N-ta mocnina cisla - algoritmus

Aktivity (1)
Avatar
Filip
Člen
Avatar
Filip:1. června 23:30

Ahoj. mam za ukol vytvořit algoritmus na výpočet N-té mocniny čísla X. N je celé číslo(může být i záporne), a X je taktéž cele cislo (muze byt take zaporne). Vytvoril jsem ho následovně:

double VypocetMocniny(int zadane_cislo, short mocnina)
{
        int vysledek = zadane_cislo;

        if (mocnina > 0)
        {
                for (unsigned short i = 1; i < mocnina; i++)
                {
                        vysledek *= zadane_cislo;
                }

                return vysledek;
        }

        if (mocnina < 0)
        {
                for (short i = -1; i > mocnina; i--)
                {
                        vysledek *= zadane_cislo;
                }

                return 1 / (double)vysledek;
        }

        return 1;
}

int main()
{
        int zadane_cislo;
        short mocnina;

        cin >> zadane_cislo >> mocnina;
        cout << zadane_cislo << " na " << mocnina << " = " << VypocetMocniny(zadane_cislo, mocnina) << endl;

        cin.get(); cin.get();
    return 0;
}

Jde mi predevsim o ty promenne v te metode. Nevim, zda je lepsi vytvorit promennou "vysledek" rovnou double. Nebo vytvorit dve metody, kde 1. bude vracet pouze kladne mocniny, tedy int a 2. zaporne, tedy double. Samozrejme bych to osetril uvnitr main() podminkou, kterou metodu volat.
Dekuji moc

 
Odpovědět 1. června 23:30
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.