logo

Virtatoiminto C/C++:ssa

Kun annetaan kaksi luvun kantaa ja eksponentti, C++ tai C pow()-funktio löytää x:n korotettuna y:n potenssiin, ts. xja . Periaatteessa C/C++:ssa eksponenttiarvo lasketaan käyttämällä pow()-funktiota. The pow()-funktio käytetään laskemaan luvun potenssi C/C++:ssa. Se ottaa kaksinkertaisena tulona ja palauttaa kaksinkertaisena lähtönä.

Meidän on käytettävä #sisältää C/C++:ssa käyttääksesi pow()-funktiota C/C++-ohjelmassamme.



Pow()-funktion syntaksi

double pow  (double x, double y);>

pow()-funktion parametrit

Tämä menetelmä vaatii vain kaksi argumenttia:

    x: liukuluku perusarvo y: liukuluku tehoarvo

pow()-funktion palautusarvo

  • Potenssifunktio palauttaa x:n liukulukuarvon korotettuna potenssiin y ( xja ).

Esimerkki pow()-funktiosta

 Input: 2.0, 5.0 Output: 32.00 Explanation:  pow(2.0, 5.0) executes 2.0 raised to the power 5.0, which equals 32 Input: 5.0, 2.0 Output: 25.00 Explanation:  pow(5.0, 2.0) executes 5.0 raised to the power 2.0, which equals 25>

C








// C program to illustrate> // power function> #include> #include> int> main()> {> >double> x = 6.1, y = 4.8;> >// Storing the answer in result.> >double> result =>pow>(x, y);> >printf>(>'%.2lf'>, result);> >return> 0;> }>

>

>

C++




// C++ program to illustrate> // power function> #include> using> namespace> std;> int> main()> {> >double> x = 6.1, y = 4.8;> >// Storing the answer in result.> >double> result =>pow>(x, y);> >// printing the result upto 2> >// decimal place> >cout << fixed << setprecision(2) << result << endl;> >return> 0;> }>

>

>

Lähtö

5882.79>

Aika monimutkaisuus: O(log(n))

Aputila: O(1)

Pow()-funktion työskentely kokonaislukujen kanssa

Pow()-funktio ottaa 'double' argumentiksi ja palauttaa 'double'-arvon. Tämä funktio ei aina toimi kokonaisluvuille. Yksi tällainen esimerkki on pow(5, 2). Kun se on määritetty kokonaisluvulle, se tuottaa 24 joillakin kääntäjillä ja toimii hyvin joillakin muilla kääntäjillä. Mutta pow(5, 2) ilman kokonaislukumäärää tulostaa 25.

Toinen tapa voidaan käyttää pyöristää funktio määrittääksesi sen jollekin kokonaislukutyypille.

  • Tämä johtuu siitä, että 52(eli 25) voidaan tallentaa numerolla 24.9999999 tai 25.0000000001, koska palautustyyppi on kaksinkertainen. Kun 25.0000000001 on määritetty arvoon int, se muuttuu 25:ksi, mutta 24.9999999 antaa tulosteen 24.
  • Voit voittaa tämän ja tulostaa tarkan vastauksen kokonaislukumuodossa lisäämällä tulokseen 1e-9 tai 0,000000001 ja kirjoittamalla sen int esim. (int)(pow(5, 2)+1e-9) antaa oikean vastauksen(25, yllä olevassa esimerkissä), kääntäjästä riippumatta.

Esimerkki 1: C/C++ Ohjelma, joka havainnollistaa pow()-funktion käyttäytymistä kokonaislukujen kanssa.

C++


lateksi fonttikoot



// C++ program to illustrate> // working with integers in> // power function> #include> using> namespace> std;> int> main()> {> >int> a, b;> >// Using typecasting for> >// integer result> >a = (>int>)(>pow>(5, 2) + 0.5);> >b = round(>pow>(5,2));> >cout << a << endl << b ;> >return> 0;> }>

>

>

C




// C program to illustrate> // working with integers in> // power function> #include> #include> int> main()> {> >int> a, b;> >// Using typecasting for> >// integer result> >a = (>int>)(>pow>(5, 2) + 1e-9);> >b = round(>pow>(5,2));> >printf>(>'%d %d'>, a, b);> >return> 0;> }>

>

>

Lähtö

25 25>

Aika monimutkaisuus: O(log(n))
Aputila: O(1)