Java Matematiikka – ceil() Floor() -menetelmät

⚡ Älykäs yhteenveto

Java Math Class (java.lang.Math) tarjoaa staattisia metodeja itseisarvo-, pyöristys-, katto-, pohja-, minimi-, maksimi-, eksponentiaali-, logaritmi- ja trigonometrisille laskutoimituksille. Nämä sisäänrakennetut funktiot korvaavat manuaalisen laskennan ja mahdollistavat tarkan tieteellisen laskennan suoraan missä tahansa kurssimateriaalissa. Java ohjelma.

  • 🔢 Vakiot: Math.E (2.718281828459045) ja Math.PI (3.141592653589793) näkyvät logaritmisten ja geometristen kaavojen kaksoiskenttinä.
  • 📏 Pyöristävä perhe: abs() palauttaa magnitudin, round() antaa lähimmän kokonaisluvun, kun taas ceil() ja floor() pyöristävät ylös- ja alaspäin kokonaislukuihin.
  • 🇧🇷 Vertailumenetelmät: min() ja max() palauttavat kahdesta numeerisesta argumentista pienemmän tai suuremman int-, long-, float- ja double-tyypeillä.
  • 📈 Edistynyt matematiikka: exp(), log(), pow() ja sqrt() käsittelevät eksponentiaalisia, logaritmisia, potenssi- ja neliöjuurilaskutoimituksia double-arvoille.
  • 📐 Trigonometria: sin(), cos(), tan(), atan2(), toRadians() ja toDegrees() toimivat radiaaneina kulmapohjaisissa laskelmissa.

Java Matemaattiset ceil()- ja floor()-metodit

Mikä on Java Matematiikan tunti?

Java on ollut useissa edistyneissä käyttösovelluksissa, mukaan lukien monimutkaisten laskelmien tekeminen fysiikassa, arkkitehtuurissa ja rakennesuunnittelussa, työskentely karttojen ja vastaavien leveys- ja pituusasteiden kanssa ja paljon muuta.

Kaikki tällaiset sovellukset vaativat monimutkaisia ​​laskelmia ja yhtälöitä, joiden suorittaminen manuaalisesti on työlästä. Ohjelmallisesti tällaiset laskelmat edellyttäisivät logaritmien, trigonometrian, eksponentiaaliyhtälöiden ja vastaavien operaatioiden käyttöä.

Java Matematiikan kurssi

Nyt kaikkia loki- tai trigonometriataulukoita ei voi olla kovakoodattuina jonnekin sovelluksessasi tai tiedoissasi. Data olisi valtava ja monimutkainen ylläpitää.

Java tarjoaa tähän tarkoitukseen erittäin hyödyllisen luokan. Se on Math Java luokka (java.lang.Math). Tämä luokka tarjoaa metodeja operaatioiden, kuten eksponentiaali-, logaritmi-, juuri- ja trigonometristen yhtälöiden, suorittamiseen.

Matematiikan kaksi perustavanlaatuisinta elementtiä ovat "e" (luonnollisen logaritmin kantaluku) ja "pii" (ympyrän kehän suhde sen halkaisijaan). Näitä kahta vakiota tarvitaan usein yllä olevissa laskutoimituksissa ja toiminnoissa. Siksi Math-luokka Java tarjoaa nämä kaksi vakiota kaksoiskenttinä:

  • Math.E – jonka arvo on 2.718281828459045
  • Math.PI – jonka arvo on 3.141592653589793

Katsotaanpa alla olevaa taulukkoa, joka näyttää, mitä Perusmenetelmät ja niiden kuvaukset:

MenetelmäTuotetiedotargumentit
absPalauttaa argumentin itseisarvonDouble, float, int, long
kierrosPalauttaa lähimmän kokonaisluvun tai pitkän luvun (argumentin mukaisesti)tupla tai kellua
kattoMatemaattinen kattofunktio sisään Java palauttaa pienimmän kokonaisluvun, joka on suurempi tai yhtä suuri kuin argumenttiDouble
lattiaJava floor-menetelmä palauttaa suurimman kokonaisluvun, joka on pienempi tai yhtä suuri kuin argumenttiDouble
minuuttiaPalauttaa pienimmän kahdesta argumentistaDouble, float, int, long
maxPalauttaa suurimman kahdesta argumentistaDouble, float, int, long

Alla on yllä olevien metodien kooditoteutus.

Huomautus: java.lang.Math-tiedostoa ei tarvitse tuoda erikseen, koska se tuodaan implisiittisesti. Kaikki sen metodit ovat staattisia.

Kokonaislukumuuttujat:

int i1 = 27;
int i2 = -45;

Double (desimaali)muuttujat:

double d1 = 84.6;
double d2 = 0.45;

Java Math abs() -menetelmä esimerkin kanssa

Java Math abs() -menetelmä palauttaa argumentin itseisarvon.

public class Guru99 {
 public static void main(String args[]) {
  int i1 = 27;
  int i2 = -45;
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Absolute value of i1: " + Math.abs(i1));
  System.out.println("Absolute value of i2: " + Math.abs(i2));
  System.out.println("Absolute value of d1: " + Math.abs(d1));
  System.out.println("Absolute value of d2: " + Math.abs(d2));
 }
}

Odotettu tuotos:

Absolute value of i1: 27
Absolute value of i2: 45
Absolute value of d1: 84.6
Absolute value of d2: 0.45

Java Math.round()-menetelmä esimerkin kanssa

Math.round()-metodi Java palauttaa argumentin mukaisen lähimmän kokonaisluvun tai pitkän luvun. Alla on esimerkki Math.round-funktiosta. Java menetelmällä.

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Round off for d1: " + Math.round(d1));
  System.out.println("Round off for d2: " + Math.round(d2));
 }
}

Odotettu tuotos:

Round off for d1: 85
Round off for d2: 0

Java Math.ceil() ja Math.floor() -metodit esimerkin kera

Math.ceil()- ja Math.floor()-metodit Java käytetään palauttamaan pienin ja suurin kokonaisluku, jotka ovat suurempia tai yhtä suuria kuin argumentti (ja pienempiä tai yhtä suuria kuin se). Alla on matematiikan pohja ja katto. Java esimerkki.

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Ceiling of '" + d1 + "' = " + Math.ceil(d1));
  System.out.println("Floor of '" + d1 + "' = " + Math.floor(d1));
  System.out.println("Ceiling of '" + d2 + "' = " + Math.ceil(d2));
  System.out.println("Floor of '" + d2 + "' = " + Math.floor(d2));
 }
}

Saamme alla olevan Math.ceil-tiedoston tulosteen Java esimerkki.

Odotettu tuotos:

Ceiling of '84.6' = 85.0
Floor of '84.6' = 84.0
Ceiling of '0.45' = 1.0
Floor of '0.45' = 0.0

Java Math.min()- ja Math.max()-metodit esimerkin kera

Java Math.min()-metodi palauttaa kahdesta argumentista pienimmän, kun taas Math.max()-metodi palauttaa kahdesta argumentista suurimman.

public class Guru99 {
 public static void main(String args[]) {
  int i1 = 27;
  int i2 = -45;
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Minimum out of '" + i1 + "' and '" + i2 + "' = " + Math.min(i1, i2));
  System.out.println("Maximum out of '" + i1 + "' and '" + i2 + "' = " + Math.max(i1, i2));
  System.out.println("Minimum out of '" + d1 + "' and '" + d2 + "' = " + Math.min(d1, d2));
  System.out.println("Maximum out of '" + d1 + "' and '" + d2 + "' = " + Math.max(d1, d2));
 }
}

Odotettu tuotos:

Minimum out of '27' and '-45' = -45
Maximum out of '27' and '-45' = 27
Minimum out of '84.6' and '0.45' = 0.45
Maximum out of '84.6' and '0.45' = 84.6

Java Matemaattiset eksponentiaaliset ja logaritmiset menetelmät

Perusmenetelmien lisäksi mm. Java Matematiikkakurssilla on myös eksponentiaalisia ja logaritmisia laskutoimituksia. Alla oleva taulukko näyttää nämä metodit ja niiden kuvaukset.

MenetelmäTuotetiedotargumentit
expPalauttaa luonnollisen logaritmin (e) kantaluvun argumentin potenssiin korotettuna.Double
logPalauttaa argumentin luonnollisen loginkaksinkertainen
powOttaa syötteeksi 2 argumenttia ja palauttaa ensimmäisen argumentin arvon toisen argumentin potenssiinDouble
lattiaJava matemaattinen kerros palauttaa suurimman kokonaisluvun, joka on pienempi tai yhtä suuri kuin argumenttiDouble
sqrtPalauttaa argumentin neliöjuurenDouble

Alla on yllä olevien metodien kooditoteutus (käytetään samoja muuttujia kuin yllä).

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("exp(" + d2 + ") = " + Math.exp(d2));
  System.out.println("log(" + d2 + ") = " + Math.log(d2));
  System.out.println("pow(5, 3) = " + Math.pow(5.0, 3.0));
  System.out.println("sqrt(16) = " + Math.sqrt(16));
 }
}

Odotettu tuotos:

exp(0.45) = 1.568312185490169
log(0.45) = -0.7985076962177716
pow(5, 3) = 125.0
sqrt(16) = 4.0

Java Matemaattiset trigonometriset menetelmät

Java Matematiikkakurssi tukee myös trigonometrisiä laskutoimituksia. Alla oleva taulukko näyttää nämä metodit ja niiden kuvaukset.

MenetelmäTuotetiedotargumentit
syntiPalauttaa annetun argumentin sinin.Double
cosPalauttaa määritetyn argumentin kosininkaksinkertainen
rusketusPalauttaa annetun argumentin tangentinDouble
atan2Muuntaa suorakulmaiset koordinaatit (x, y) polaarikoordinaateiksi (r, theeta) ja palauttaa theetan.Double
asteisiinMuuntaa argumentin asteiksiDouble
sqrtPalauttaa argumentin neliöjuurenDouble
radiaaneilleMuuntaa argumentin radiaaneiksiDouble

Oletusarvoiset argumentit ovat radiaaneina. Alla on koodin toteutus.

public class Guru99 {
 public static void main(String args[]) {
  double angle_30 = 30.0;
  double radian_30 = Math.toRadians(angle_30);
  System.out.println("sin(30) = " + Math.sin(radian_30));
  System.out.println("cos(30) = " + Math.cos(radian_30));
  System.out.println("tan(30) = " + Math.tan(radian_30));
  System.out.println("Theta = " + Math.atan2(4, 2));
 }
}

Odotettu tuotos:

sin(30) = 0.49999999999999994
cos(30) = 0.8660254037844387
tan(30) = 0.5773502691896257
Theta = 1.1071487177940904

Yllä olevien menetelmien avulla voit nyt myös suunnitella oman tieteellisen laskimen Java.

UKK

Java Math on java.langin viimeinen hyödyllisyysluokka, joka tarjoaa staattisia metodeja yleisiin numeerisiin operaatioihin, kuten itseisarvoon, pyöristämiseen, potensseihin, juuriin, logaritmeihin ja trigonometriaan, sekä vakioihin Math.PI ja Math.E.

Ei. java.lang-paketti tuodaan implisiittisesti, joten Math-metodit ovat aina käytettävissä. Laajemman koodin saamiseksi lisää import static java.lang.Math.*; ja kutsu sqrt- tai pow-funktiota ilman Math-etuliitettä.

Math.ceil palauttaa pienimmän kokonaisluvun, joka on suurempi tai yhtä suuri kuin argumentti, kun taas Math.floor palauttaa suurimman kokonaisluvun, joka on pienempi tai yhtä suuri kuin argumentti. Molemmat palauttavat kaksinkertaisen luvun, joten luvusta 4.2 tulee vastaavasti 5.0 tai 4.0.

Kaikki trigonometriset menetelmät odottavat radiaaneja, eivät asteita. Muunna ensin Math.toRadians(30) -funktiolla ennen sinin, cosinin tai tanin kutsumista. Muuten metodi käsittelee lukua 30 30 radiaanina ja palauttaa aivan erilaisen arvon.

Java ei sisällä erillistä eksponenttioperaattoria. Sirkkulehdellä ^ korotetaan bittikohtaisesti XOR:lla, ei potenssiinkorotuksella. Käytä potensseille Math.pow(kantaluku, eksponentti). Kokonaislukujen neliöille kertominen x * x on nopeampaa kuin Math.pow:n kutsuminen.

Käytä Math.addExact-funktiota aina, kun ylivuoto edustaisi todellista virhettä, kuten laskureita, taloudellisia summia tai indeksien aritmetiikkaa. Se heittää ArithmeticException-poikkeuksen rivityksen sijaan.ping äänettömästi, jolloin virheelliset tulokset ovat kovia ja helposti havaittavissa.

Koneoppimiskirjastot Java Käytä Math.exp-tiedostoa softmax-funktiolle, Math.log-tiedostoa ristientropiahäviölle, Math.sqrt-tiedostoa RMS-metriikoille ja Math.tanh-tiedostoa aktivointifunktioille. Vektorimatematiikkakehykset jakavat sitten nämä kutsut eri taulukoiden välillä koulutusta ja päättelyä varten.

Kyllä. GitHub Copilot tukee matematiikan metodikutsuja, radiaanimuunnoksia ja ylivuototurvallisia aritmeettisia suorituksia kaavaa kuvaavasta kommentista. RevKatso jokainen ehdotus numeerisille reunatapauksille, kuten nollalla jakamiselle tai tarkkuushäviölle, ennen toimitustaping.

Tiivistä tämä viesti seuraavasti: