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.