Przejdź do treści
Przewodnik po Varlig
Strona główna Varlig

Spis funkcji wbudowanych

Ta strona wymienia wszystkie funkcje wbudowane w Varlig Calc. Wywołaj funkcję po nazwie, podając argumenty w nawiasach i oddzielając je przecinkami: sqrt(16), round(17.46, 0.05).

  • Wielkość liter w nazwach nie ma znaczenia, więc SQRT(16) też działa.
  • Liczba argumentów jest sprawdzana. sqrt(4, 9) pokazuje błąd zamiast ignorować 9.
  • Liczby mogą zachować separatory tysięcy. Przecinek z trzema następującymi cyframi grupuje tysiące, a przecinek ze spacją oddziela argumenty, więc max(1,000, 2,000) daje 2000, a sqrt(1,024) — 32.
  • Wynik funkcji można zaokrąglić lub przeliczyć w tym samym wierszu, np. sqrt(2) to 4 dp lub abs(-5 km) in m.
  • Znajdź nazwę w poniższej tabeli, a następnie przejdź do jej sekcji po szczegóły i przykłady.

Wiele funkcji ma też angielski zapis słowny, np. square root of 16; zobacz Matematyka zapisana słowami. Tworzenie własnych funkcji opisuje rozdział Własne funkcje.

Wszystkie funkcje

Funkcja Znaczenie
abs(x) Wartość bezwzględna; zachowuje jednostki; moduł liczby zespolonej
sign(x) −1, 0 lub 1
int(x), trunc(x) Część całkowita, z obcięciem w kierunku zera
round(x), round(x, step) Najbliższa liczba całkowita lub wielokrotność step
floor(x), floor(x, step) Zaokrąglenie w dół, w stronę ujemnej nieskończoności
ceil(x), ceil(x, step) Zaokrąglenie w górę, w stronę dodatniej nieskończoności
sqrt(x), cbrt(x) Pierwiastek kwadratowy i sześcienny; zachowują jednostki, których wykładniki dzielą się bez reszty
exp(x), ln(x) Naturalna funkcja wykładnicza i logarytm
log(x), log10(x), log2(x), logbase(x, b) Logarytmy
sin, cos, tan Trygonometria w radianach lub dla kąta takiego jak 30°
sind, cosd, tand Trygonometria w stopniach
asin, acos, atan Odwrotne funkcje trygonometryczne, wynik w radianach
asind, acosd, atand Odwrotne funkcje trygonometryczne, wynik w stopniach
atan2(y, x) Kąt w radianach z uwzględnieniem ćwiartki
sinh, cosh, tanh, asinh, acosh, atanh Funkcje hiperboliczne
factorial(n), fact(n) Silnia; także w zapisie n!
gcd(a, b), lcm(a, b) Największy wspólny dzielnik i najmniejsza wspólna wielokrotność; dokładne także dla ułamków
combination(n, k), permutation(n, k) Liczba wyborów
clamp(x, low, high) Ograniczenie wartości do podanego zakresu
hex(n), bin(n) Wyświetlenie liczby szesnastkowo lub binarnie
random(), rand(), random(a, b), rand(a, b) Liczby losowe
complex(re, im), real, imag, conj, arg Liczby zespolone
sum, total, product, average, mean, avg, median, min, max, count, length, variance, stddev, stdev Sumy i statystyki listy (wiele funkcji przyjmuje też oddzielne argumenty)
sum(expr, var, lo, hi), summation(...), product(expr, var, lo, hi) Sumy i iloczyny po liczniku
range(a, b), range(a, b, step) Lista liczb z uwzględnieniem obu końców
sort, reverse, unique, slice(list, start, end) Zmiana kolejności lub wybieranie z listy
map(expr, var, list), filter(cond, var, list) Obliczanie lub sprawdzanie każdego elementu listy
dot, cross, identity(n), shape, transpose, det, inverse, trace, rank Wektory i macierze
solve_system(A, b), eigenvalues, qr, lu, svd Układy liniowe i rozkłady macierzy
solve(equation, var, lo, hi) Numeryczne rozwiązanie równania między dwiema granicami
differentiate(expr, var), derivative(expr, var) Pochodna jako wzór
differentiate(expr, var, point), derivative(expr, var, point) Pochodna w punkcie jako liczba
integrate(expr, var, lo, hi) Całka oznaczona obliczana numerycznie
easter(year) Niedziela Wielkanocna w tradycji zachodniej
tyre_speed(width, aspect, rim, rotation) Prędkość jazdy na podstawie rozmiaru opony i obrotów koła

Liczby i liczenie

Funkcja Argumenty i znaczenie
abs(x) Wartość bezwzględna; zachowuje jednostkę wielkości; dla liczby zespolonej zwraca moduł
sign(x) Znak liczby rzeczywistej bez jednostki: -1, 0 lub 1
int(x), trunc(x) Część całkowita, z obcięciem w kierunku zera
sqrt(x) Pierwiastek kwadratowy; dla liczby ujemnej poproś o pierwiastek zespolony: sqrt(-16 + 0i)
cbrt(x) Pierwiastek sześcienny, także z liczb ujemnych
factorial(n), fact(n) Silnia liczby całkowitej nieujemnej; także w zapisie n!
gcd(a, b) Największy wspólny dzielnik dwóch dokładnych liczb, zawsze nieujemny
lcm(a, b) Najmniejsza wspólna wielokrotność dwóch dokładnych liczb, zawsze nieujemna
clamp(x, low, high) Ogranicza wartość do przedziału od low do high; wszystkie wartości tego samego rodzaju, dolna granica jako pierwsza
permutation(n, k) Uporządkowane wybory k elementów spośród n
combination(n, k) Nieuporządkowane wybory k elementów spośród n
hex(x), bin(x) Wyświetlenie liczby szesnastkowo lub binarnie
calc
abs(-£45.20) daje £45.20
sign(-5) daje -1
int(7.8) daje 7
sqrt(144 m^2) daje 12 m
cbrt(-27) daje -3
factorial(5) daje 120
gcd(1920, 1080) daje 120
lcm(4, 6) daje 12
clamp(115, 0, 100) daje 100
clamp(£120, £0, £100) daje £100.00
combination(10, 2) daje 45
permutation(8, 3) daje 336
hex(255) daje 0xFF
bin(10) daje 0b1010

Kilka codziennych zastosowań: gcd(1920, 1080) pokazuje, że ekran 1920 × 1080 ma proporcje 16:9 (1920 ÷ 120 do 1080 ÷ 120). combination(10, 2) to liczba różnych par w grupie dziesięciu osób, a permutation(8, 3) — liczba sposobów przyznania złota, srebra i brązu ośmiu biegaczom.

clamp zachowuje jednostki kwot, wielkości i czasów trwania, gdy wartość i obie granice mierzą to samo. Dlatego clamp(£120, £0, £100) ogranicza zwrot do £100,00. Przy silniach i wyborach używaj liczb całkowitych, z k nie większym niż n. 5! to krótszy zapis factorial(5). Dla innych pierwiastków użyj wyrażenia root 3 of 27; ogólna funkcja root(...) nie istnieje.

Zaokrąglanie

round, floor i ceil przyjmują opcjonalny krok zaokrąglania:

calc
round(17.46, 0.05) daje 17.45
ceil(23, 6) daje 24
floor(7.8) daje 7

ceil(23, 6) zaokrągla 23 jajka w górę do pełnych opakowań po sześć. Krok nie jest liczbą miejsc po przecinku: round(17.456, 2) zaokrągla do najbliższej wielokrotności 2 i daje 18, a podpowiedź przy round sugeruje zamiast tego 17.456 to 2 dp. Dla cyfr znaczących wpisz to 3 sf. Zasady dla połówek, liczb ujemnych i kwot opisuje rozdział Zaokrąglanie.

Trygonometria i kąty

Rodzina funkcji Znaczenie
sin, cos, tan Trygonometria; liczba bez jednostki oznacza radiany
sind, cosd, tand Trygonometria liczby bez jednostki wyrażonej w stopniach
asin, acos, atan Odwrotne funkcje trygonometryczne; wynik ma jednostkę radiana
asind, acosd, atand Odwrotne funkcje trygonometryczne zwracające stopnie
atan2(y, x) Kąt z uwzględnieniem ćwiartki, jako liczba radianów bez jednostki
sinh, cosh, tanh Funkcje hiperboliczne
asinh, acosh, atanh Odwrotne funkcje hiperboliczne
calc
sin(30°) daje 0.5
cosd(60) daje 0.5
tan(45°) daje 1
sin(pi/2) daje 1
asind(0.5) daje 30°
asin(1) daje 1.5707963268 rad
asin(0.5) in degrees daje 30°
atan2(-1, -1) * 180 / pi daje -135
cosh(0) daje 1

sin, cos i tan przyjmują kąt w dowolnej jednostce kąta, np. 30°, 30 degrees lub 30 deg. Aby zobaczyć wynik asin, acos lub atan w stopniach, dodaj in degrees, jak powyżej, lub użyj wariantów funkcji zwracających stopnie.

atan2 przyjmuje najpierw wartość y i ustala ćwiartkę kąta, więc atan2(-1, -1) wskazuje w dół i w lewo (−135°), czego samo atan(1) nie rozróżnia.

Funkcje hiperboliczne przyjmują liczby bez jednostek. Funkcje odwrotne przyjmują tylko wartości ze swojej dziedziny rzeczywistej; np. asin(2) pokazuje Error: imaginary number. Wyniki zespolone opisuje rozdział Liczby zespolone.

Logarytmy i funkcje wykładnicze

Funkcja Znaczenie
ln(x) Logarytm naturalny
log(x), log10(x) Logarytm dziesiętny
log2(x) Logarytm o podstawie 2
logbase(x, b) Logarytm z x o podstawie b
exp(x) Naturalna funkcja wykładnicza
calc
log(1000) daje 3
log10(1000000) daje 6
log2(1024) daje 10
logbase(81, 3) daje 4
ln(exp(2)) daje 2
exp(0) daje 1

Logarytm wymaga liczby dodatniej: log(0) pokazuje Error: ∞, a log(-100) — Error: imaginary number. Aby obliczyć logarytm zespolony, zapisz liczbę jako zespoloną, np. ln(-1 + 0i). Podstawa musi być dodatnia i różna od 1. Logarytmy, funkcje wykładnicze i hiperboliczne nie przyjmują jednostek ani kwot pieniężnych.

Wartości losowe

calcWyniki zależą od dzisiejszej daty lub aktualnych danych
random number between 1 and 6 daje 4
random(1, 6) daje 2
rand(1, 100) daje 57
random() daje 0.4381930527
rand() daje 0.9102746385
random(0, 1) daje 0.2373052626
  • random(a, b) i wyrażenie random number between a and b zwracają liczbę całkowitą od a do b, z uwzględnieniem obu końców.
  • random() zwraca liczbę od 0 włącznie do 1 wyłącznie. random(0, 1) jest szczególnym przypadkiem działającym tak samo.
  • rand to inna nazwa random.
  • Granice muszą być liczbami całkowitymi bez jednostek, od mniejszej do większej, mieszczącymi się w zakresie 64-bitowych liczb całkowitych. Jeden argument, więcej niż dwa argumenty, ułamki lub odwrócone granice powodują błąd.
  • Varlig może wylosować nową liczbę przy każdym przeliczeniu notatki. Zapisz wynik losowania w zmiennej, np. roll = random(1, 6), jeśli późniejsze wiersze mają używać tej samej liczby.

Listy i statystyka

calc
average([12, 18, 9, 21]) daje 15
median([3, 9, 4, 7, 5]) daje 5
sum([£12.50, £8, £4.25]) daje £24.75
max(4, 9, 2) daje 9
stddev([2, 4, 6]) daje 2
sum(k, k, 1, 100) daje 5,050
range(0, 20, 5) daje [0, 5, 10, 15, 20]
sort([3, 1, 2]) daje [1, 2, 3]
slice([10, 20, 30, 40], 1, 3) daje [20, 30]
map(x * 1.2, x, [£10, £25]) daje [£12.00, £30.00]
filter(x > 10, x, [4, 12, 18]) daje [12, 18]

sum (także total), product, average (także mean i avg), median, min, max, count, length, variance i stddev (także stdev) działają na listach; część przyjmuje również osobne argumenty. Obsługiwane są też percentyle. Z czterema argumentami sum, summation i product sumują lub mnożą wyrażenie, gdy licznik przechodzi od lo do hi. reverse i unique również przyjmują listę. Pozycje w slice, statystyki próby i populacji oraz inne zagadnienia opisano w rozdziale Listy i statystyka.

Wektory, macierze, pochodne i całki

calc
dot([1, 2, 3], [4, 5, 6]) daje 32
det([[2, 1], [1, 3]]) daje 5
solve_system([[1, 1], [1, -1]], [10, 2]) daje [6, 4]
solve(x * 1.2 = 60, x, 0, 100) daje 50
differentiate(x^2, x, 3) daje 6
integrate(x^2, x, 0, 3) daje 9

solve_system([[1, 1], [1, -1]], [10, 2]) znajduje dwie liczby o sumie 10 i różnicy 2. solve(x * 1.2 = 60, x, 0, 100) znajduje cenę netto, która po doliczeniu 20% VAT wynosi 60, przeszukując zakres od 0 do 100. Funkcje cross, identity, shape, transpose, inverse, trace, rank, eigenvalues, qr, lu i svd opisuje rozdział Wektory i macierze. Pochodne jako wzory oraz limity rozwiązywania równań i całkowania opisują rozdziały Sumowanie, rozwiązywanie równań i rachunek różniczkowy i całkowy oraz Zaawansowana matematyka.

Liczby zespolone

calc
abs(3 + 4i) daje 5
complex(3, 4) daje 3 + 4i
conj(3 + 4i) daje 3 - 4i
real(3 + 4i) daje 3
imag(3 + 4i) daje 4

arg(z) podaje argument liczby zespolonej w radianach. Zobacz Liczby zespolone.

Daty i pojazdy

calc
easter(2030) daje April 21, 2030
tyre_speed(205, 55, 16, 1000 rpm) in km/h daje 119.1103438682 km/h

easter(year) podaje niedzielę Wielkanocy według kalendarza zachodniego w danym roku, tak samo jak wyrażenie Easter 2030. Możesz bezpośrednio liczyć od niej dni, np. easter(2030) + 1 day. Zobacz Daty. tyre_speed przyjmuje szerokość opony w milimetrach, profil jako procent, rozmiar felgi w calach i prędkość obrotową koła; zobacz Gotowanie, dźwięk, ekrany i mechanika.