Hvordan runde tall i Python

Hvordan runde tall i Python
I Python kan det være situasjoner når vi trenger å konvertere en desimalfraksjon til et helt tall. Avrunding av en verdi er praksisen med å erstatte en verdi med en annen verdi som nesten tilsvarer den opprinnelige verdien. For eksempel tallet 3.5 vil bli avrundet til enten 3 eller 4. Avrunding gjør verdiene enklere å forstå. Python gir en innebygd metode som heter Round (). Ved å bruke Round () -funksjonen, vil et flottørnummer bli returnert og avrundet til de spesifiserte desimalpunktene. Denne artikkelen vil lære deg hvordan du bruker runden () -funksjonen, så vel som flere avrundingsmetoder.

Hva er den flytende typen i Python?

Det flytende nummeret er representert av datatypefløtten i Python. Et desimalpunkt skiller brøk- og heltalldelene. Python-representasjonen er en 64-biters dobbeltpresisjons-flytdatatype. Her er noen eksempler på flyteverdier: 2.21, 1.41, 23.50, 68.12304, og 1.12E4. Disse eksemplene viser flyteverdier i vitenskapelig notasjon, der desimaldelen kalles mantissa og eksponentiell kalles eksponenten.

Hvordan kan tall være avrundet i Python?

I Python kan flere metoder brukes til å runde et tall. Vi vil diskutere noen få av dem:

  • Bruke rund () -funksjon
  • ved hjelp av avkortning
  • Bruke matematikk.gulv () og matematikk.Ceil () Funksjoner
  • ved hjelp av avrundingsskjevhet

La oss starte med Round () -funksjonen som er en innebygd funksjon levert av Python spesielt for å hjelpe oss i avrundingsnumre.

Avrundingsnummer ved hjelp av rund () -funksjon

Det er en funksjon i Python kalt Round () som lar oss runde et tall. Siden funksjonen allerede er inkludert i Python -biblioteket, er det ikke nødvendig. Et tall (enten et flytende punkt eller en heltallverdi) og desimalene for å runde tallet til er de to parametrene som funksjonen tar. Imidlertid er den andre parameteren valgfri.

Etter desimalpunktet, hvis det siste sifferet er større enn 5, vil det runde verdien til neste hele/heltallnummer; Hvis det er mindre enn 5, vil den runde til gulvet heltall.

Hvis bare den første parameteren er spesifisert, vil en heltallverdi returneres som utgang.

Imidlertid vil runden () -funksjonen returnere en flottør 1.0 Hvis den andre parameteren sendes som null:

Den andre parameteren i.e. Ndigits brukes til å spesifisere presisjonsverdien for avrundingsnummeret som oppnås ved hjelp av runden () -funksjonen.

De medfølgende tallene er avrundet til to desimaler, da den andre parameteren er spesifisert som 2. Vi kan spesifisere en verdi for ndigits (den andre parameteren) i henhold til våre krav. Hvis du vil runde så mange sifre før desimalet, kan du også gi runden () funksjonen en negativ verdi som det andre argumentet. Hvis -1 vil bli spesifisert som det andre argumentet, vil det medfølgende nummeret bli avrundet til nærmeste 10. Hvis -2 er spesifisert, vil nummeret bli avrundet til nærmeste 100, til nærmeste 1000 når -3 er spesifisert, og så videre.

Avrundingsnumre ved å bruke avkortet konsept

Å avkortes et tall til et bestemt antall sifre er den enkleste, om enn råeste, måten å runde et tall. Når et tall er avkortet, er sifrene etter en spesifikk stilling erstattet med 0. For eksempel verdien 11.480 vil bli avkortet til Tens Place og vil returnere 10, hvis avkortet til ens sted kommer den tilbake 11, hvis 11.480 er avkortet til Tiendhs Place vil returnere 11.4 vil bli returnert, hvis avkortet til hundrelisten, vil den returnere 11.48, og så videre. Pythons avkortede () -metode gir mulighet for bruk av både negative og positive verdier.

Avkortet metode kan implementeres ved hjelp av følgende teknikk:

  • Heltallet vil bli multiplisert med 10p for å flytte desimalpunktet P -stedene til høyre.
  • Bruker int () for å skaffe heltallsdelen/delen av det nye nummeret.
  • Ved å dele med 10p, blir desimalstedet flyttet til venstre av P -steder.

Avrundingsnumre etter tak () og gulv () funksjoner

Denne tak () og gulv () funksjoner er gitt i matemodulen.

Ceil (): Det tar et desimaltall som en parameter og returnerer et heltall som er lik eller større enn inngangsnummeret.

gulv(): Det tar et desimaltall som en parameter og returnerer et heltall som er lik eller mindre enn inngangsnummeret.

Avrunding av antall ved hjelp av Ceil () -funksjon

Avrunding betyr avrunding av en flottør/tall til nærmeste heltallverdi som er større enn den medfølgende float/nummeret. En verdi/tall er avrundet til et visst antall sifre i avrundingsprosessen. Følgende er en metode for å bruke avrundingsfunksjonen:

  • For det første, ved multiplikasjon av N med 10 ** desimaler, vil desimalpunktet i N bli flyttet til det spesifiserte antallet lokasjoner til høyre.
  • Matten.Ceil () -funksjonen runder den nye verdien til nærmeste antall/heltall.
  • Til slutt, del med 10 ** desimaler for å flytte desimalpunktet tilbake til venstre.

Avrunding av nummer ved hjelp av gulv () -funksjon

Å avrunde ned betyr avrunding av en flottør/tall til nærmeste heltallverdi som er mindre eller lavere enn den medfølgende float/nummeret. Et heltall/flottør er avrundet i avrunding ned til et forhåndsbestemt antall sifre. Følgende er en metode for å bruke avrundingsfunksjonen:

  • For det første, ved multiplikasjon av N med 10 ** desimaler, flyttes desimalpunktet i N til det spesifiserte antallet steder/steder til høyre.
  • Det nye nummeret blir avrundet til nærmeste heltall ved hjelp av matematikk.gulv () funksjon.
  • Til slutt, del med 10 ** desimaler for å flytte desimalpunktet tilbake til venstre.

Avrundingsnumre ved hjelp av avrundingsskjevkonseptet

Ved å bruke symmetribegrepet blir avrundingsskjevkonseptet introdusert og det definerer hvordan avrunding påvirker numeriske verdier i et datasett. Avrundingsmetoden har en skjevhet til fordel for positiv uendelig fordi antallet alltid er avrundet mot positiv uendelig. Lignende skjevheter eksisterer i avrundingsmetoden, som favoriserer negativ uendelig. For positive tall har den avkortede tilnærmingen/teknikken en skjevhet mot negativ uendelig, og for negative tall har den en skjevhet mot positiv uendelig. Denne typen oppførsel er kjent som en skjevhet mot null i avrundingsfunksjoner.

Avrunding halvt opp

Strategien "Rounding Half Up" bryter bånd via avrunding og runder hver flyter eller heltall til det nærmeste antallet med ønsket presisjon. For å bruke avrundingshalvteknikken, forskyves desimalpunktet for et tall til høyre med det spesifiserte antallet steder. I dette tilfellet må vi bestemme om sifferet etter det flyttede desimalet er større enn eller mindre enn 5. Vi kan bruke matematikk.gulv () funksjon for å runde resultatet etter å ha lagt til 0.5 til den forskjøvede verdien.

Avrunding halvt ned

Denne tilnærmingen bryter båndene ved å avrunde tallet til det mindre av de to verdiene, i motsetning til avrundingsstrategien avrunding, som runder til nærmeste nummer. RoundHalfup () -funksjonens matematikk.gulv () blir byttet ut for matematikk.Ceil () for å bruke avrundingshalvteknikken og deretter 0.5 trekkes fra snarere enn lagt til.

Konklusjon

I denne artikkelen så vi først en introduksjon til avrundingsnumre. Så forklarer vi hva flytende tall er og hvordan vi kan runde kryss/flyter i Python. Først brukte vi runden () -funksjonen som er en innebygd funksjon i Python til runde verdier. Vi implementerte også forskjellige funksjoner som Ceil () og gulv () og teknikker/konsepter som avkortning og rund skjevhet for avrunding av tallene.