Naar inhoud springen

Wetenschappelijke rekenmachine: machten en logaritmen

Online wetenschappelijke rekenmachine met machten, wortels, logaritmen en ln, sinus, cosinus en tangens in graden of radialen, faculteiten, procenten en geheugen.

Scientific Calculator

Evaluates a typed or tapped expression with the usual order of operations, including powers, roots, logarithms, trigonometry and factorials.

Use + - * / for arithmetic, ^ for powers, ! for factorial and % for percent.

Type an expression or use the keypad to see a result.

Keypad

How this calculator reads an expression

Percent divides by 100 wherever it appears, so 100+10% is 100.1, not 110. Powers group from the right: 2^3^2 is 2^9, which is 512. A minus sign in front of a power is applied last, so -2^2 is -4. Two things written side by side are multiplied, and that multiplication ranks with division, so both are read left to right: 1/2pi means (1/2) times pi, and 6/2(1+2) is 9. Some scientific calculators read 1/2pi the other way, as 1/(2 times pi), so use brackets when the meaning matters. In Degrees mode the tangent is refused at 90 degrees and every odd multiple of it, because it has no value there.

History

No calculations yet. Press = to add one.

Laadcalculator...
šŸ“š

Documentatie

Wetenschappelijke rekenmachine

Een wetenschappelijke rekenmachine berekent de waarde van een geschreven wiskundige uitdrukking. Deze rekenmachine verwerkt machten, wortels, logaritmen, goniometrie, faculteiten en percentages, past de standaardbewerkingsvolgorde toe en geeft ƩƩn antwoord.

Wat de calculator doet

Een uitdrukking wordt in het vak Uitdrukking getypt of met het toetsenblok opgebouwd. De rekenmachine leest de uitdrukking zodra deze verandert, zodat er geen gelijkteken nodig is om het antwoord te zien. De toets = voegt de berekening in plaats daarvan toe aan een geschiedenisoverzicht.

De rekenmachine accepteert:

  • de cijfers, een decimaalteken en getallen in exponentnotatie, zoals 1.5e-3;
  • de operatoren +, -, *, / en ^ (macht), plus haakjes;
  • de constanten pi en e;
  • de functies sin, cos, tan, asin, acos, atan, log, ln, sqrt en cbrt;
  • de postfixtekens ! (faculteit) en % (procent).

De symbolen op het toetsenblok worden vertaald naar hun gewone equivalenten, dus Ɨ, Ć·, āˆ’ en Ļ€ betekenen hetzelfde als *, /, - en pi.

log is de logaritme met grondtal 10 en ln is de natuurlijke logaritme, met grondtal e. Dit is de aanduiding op wetenschappelijke rekenmachines van TI en Casio en de naamgeving in de NIST Digital Library of Mathematical Functions, sectie 4,2.

De bewerkingsvolgorde

De regel die bepaalt wat een uitdrukking betekent, is de bewerkingsvolgorde. Deze rekenmachine gebruikt de onderstaande grammatica. Elke regel verwijst naar de regel eronder, dus de inspringing vormt de prioriteitstabel: de laatste regel bindt het sterkst en wordt het eerst uitgewerkt.

1expression := term (('+' | '-') term)*
2term       := unary (('*' | '/' | juxtaposition) unary)*
3unary      := ('-' | '+') unary | power
4power      := postfix ('^' unary)?
5postfix    := primary ('!' | '%')*
6primary    := number | constant | name '(' expression ')' | '(' expression ')'
7

In de volgorde van eerst naar laatst uitgewerkt:

  1. alles tussen haakjes en een functie die op haakjes wordt toegepast;
  2. ! en %;
  3. ^;
  4. een vooropgeplaatst teken - of +;
  5. *, / en twee elementen die naast elkaar staan;
  6. + en -.

De hierdoor ontstane conventies komen overeen met ISO 80000-2:2019 en het Wikipedia-artikel ā€žOrder of operationsā€:

GeschrevenWordt gelezen alsWaarde
2^3^22^(3^2)512
-2^2-(2^2)-4
2^-22^(-2)0,25
2^3!2^(3!)64
100+10%100 + (10/100)100,1
1/2pi(1/2) * pi1,57079632679
6/2(1+2)(6/2) * (1+2)9

Twee getallen of namen die naast elkaar staan, worden vermenigvuldigd. Daardoor werken 2pi, 2(3+4) en 3sin(30). Deze impliciete vermenigvuldiging heeft dezelfde prioriteit als * en /, dus een juxtapositie en een deling worden van links naar rechts gelezen. Veel wetenschappelijke zakrekenmachines geven een juxtapositie een hogere prioriteit dan deling en lezen 1/2pi als 1/(2*pi), wat een ander antwoord oplevert. Wikipedia beschrijft dit verschil in ā€žCalculator input methodsā€. Haakjes maken elk geval waarin het verschil van belang is ondubbelzinnig.

% deelt door 100, waar het ook staat. 20% is dus 0,2 en 200*15% is 30. Het is niet de toets ā€žpercentage van het lopende totaalā€ van een kassa en ook geen restoperator.

Uitgewerkt voorbeeld

De uitdrukking sin(30)+2^3*ln(4) wordt in de modus Graden in deze volgorde uitgewerkt:

  1. sin(30) is 0,5, omdat 30 graden een halve rechte hoek is en de sinus daarvan een half is.
  2. 2^3 is 8. Machten worden vóór vermenigvuldigingen berekend.
  3. ln(4) is 1,38629436112.
  4. 8 * 1.38629436112 is 11,090354889.
  5. 0.5 + 11.090354889 is 11,590354889.

De rekenmachine toont 11,590354889.

Een tweede voorbeeld toont de regel van links naar rechts. In 6/2(1+2) worden de haakjes eerst uitgewerkt, wat 6/2*3 oplevert. De deling en de impliciete vermenigvuldiging hebben dezelfde prioriteit, dus de deling wordt eerst uitgevoerd: 6/2 is 3 en 3*3 is 9.

Graden en radialen

De instelling voor de hoekeenheid bepaalt hoe sin, cos en tan hun invoer lezen en welke eenheid asin, acos en atan teruggeven. In de modus Graden is een volledige omwenteling 360. In de modus Radialen is een volledige omwenteling 2pi, ongeveer 6,28318530718. Dezelfde uitdrukking kan in de twee modi zeer verschillende antwoorden opleveren: sin(30) is 0,5 in de modus Graden en -0,988031624093 in de modus Radialen.

Hoe getallen worden opgeslagen en weergegeven

Elke waarde is een IEEE-754-standaardwaarde van het type binary64, het getaltype dat wordt beschreven in ECMA-262, de ECMAScript Language Specification, sectie 6,1.6,1. Een double bevat ongeveer 15 tot 17 decimale cijfers. Alleen voor het scherm wordt het antwoord eenmaal afgerond op 12 significante cijfers. Waarden kleiner dan 0,000001 of gelijk aan of groter dan 1.000.000.000.000 worden in exponentnotatie weergegeven, zodat 0.0000001 wordt gelezen als 1E-7.

Het opgeslagen getal behoudt de volledige precisie. Het geheugen slaat het exacte resultaat op, niet de 12 cijfers op het scherm, en MR plakt de kortste tekst terug die als hetzelfde getal wordt gelezen. Een negatieve geheugenwaarde wordt tussen haakjes geplakt, zodat het terughalen ervan na een 2 als een vermenigvuldiging en niet als een aftrekking wordt gelezen.

Afronding wordt nooit gebruikt om iets te beslissen. Een kleine rest uit eerdere rekenkundige bewerkingen is een echt getal en wordt als zodanig behandeld. 0.1*3-0.3 is in binair niet nul, maar ongeveer 5,55111512313E-17, zodat 5/(0.1*3-0.3) 9,00719925474E16 oplevert in plaats van een melding over delen door nul.

Om dezelfde reden toont sin(180) in de modus Graden 1,22464679915E-16 en niet 0. De fout bedraagt daar ongeveer ƩƩn op tien biljoen en blijft zo klein. De tangens is de uitzondering; die wordt hieronder behandeld.

Wat de rekenmachine weigert

De rekenmachine toont een melding in plaats van een antwoord wanneer:

  • een noemer exact nul is, inclusief een geschreven getal dat te klein is voor een double, zoals 1e-400, dat bij het lezen al nul is;
  • sqrt een negatief getal krijgt;
  • log of ln een getal krijgt dat niet groter is dan nul;
  • asin of acos een getal buiten het bereik van -1 tot 1 krijgt, het domein dat in NIST DLMF-sectie 4,14 wordt gegeven;
  • tan wordt gebruikt bij 90 graden of een oneven veelvoud daarvan, waar de functie geen waarde heeft;
  • om een faculteit wordt gevraagd van iets anders dan een geheel getal van 0 tot 170;
  • een getal een tweede decimaalteken bevat, zoals in 1.2.3;
  • de uitdrukking langer is dan 512 tekens.

De limiet van 170 is een eigenschap van het getaltype, geen voorkeur: de faculteit van 170 is ongeveer 7,25741561531E306, wat nog in een double past, terwijl de faculteit van 171 dat niet doet. De tekenlimiet van 512 wordt in de code gecontroleerd, omdat de lengte van de uitdrukking bepaalt hoeveel werk de rekenmachine uitvoert.

Bij de controle van de tangens wordt de hoek vóór de test afgerond op 9 decimalen. Daardoor wordt afwijking door eerdere rekenkundige bewerkingen teruggebracht naar de exacte asymptoot, ten koste van een weigeringsvenster van ongeveer 5e-10 graden aan elke kant. tan(89.9999999994) geeft 95.493.592.025 en tan(89.9999999995) wordt geweigerd. De modus Radialen voert geen dergelijke controle uit, omdat een ingevoerde radiaalwaarde nabij de helft van pi slechts een ander getal is zonder bijzondere status.

Veelgestelde vragen

Wat doet de toets % hier? De toets deelt door 100 waar hij ook voorkomt. 100+10% is 100,1, omdat het 100 plus 0,1 betekent. De toets berekent geen percentage van wat eraan voorafging.

Is 2^3^2 64 of 512? 512. Machten worden van rechts gegroepeerd, dus dit betekent 2^(3^2), wat 2^9 is. Dit volgt ISO 80000-2:2019.

Waarom is 6/2(1+2) 9 en niet 1? Een impliciete vermenigvuldiging heeft dezelfde prioriteit als een deling en bewerkingen met gelijke prioriteit worden van links naar rechts gelezen. Rekenmachines die juxtapositie een hogere prioriteit geven, antwoorden 1. Haakjes nemen de twijfel weg.

Waarom toont sin(180) niet 0? Omdat 180 graden eerst naar radialen wordt omgerekend en pi niet exact binair kan worden geschreven. Het antwoord is ongeveer 1.2e-16, de werkelijke sinuswaarde van het getal dat de machine gebruikte.

Wat is het verschil tussen log en ln? log heeft grondtal 10, dus log(1000) is 3. ln heeft grondtal e, dus ln(e) is 1. De aanduidingen op het toetsenblok volgen dezelfde conventie als op wetenschappelijke rekenmachines van TI en Casio.

Waarom wordt een faculteit boven 170 geweigerd? De faculteit van 171 is groter dan elk getal dat een double kan bevatten, dus het antwoord zou oneindig zijn in plaats van een getal. De rekenmachine meldt dat in plaats van een betekenisloos resultaat te tonen.

Bronnen

  • IEEE 754-2019, IEEE-standaard voor rekenkunde met drijvende komma.
  • ECMA-262, ECMAScript Language Specification, sectie 6.1.6.1, ā€žThe Number Typeā€.
  • ISO 80000-2:2019, Quantities and units, deel 2: Mathematical signs and symbols.
  • NIST Digital Library of Mathematical Functions, secties 4,2 en 4,14.
  • Wikipedia, ā€žOrder of operationsā€.
  • Wikipedia, ā€žCalculator input methodsā€.