floor()- ja ceil()-funktio Python
Lattia()-funktio:
floor()-menetelmä Pythonissa palauttaa x:n kerroksen eli suurimman kokonaisluvun, joka ei ole suurempi kuin x.
Syntax: import math math.floor(x) Parameter: x-numeric expression. Returns: largest integer not greater than x.
Alla on floor()-menetelmän Python-toteutus:
Python
# Python program to demonstrate the use of floor() method> # This will import math module> import> math> # prints the ceil using floor() method> print> 'math.floor(-23.11) : '> , math.floor(> -> 23.11> )> print> 'math.floor(300.16) : '> , math.floor(> 300.16> )> print> 'math.floor(300.72) : '> , math.floor(> 300.72> )> |
Lähtö:
math.floor(-23.11) : -24.0 math.floor(300.16) : 300.0 math.floor(300.72) : 300.0
ceil()-funktio:
Pythonin menetelmä ceil(x) palauttaa enimmäisarvon x, eli pienimmän kokonaisluvun, joka on suurempi tai yhtä suuri kuin x.
Syntax: import math math.ceil(x) Parameter: x:This is a numeric expression. Returns: Smallest integer not less than x.
Alla on ceil()-menetelmän Python-toteutus:
Python
# Python program to demonstrate the use of ceil() method> # This will import math module> import> math> # prints the ceil using ceil() method> print> 'math.ceil(-23.11) : '> , math.ceil(> -> 23.11> )> print> 'math.ceil(300.16) : '> , math.ceil(> 300.16> )> print> 'math.ceil(300.72) : '> , math.ceil(> 300.72> )> |
Lähtö:
math.ceil(-23.11) : -23.0 math.ceil(300.16) : 301.0 math.ceil(300.72) : 301.0
Käyttämällä kokonaislukujakoa ja yhteenlaskua:
Tässä lähestymistavassa x // 1:tä käytetään x:n kokonaislukuosan saamiseksi, joka vastaa math.floor(x). Jotta saadaan x:n katto, lisäämme x:n kokonaislukuosaan 1.
Python 3
x> => 4.5> # Round x down to the nearest integer> rounded_down> => x> /> /> 1> print> (rounded_down)> # Output: 4> # Round x up to the nearest integer> rounded_up> => x> /> /> 1> +> 1> print> (rounded_up)> # Output: 5> |
Lähtö
4.0 5.0
Lähestyä:
Koodi ottaa float-luvun x ja pyöristää sen alaspäin lähimpään kokonaislukuun lattiajaolla. Sitten se tulostaa tuloksen. Sen jälkeen se pyöristää x:n lähimpään kokonaislukuun kerrosjaolla ja yhteenlaskulla ja tulostaa tuloksen.
Aika monimutkaisuus:
Round()-funktion aikamonimutkaisuus on vakio, mikä tarkoittaa, että myös vaihtoehtoisen koodin aikamonimutkaisuus on vakio. Alkuperäisen koodin aikamonimutkaisuus on myös vakio, koska se käyttää vain muutamia yksinkertaisia aritmeettisia operaatioita.
Tilan monimutkaisuus:
Sekä alkuperäisen koodin että vaihtoehtoisen koodin monimutkaisuus on vakio, koska molemmat käyttävät vain muutamia muuttujia syötteen ja tuloksen tallentamiseen.