Funkce floor() a ceil() v Pythonu

Funkce podlaha():

metoda floor() v Pythonu vrací dno x, tj. největší celé číslo, které není větší než x.

 Syntax: import math math.floor(x) Parameter:  x-numeric expression. Returns:  largest integer not greater than x. 

Níže je uvedena implementace metody floor() v Pythonu:

Krajta




# 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> )>

Výstup:

math.floor(-23.11) : -24.0 math.floor(300.16) : 300.0 math.floor(300.72) : 300.0 

Funkce ceil():

Metoda ceil(x) v Pythonu vrací maximální hodnotu x, tj. nejmenší celé číslo větší nebo rovné x.

 Syntax:  import math math.ceil(x) Parameter: x:This is a numeric expression. Returns:  Smallest integer not less than x. 

Níže je uvedena implementace metody ceil() v Pythonu:

Krajta




# 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> )>

Výstup:

math.ceil(-23.11) : -23.0 math.ceil(300.16) : 301.0 math.ceil(300.72) : 301.0 

Použití celočíselného dělení a sčítání:

V tomto přístupu se x // 1 používá k získání celé části x, která je ekvivalentní math.floor(x). Abychom získali strop x, přidáme 1 k celé části x.

Python3




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>

Výstup

4.0 5.0 

Přístup:
Kód vezme plovoucí číslo x a použije dělení podlahy k zaokrouhlení dolů na nejbližší celé číslo. Poté vytiskne výsledek. Poté použije dělení podlahy a sčítání k zaokrouhlení x nahoru na nejbližší celé číslo a vytiskne výsledek.

Časová náročnost:
Časová složitost funkce round() je konstantní, což znamená, že i časová složitost alternativního kódu je konstantní. Časová složitost původního kódu je také konstantní, protože používá pouze několik jednoduchých aritmetických operací.

Prostorová složitost:
Prostorová složitost původního kódu i alternativního kódu je konstantní, protože oba používají pouze několik proměnných k uložení vstupu a výsledku.