Matematiikka#
Johdanto#
C+±standardikirjasto tarjoaa perusmatemaattisia toimintoja kaavalla <cmath>, jota VEXcode IQ tukee. Näiden funktioiden avulla voit suorittaa yleisiä matemaattisia laskutoimituksia, kuten trigonometriaa, pyöristämistä, potenssiin korottamista ja paljon muuta.
Käytä niitä sijaintien, kulmien ja etäisyyksien laskemiseen tai asteiden ja radiaanien välisten muunnosten suorittamiseen.
Alla on luettelo käytettävissä olevista matemaattisista funktioista, vakioista ja apuohjelmista:
Yleisiä matemaattisia funktioita – Yleisiä matemaattisia työkaluja.
abs– Palauttaa luvun itseisarvon.fmin– Palauttaa pienimmän syötearvoista.fmax– Palauttaa syötetyistä arvoista suurimman.pow– Korottaa luvun potenssiin.
Vakiot – Ennalta määritetyt arvot välillä <cmath>
Trigonometria – Laske kulmia ja sivujen välisiä suhteita.
sin– Kulman sini radiaaneina.cos– Kulman kosini radiaaneina.tan– Kulman tangentti radiaaneina.atan– Radiaaneina annetun arvon arcustangentti.atan2– y/x:n arcustangentti radiaaneina ottaen huomioon kvadrantin.asin– Radiaaneina annetun arvon arcussini.acos– Radiaaneina annetun arvon arkuskosini.
Pyöristäminen ja itseisarvo – Säädä tarkkuutta tai suuntaa.
ceil– Pyöristää ylöspäin lähimpään kokonaislukuun.floor– Pyöristää alaspäin lähimpään kokonaislukuun.trunc– Poistaa desimaaliosan.
Eksponentit ja logaritmit – Potenssi-, juuri- ja logaritmilaskutoimitukset.
sqrt– Palauttaa neliöjuuren.exp– Laskee e:n potenssiin x.log– Luonnollinen logaritmi (kantaluku e).log10– Kymmenkantainen logaritmi.
Liukulukuoperaatiot – Tarkista tai jaa liukulukujen arvot.
Yleisiä matemaattisia funktioita#
abs#
Palauttaa luvun itseisarvon poistaen kaikki negatiiviset etumerkit.
Available Functions1 — Palauttaa kokonaisluvun itseisarvon.
int abs( int x );
Parameters2 — Palauttaa kaksinkertaisen luvun itseisarvon.
double abs( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Kokonaisluku tai kaksinkertainen luku. |
Palauttaa syötteen itseisarvon samantyyppisenä.
Examples// Display the absolute value of -10
Brain.Screen.print("%d", abs(-10));
// Output: 10
fmin#
Palauttaa kahdesta arvosta pienemmän kaksinkertaisena yksikkönä.
Available Functionsdouble fmin( double value1, double value2 );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Ensimmäinen vertailtava arvo. |
|
|
Toinen vertailtava arvo. |
Palauttaa luvun double joka edustaa kahdesta syötearvosta pienempää.
// Display the lower of two values
Brain.Screen.print("%f", fmin(7, 4));
// Output: 4.000000
fmax#
Palauttaa kahdesta arvosta suuremman kaksinkertaisena yksikkönä.
Available Functionsdouble fmax( double value1, double value2 );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Ensimmäinen vertailtava arvo. |
|
|
Toinen vertailtava arvo. |
Palauttaa luvun double joka edustaa suurempaa kahdesta syötearvosta.
// Display the higher of two values
Brain.Screen.print("%f", fmax(7, 4));
// Output: 7.000000
pow#
Palauttaa luvun korotettuna potenssiin kaksinkertaisena.
Available Functionsdouble pow( double base, double exponent );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Perusnumero. |
|
|
Eksponentti. |
Palauttaa luvun double joka edustaa eksponentin potenssiin korotettua kantalukua.
// Display 2 to the power of 3
Brain.Screen.print("%f", pow(2, 3));
// Output: 8.000000
Vakiot#
Vakiot ovat ennalta määritettyjä arvoja, jotka pysyvät kiinteinä projektin aikana. Niitä voidaan käyttää laskutoimituksissa ilman erillistä määrittelyä tai kohdistamista.
M_PI#
M_PI antaa matemaattisen vakion π, ympyrän kehän ja sen halkaisijan suhteen.
const double M_PI;
Tällä vakiolla ei ole parametreja.
Return ValuesPalauttaa matemaattisen vakion π muodossa double.
// Calculate the area of a circle with radius 5
double area = M_PI * 5 * 5;
Brain.Screen.print("%f", area);
// Output: 78.539816
M_E#
Matemaattinen vakio e (Eulerin luku), luonnollisen logaritmin kantaluku.
Available Constantsconst double M_E;
Tällä vakiolla ei ole parametreja.
Return ValuesPalauttaa matemaattisen vakion e muodossa double.
// Calculate e raised to the power of 2
double result = pow(M_E, 2);
Brain.Screen.print("%f", result);
// Output: 7.389056
Trigonometria#
sin#
Laskee kulman sinin radiaaneina ja palauttaa kaksinkertaisen arvon.
Available Functionsdouble sin( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Radiaaneina ilmaistua kulmaa edustava kaksoisluku. |
Palauttaa luvun double joka edustaa kulman siniä.
// Convert 30 degrees to radians
double radians = 30 * M_PI / 180.0;
// Display the sine of 30 degrees
Brain.Screen.print("%f", sin(radians));
// Output: 0.500000
cos#
Laskee kulman kosinin radiaaneina ja palauttaa arvon kaksinkertaisena.
Available Functionsdouble cos( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Radiaaneina ilmaistua kulmaa edustava kaksoisluku. |
Palauttaa luvun double joka edustaa kulman kosinia.
// Convert 60 degrees to radians
double radians = 60 * M_PI / 180.0;
// Display the cosine of 60 degrees
Brain.Screen.print("%f", cos(radians));
// Output: 0.500000
tan#
Laskee kulman tangentin radiaaneina ja palauttaa kaksinkertaisen arvon.
Available Functionsdouble tan( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Radiaaneina ilmaistua kulmaa edustava kaksoisluku. |
Palauttaa luvun double joka edustaa kulman tangenttia.
// Convert 45 degrees to radians
double radians = 45 * M_PI / 180.0;
// Compute tangent of 45 degrees
Brain.Screen.print("%f", tan(radians));
// Output: 1.000000
atan#
Laskee luvun käänteistangentin (arkustangentin) ja palauttaa radiaaneina ilmaistun kulman kaksinkertaisen arvon.
Available Functionsdouble atan( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Kaksinkertainen arvo. |
Palauttaa luvun double joka edustaa kakustangenttia radiaaneina.
// Calculate the arc tangent of 1 in degrees
double degrees = atan(1.0) * 180.0 / M_PI;
Brain.Screen.print("%f", degrees);
// Output: 45.000000
atan2#
Laskee y/x-funktion käänteistangentin pääarvon ja palauttaa kulman radiaaneina esittävän kaksoisluvun.
Available Functionsdouble atan2( double y, double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Y-koordinaattia edustava kaksoisarvo. |
|
|
X-koordinaattia edustava kaksoisluku. |
Palauttaa luvun double joka edustaa y/x-koordinaatiston kakustangenttia radiaaneina.
// Calculate the inverse tangent of 1/1 in degrees
double degrees = atan2(1.0, 1.0) * 180.0 / M_PI;
Brain.Screen.print("%f", degrees);
// Output: 45.000000
asin#
Laskee luvun käänteisen sinin (arkussinin) ja palauttaa radiaaneina ilmaistun kulman kaksinkertaisen luvun.
Available Functionsdouble asin( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Tupla välillä -1 ja 1. |
Palauttaa luvun double joka edustaa arkussiniä radiaaneina.
// Calculate the arc sine of 0.5 in degrees
double degrees = asin(0.5) * 180.0 / M_PI;
Brain.Screen.print("%f", degrees);
// Output: 30.000000
acos#
Laskee luvun käänteisen kosinin (arkuskosinin) ja palauttaa radiaaneina ilmaistun kulman kaksinkertaisen arvon.
Available Functionsdouble acos( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Tupla välillä -1 ja 1. |
Palauttaa luvun double joka edustaa arkuskosinin radiaaneina.
// Calculate the arc cosine of 0.5 in degrees
double degrees = acos(0.5) * 180.0 / M_PI;
Brain.Screen.print("%f", degrees);
// Output: 60.000000
Pyöristäminen ja itseisarvo#
ceil#
Palauttaa luvun pyöristettynä ylöspäin kaksinkertaisena.
Available Functionsdouble ceil( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Ylöspäin pyöristettävä tupla. |
Palauttaa arvon double joka edustaa pienintä kokonaislukua, joka on suurempi tai yhtä suuri kuin x.
// Round up 9.7
Brain.Screen.print("%f", ceil(9.7));
// Output: 10.000000
floor#
Palauttaa alaspäin pyöristettynä luvun kaksinkertaisena.
Available Functionsdouble floor( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Kaksinkertainen, joka pyöristetään alaspäin. |
Palauttaa arvon double joka edustaa suurinta kokonaislukua, joka on pienempi tai yhtä suuri kuin x.
// Round down 9.7
Brain.Screen.print("%f", floor(9.7));
// Output: 9.000000
trunc#
Palauttaa luvun kaksinkertaisena yksikkönä, jonka desimaaliosa on asetettu nollaksi.
Available Functionsdouble trunc( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Katkaistava kaksoisosa. |
Palauttaa luvun double kahden numeron välein, josta desimaaliosa on poistettu.
// Truncate 9.7
Brain.Screen.print("%f", trunc(9.7));
// Output: 9.000000
Eksponentit ja logaritmit#
sqrt#
Palauttaa luvun neliöjuuren.
Available Functionsdouble sqrt( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Ei-negatiivinen kaksoisluku. |
Palauttaa luvun double joka on x:n neliöjuuri.
// Display the square root of 121
Brain.Screen.print("%f", sqrt(121));
// Output: 11.000000
exp#
Laskee luvun eksponentin.
Available Functionsdouble exp( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Kaksinkertainen arvo :n eksponentin laskemiseksi. |
Palauttaa luvun double joka edustaa e:n potenssiin x korotettua arvoa.
// Calculate e raised to the power of 1
double result = exp(1);
Brain.Screen.print("%f", result);
// Output: 2.718282
log#
Laskee luvun luonnollisen logaritmin.
Available Functionsdouble log( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Positiivinen tuplaus. |
Palauttaa luvun double joka edustaa x:n luonnollista logaritmia.
// Calculate the natural logarithm (base e) of e
double result = log(M_E);
Brain.Screen.print("%f", result);
// Output: 1.000000
log10#
Laskee luvun kymmenkantaisen logaritmin.
Available Functionsdouble log10( double x );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Positiivinen tuplaus. |
Palauttaa luvun double kaksoisnumerointiarvon, joka edustaa x:n kymmenkantaista logaritmia.
// Calculate the base-10 logarithm of 1000
double result = log10(1000);
Brain.Screen.print("%f", result);
// Output: 3.000000
Liukulukuoperaatiot#
fmod#
Palauttaa jakolaskun jakojäännöstä säilyttäen jaettavan etumerkin.
Available Functionsdouble fmod( double x, double y );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Osinko. |
|
|
Jakaja. |
Palauttaa luvun double joka edustaa x/y:n jakojäännöstä x:n etumerkillä.
// Calculate remainder of 10 / -3
// that preserves the sign of 10
double result = fmod(10.0, -3.0);
Brain.Screen.print("%f", result);
// Output: 1.000000
copysign#
Palauttaa luvun, jonka suuruus on x ja etumerkki y.
Available Functionsdouble copysign( double x, double y );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Arvo, jonka suuruutta käytetään. |
|
|
Arvo, jonka etumerkkiä käytetään. |
Palauttaa luvun double , jonka suuruus on x ja merkki y.
// Return -10 with the sign of -3 (negative)
double result = copysign(10, -3);
Brain.Screen.print("%f", result);
// Output: -10.000000