Naar inhoud springen

Visual Basic/De klasse Math

Uit Wikibooks

Visual Basic

Inhoudsopgave
  1. Inleiding taalelementen
  2. Variabelen
  3. Operatoren
  4. Typeconversie
  5. Keuze-instructies
  6. Herhalingsinstructies
  7. Random getallen
  8. Opmaak getallen
  9. De klasse Math
  10. Arrays
  11. De structuur van een programma

De klasse Math en diverse rekenfuncties

[bewerken]

Methoden en eigenschappen van de klasse Math

[bewerken]

De klasse Math bevat diverse methoden voor rekenkundige functies. De belangrijkste zijn:

Methode Betekenis Type argument Type resultaat
Abs() de absolute waarde van een getal Decimal, Double, Integer, Long, SByte, Short of Single hetzelfde als het argument
Acos() arccosinus Double Double
Asin() Arcsinus Double Double
Atan() arctangens Double Double
Ceiling() het kleinste gehele getal dat groter of gelijk is aan argument Decimal of Double hetzelfde als het argument
Cos() cosinus Double Double
Exp() e tot de macht argument Double Double
Floor() het grootste gehele getal dat kleiner of gelijk is aan argument Decimal of Double Hetzelfde als het argument
Log() logaritme van argument Double Double
Log10() 10-delig logaritme van argument Double Double
Max() grootste van twee getallen Byte, Decimal, Double, Integer, Long, SByte, Short, Single, UInteger, ULong, UShort hetzelfde als het argument
Min() kleinste van twee getallen Byte, Decimal, Double, Integer, Long, SByte, Short, Single, UInteger, ULong, UShort hetzelfde als het argument
Pow() x tot de macht y x als Double, y als Double Double
Round() rind argument af op een opgegeven aantal decimalen Decimal, Double hetzelfde als het argument
Sign() het teken van een getal Decimal, Double, Integer, Long, Short, SByte, Single Integer (-1 is negatief, 0 is 0, 1 is positief)
Sin() sinus Double Double
Sqrt() vierkantswortel Double Double
Tan() tangens Double Double
Truncate() kapt argument af bij de komma Decimal, Double hetzelfde als het argument

Ook kent de klasse Math twee eigenschappen:

  • Math.E een Double met als waarde het natuurlijk logaritme
  • Math.PI een Double met als waarde pi

De functie Math.Round()

[bewerken]

Het formaat van de aanroep van Math.Round() is:

Math.Round(expressie [ , aantalDecimalePlaatsen [ , MidpointRounding ] ] )

De functie Math.Round() behoeft nadere toelichting.

Het eenvoudigst in de functieaanroep met één argument:

getal = Math.Round(waarde)

Het getal in waarde wordt afgerond op een geheel getal en opgeslagen in getal.

Je kunt ook het aantal posities aangeven door een tweede argument op te geven, dat een Integer moet zijn:

getal = Math.Round(waarde, 3)

Het getal in waarde wordt afgerond op drie cijfers na de komma en opgeslagen in getal.

LET OP: Microsoft gebruikt voor het afronden het bankiersalgoritme. Dat betekent dat alles op een normale manier wordt afgerond, behalve als het argument precies 0,5 is. In dat geval wordt afgerond naar het meest nabij liggende EVEN getal. Dus 2,5 wordt 2 en 3,5 wordt 4.

De wijze van afronden kun je beïnvloeden door een derde parameter, die ofwel MidpointRounding.ToEven is (het bankiersaloritme) ofwel MidpointRounding.AwayFromZero (de normale manier van afronden). Ter verduidelijking de volgende voorbeelden:

Uitdrukking Resultaat
Math.Round(123.455, 2, MidpointRounding.ToEven) 123.46
Math.Round(123.445, 2, MidpointRounding.ToEven) 123.44
Math.Round(123.455, 2, MidpointRouding.AwayFromZero) 123.46
Math.Round(123.445, 2, MidpointRouding.AwayFromZero) 123.45

Zoals je ziet wordt op de tweede manier de 5 naar boven afgerond, zoals we dat op school geleerd hebben (bij de bank doen ze anders).

De functies Int() en Fix()

[bewerken]

Deze functies zijn beide bedoeld om getallen af te ronden. Beide functies werken hetzelfde bij positieve getallen. Bij negatieve getallen rondt Int() af naar het getal dat dichter bij nul ligt en Fix() rondt af naar het getal dat verder van nul ligt. Voorbeelden:

Uirdrukking Resultaat
Int(4.9) 4.5
Int(4) 4
Int(-4.9) -4
Fix(4.9) 4
Fix(4) 4
Fix(-4.9) -5

Het type van het argument en het resultaat zijn hetzelfde en kunnen zijn: Double, Integer, Long, Object, Short, Single of Decimal. Dit betekent dat als je het resultaat wilt toekennen aan een Integer, je expliciet moet converteren, bijvoorbeeld:

Dim getal As Integer
getal = CInt(Int(4.5))
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.