NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.

Diskuze: N-ta mocnina cisla - algoritmus

V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Filip
Člen
Avatar
Filip:1.6.2018 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.6.2018 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.