cmath-otsaketiedosto: pow, sqrt, abs, round
Käytä matematiikan vakiokirjastoa yleisiin matemaattisiin operaatioihin.
cmath-otsaketiedosto: pow, sqrt, abs, round on ilmainen C++ Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu C++ Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. C++ Academy-kurssilla on yhteensä 4 oppituntia.
<cmath>-otsikkotiedosto
Standardit matemaattiset funktiot sijaitsevat otsikkotiedostossa <cmath>. Useimmat hyväksyvät parametrina ja palauttavat arvon tyyppiä double; myös tyyppien float ja long double ylikuormitukset ovat käytettävissä.
Potenssit: pow
std::pow(base, exp) korottaa luvun base potenssiin exp. Palauttaa tyypin double.
#include <cmath>
double x = std::pow(2.0, 10); // 1024.0
double y = std::pow(9.0, 0.5); // 3.0Neliö- ja kuutiojuuret: sqrt ja cbrt
sqrt palauttaa neliöjuuren ja cbrt kuutiojuuren.
double s = std::sqrt(2.0); // 1.414...
double c = std::cbrt(27.0); // 3.0Itseisarvo: abs
std::abs toimii sekä kokonaisluku- että liukulukutyypeillä. Käyttäkää kokonaisluvuille otsikkotiedostoa <cstdlib> tai suoraan funktiota std::abs.
#include <cmath>
#include <cstdlib>
int i = std::abs(-5); // 5
double d = std::abs(-3.14); // 3.14Pyöristys: floor, ceil, round ja trunc
Neljä pyöristystapaa:
floor— kohti miinusääretöntäceil— kohti plusääretöntäround— lähimpään kokonaislukuun, puolikkaat nollasta poispäintrunc— kohti nollaa
Pyöristyksen esimerkkejä
Katso, miten ne eroavat toisistaan positiivisilla ja negatiivisilla luvuilla.
std::cout << std::floor(3.7) << "\n"; // 3
std::cout << std::ceil(3.2) << "\n"; // 4
std::cout << std::round(3.5) << "\n"; // 4
std::cout << std::trunc(-3.7) << "\n"; // -3
std::cout << std::floor(-3.7) << "\n"; // -4Liukulukujen modulo: fmod
Operaattori % toimii vain kokonaisluvuilla. Käyttäkää liukuluvuille funktiota std::fmod.
double r = std::fmod(10.5, 3.0); // 1.5Logaritmit
Logaritmeja on kolme muotoa:
std::log— luonnollinen logaritmi (kanta e)std::log10— kantaluku 10std::log2— kantaluku 2 (C++11)
Eksponenttifunktio: exp
std::exp(x) laskee arvon e^x. Se on luonnollisen logaritmin käänteisfunktio.
double e = std::exp(1.0); // 2.718...
double x = std::log(e); // 1.0Trigonometria
sin, cos, tan ja niiden käänteisfunktiot (asin, acos, atan). Kaikki käyttävät kulmayksikkönä radiaaneja.
double y = std::sin(M_PI / 2); // 1.0
// Convert degrees to radians: deg * M_PI / 180Hyödyllisiä vakioita (C++20)
C++20 lisäsi nimetyt matemaattiset vakiot otsikkotiedostoon <numbers>: std::numbers::pi, e, sqrt2 ja muita.
#include <numbers>
std::cout << std::numbers::pi; // 3.14159...
std::cout << std::numbers::e; // 2.71828...Pikatarkistus
Mikä funktio pyöristää arvon -3.7 arvoon -4?
Kertaus
<cmath> sisältää potenssit, juuret, itseisarvon, pyöristyksen, modulon, logaritmit, eksponenttifunktiot ja trigonometriset funktiot. Trigonometriset funktiot käyttävät radiaaneja. C++20 lisäsi otsikkotiedoston <numbers> nimettyjä vakioita, kuten std::numbers::pi, varten.
Opi C++ tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 51
- Oppitunnit
- 203
Usein kysytyt kysymykset
Onko oppitunti ”cmath-otsaketiedosto: pow, sqrt, abs, round” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa C++ Academy-oppimispolun 3 oppituntia, myös oppitunnin “cmath-otsaketiedosto: pow, sqrt, abs, round”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. C++ Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”cmath-otsaketiedosto: pow, sqrt, abs, round”?
Käytä matematiikan vakiokirjastoa yleisiin matemaattisiin operaatioihin. Harjoittelet C++ Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni C++ Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin C++ Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.
Kuinka kauan ”cmath-otsaketiedosto: pow, sqrt, abs, round”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä C++ Academy-oppitunnilla?
Kyllä. Jokainen C++ Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Kokonaisluku- ja liukulukutyypit
- cmath-otsaketiedosto: pow, sqrt, abs, round
- Satunnaisluvut random-otsaketiedostolla
- Lukuarvojen rajat ja ylivuotokäyttäytyminen