Rational ja BigDecimal
Tarkka aritmetiikka.
Rational ja BigDecimal on ilmainen Ruby Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/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 Ruby Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Ruby Academy-kurssilla on yhteensä 4 oppituntia.
Miksi tarkkaa aritmetiikkaa tarvitaan?
Liukuluvut menettävät tarkkuutta. Raha- ja murtolukulaskentaan Ruby tarjoaa tyypit Rational ja BigDecimal, jotka säilyttävät tarkkuuden.
puts 0.1 + 0.2Rational-luvun luominen
Rational on tarkka murtoluku. Kirjoittakaa se r-päätteellä tai käyttäkää muotoa Rational(num, den).
puts (1r / 3)
puts Rational(2, 4)Rational-luvut sievenevät automaattisesti
Rational-luvut sievennetään automaattisesti supistamattomaan muotoon, joten 2/4 muuttuu muotoon 1/2.
puts Rational(6, 8)
puts Rational(10, 5)Tarkka murtolukulaskenta
Rationaalilukujen yhteenlasku säilyy tarkkana toisin kuin liukuluvuilla. Yksi kolmasosa plus yksi kolmasosa plus yksi kolmasosa on täsmälleen yksi.
third = Rational(1, 3)
puts (third + third + third)Osoittaja ja nimittäjä
Lukekaa osat metodeilla numerator ja denominator.
r = Rational(3, 4)
puts r.numerator
puts r.denominatorRational-lukujen muuntaminen
to_f muuntaa rationaaliluvun liukuluvuksi, kun tarvitsette desimaalisen likiarvon.
puts Rational(1, 8).to_fBigDecimalin lataaminen
BigDecimal käsittelee desimaalilukuja tarkasti, joten se sopii erinomaisesti rahasummiin. Ladatkaa se ensin standardikirjastosta.
require "bigdecimal"
a = BigDecimal("0.1")
b = BigDecimal("0.2")
puts (a + b).to_s("F")Käyttäkää aina merkkijonoja
Luokaa BigDecimal-arvot merkkijonoista, älkää liukuluvuista, jotta tarkkuus ei häviä jo ennen laskennan alkamista.
require "bigdecimal"
good = BigDecimal("1.1")
puts good.to_s("F")Rahalaskenta
BigDecimal säilyttää senttien tarkan arvon monissa laskutoimituksissa.
require "bigdecimal"
price = BigDecimal("19.99")
qty = 3
total = price * qty
puts total.to_s("F")BigDecimalin pyöristäminen
BigDecimal-arvon round hallitsee desimaalien määrää tarkasti.
require "bigdecimal"
n = BigDecimal("2.675")
puts n.round(2).to_s("F")Oikean työkalun valinta
Käyttäkää Rational-tyyppiä tarkoille murtoluvuille ja suhdeluvuille. Käyttäkää BigDecimal-tyyppiä tarkkoihin desimaalimuotoisiin rahasummiin. Käyttäkää Float-tyyppiä nopeaan tieteelliseen laskentaan, kun pieni virhe on hyväksyttävä.
require "bigdecimal"
puts Rational(1, 3)
puts BigDecimal("0.33").to_s("F")Pikatarkistus
Tarkistakaa tarkan aritmetiikan hallintanne.
Kertaus
Opitte tarkan aritmetiikan perusteet:
- Rational tarkoille murtoluvuille, jotka sievenevät automaattisesti
numerator,denominator,to_f- BigDecimal merkkijonoista tarkkaa rahalaskentaa varten
- oikean tyypin valitseminen tehtävän mukaan
Ruby Numbers and Math -kurssi on nyt suoritettu.
puts (Rational(1, 2) + Rational(1, 3))Opi Ruby 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
- 29
- Oppitunnit
- 109
Usein kysytyt kysymykset
Onko oppitunti ”Rational ja BigDecimal” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Ruby Academy-oppimispolun 3 oppituntia, myös oppitunnin “Rational ja BigDecimal”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Ruby Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Rational ja BigDecimal”?
Tarkka aritmetiikka. Harjoittelet Ruby Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Ruby Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Ruby Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.
Kuinka kauan ”Rational ja BigDecimal”-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ä Ruby Academy-oppitunnilla?
Kyllä. Jokainen Ruby 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
- Kokonaisluvut ja liukuluvut
- Aritmetiikka ja operaattorit
- Math-moduuli
- Rational ja BigDecimal