내장 함수 참조
이 페이지에는 Varlig Calc에 내장된 모든 함수가 나와 있어요. 함수는 이름 뒤의 괄호 안에 인수를 쉼표로 구분해 넣어서 호출해요. 예를 들면 sqrt(16), round(17.46, 0.05)와 같아요.
- 이름은 대소문자를 구분하지 않으므로
SQRT(16)도 작동해요. - 인수의 개수를 확인해요.
sqrt(4, 9)는 9를 무시하지 않고 오류를 표시해요. - 숫자에 천 단위 구분 기호를 그대로 써도 돼요. 쉼표 뒤에 세 자리 숫자가 오면 천 단위를 구분하고, 쉼표 뒤에 공백이 오면 인수를 구분하므로,
max(1,000, 2,000)은 2,000이고sqrt(1,024)는 32예요. sqrt(2) to 4 dp나abs(-5 km) in m처럼 함수의 결과를 같은 줄에서 반올림하거나 변환할 수 있어요.- 아래 표에서 이름을 찾은 다음, 해당 섹션에서 자세한 설명과 예를 확인하세요.
많은 함수에는 square root of 16 같은 영어 표현도 있어요. 말로 하는 수학을 참고하세요. 함수를 직접 만들려면 나만의 함수를 참고하세요.
모든 함수
| 함수 | 의미 |
|---|---|
abs(x) |
절댓값. 단위를 유지하며, 복소수에서는 크기 |
sign(x) |
−1, 0 또는 1 |
int(x), trunc(x) |
정수 부분(0 방향으로 버림) |
round(x), round(x, step) |
가장 가까운 정수, 또는 가장 가까운 step의 배수 |
floor(x), floor(x, step) |
내림(음의 무한대 방향) |
ceil(x), ceil(x, step) |
올림(양의 무한대 방향) |
sqrt(x), cbrt(x) |
제곱근과 세제곱근. 나누어떨어지는 단위는 근에서도 유지 |
exp(x), ln(x) |
자연 지수 함수와 자연로그 |
log(x), log10(x), log2(x), logbase(x, b) |
로그 |
sin, cos, tan |
라디안 값 또는 30° 같은 각도의 삼각 함수 |
sind, cosd, tand |
도 단위 삼각 함수 |
asin, acos, atan |
역삼각 함수. 결과는 라디안 |
asind, acosd, atand |
역삼각 함수. 결과는 도 |
atan2(y, x) |
사분면을 고려한 각도(라디안) |
sinh, cosh, tanh, asinh, acosh, atanh |
쌍곡선 함수 |
factorial(n), fact(n) |
계승. n!로도 쓸 수 있음 |
gcd(a, b), lcm(a, b) |
최대공약수와 최소공배수. 분수에서도 정확하게 계산 |
combination(n, k), permutation(n, k) |
고르는 경우의 수 |
clamp(x, low, high) |
값을 한계 안으로 유지 |
hex(n), bin(n) |
숫자를 16진수나 2진수로 표시 |
random(), rand(), random(a, b), rand(a, b) |
난수 |
complex(re, im), real, imag, conj, arg |
복소수 |
sum, total, product, average, mean, avg, median, min, max, count, length, variance, stddev, stdev |
목록의 합계와 통계(몇몇은 인수를 따로 받을 수도 있음) |
sum(expr, var, lo, hi), summation(...), product(expr, var, lo, hi) |
카운터를 따라 구하는 합과 곱 |
range(a, b), range(a, b, step) |
양 끝을 포함하는 숫자 목록 |
sort, reverse, unique, slice(list, start, end) |
목록의 순서를 바꾸거나 일부를 고르기 |
map(expr, var, list), filter(cond, var, list) |
목록의 각 항목을 계산하거나 조건 검사 |
dot, cross, identity(n), shape, transpose, det, inverse, trace, rank |
벡터와 행렬 |
solve_system(A, b), eigenvalues, qr, lu, svd |
연립 일차 방정식과 행렬 분해 |
solve(equation, var, lo, hi) |
두 경계 사이에서 방정식을 수치적으로 풀기 |
differentiate(expr, var), derivative(expr, var) |
수식으로 나타낸 도함수 |
differentiate(expr, var, point), derivative(expr, var, point) |
한 점에서의 미분값(숫자) |
integrate(expr, var, lo, hi) |
수치적으로 계산한 정적분 |
easter(year) |
서방 교회의 부활절 일요일 |
tyre_speed(width, aspect, rim, rotation) |
타이어 규격과 바퀴 회전 속도로 구한 주행 속도 |
숫자와 개수 세기
| 함수 | 인수와 의미 |
|---|---|
abs(x) |
절댓값. 수량의 단위를 유지하며, 복소수에서는 크기 |
sign(x) |
단위 없는 실수의 부호: -1, 0 또는 1 |
int(x), trunc(x) |
정수 부분(0 방향으로 버림) |
sqrt(x) |
제곱근. 음수라면 sqrt(-16 + 0i)처럼 복소수 근을 요청 |
cbrt(x) |
세제곱근(음수도 가능) |
factorial(n), fact(n) |
0 이상인 정수의 계승. n!로도 쓸 수 있음 |
gcd(a, b) |
정확한 두 수의 최대공약수. 음수가 되지 않음 |
lcm(a, b) |
정확한 두 수의 최소공배수. 음수가 되지 않음 |
clamp(x, low, high) |
값을 low와 high 사이로 유지. 세 값은 모두 같은 종류이며 하한을 먼저 씀 |
permutation(n, k) |
n개에서 k개를 순서 있게 고르는 경우의 수 |
combination(n, k) |
n개에서 k개를 순서 없이 고르는 경우의 수 |
hex(x), bin(x) |
숫자를 16진수나 2진수로 표시 |
abs(-£45.20) 결과 £45.20sign(-5) 결과 -1int(7.8) 결과 7sqrt(144 m^2) 결과 12 mcbrt(-27) 결과 -3factorial(5) 결과 120gcd(1920, 1080) 결과 120lcm(4, 6) 결과 12clamp(115, 0, 100) 결과 100clamp(£120, £0, £100) 결과 £100.00combination(10, 2) 결과 45permutation(8, 3) 결과 336hex(255) 결과 0xFFbin(10) 결과 0b1010일상에서 읽는 방법을 몇 가지 들어 볼게요. gcd(1920, 1080)의 결과를 보면 1920 × 1080 화면이 16:9라는 것을 알 수 있어요(1920 ÷ 120 대 1080 ÷ 120). combination(10, 2)는 10명으로 이루어진 그룹에서 만들 수 있는 서로 다른 짝의 수이고, permutation(8, 3)은 주자 8명 중에서 금, 은, 동메달을 정하는 경우의 수예요.
clamp는 값과 두 한계가 같은 것을 측정하면 돈, 수량, 소요 시간의 단위를 그대로 유지해요. 그래서 clamp(£120, £0, £100)으로 환불액을 최대 £100.00으로 제한할 수 있어요. 계승과 경우의 수 함수에는 정수를 사용하고, k가 n보다 크지 않게 하세요. 5!는 factorial(5)를 더 짧게 쓴 형태예요. 다른 거듭제곱근은 root 3 of 27 표현을 사용하세요. 일반적인 root(...) 함수는 없어요.
반올림
round, floor, ceil에는 반올림할 단위(step)를 선택적으로 지정할 수 있어요.
round(17.46, 0.05) 결과 17.45ceil(23, 6) 결과 24floor(7.8) 결과 7ceil(23, 6)은 달걀 23개를 6개들이 상자 단위로 올림해요. step은 소수 자릿수가 아니에요. round(17.456, 2)는 가장 가까운 2의 배수로 반올림해서 18이 되고, round에 표시되는 힌트가 대신 17.456 to 2 dp로 쓰라고 제안해요. 유효숫자로 반올림하려면 to 3 sf로 쓰세요. 0.5, 음수, 금액의 반올림은 반올림을 참고하세요.
삼각 함수와 각도
| 함수 계열 | 의미 |
|---|---|
sin, cos, tan |
삼각 함수. 단위 없는 숫자는 라디안으로 처리 |
sind, cosd, tand |
단위 없는 숫자를 도로 처리하는 삼각 함수 |
asin, acos, atan |
역삼각 함수. 결과에 라디안 단위가 붙음 |
asind, acosd, atand |
역삼각 함수. 결과를 도로 반환 |
atan2(y, x) |
사분면을 고려한 각도. 단위 없는 라디안 값 |
sinh, cosh, tanh |
쌍곡선 함수 |
asinh, acosh, atanh |
역쌍곡선 함수 |
sin(30°) 결과 0.5cosd(60) 결과 0.5tan(45°) 결과 1sin(pi/2) 결과 1asind(0.5) 결과 30°asin(1) 결과 1.5707963268 radasin(0.5) in degrees 결과 30°atan2(-1, -1) * 180 / pi 결과 -135cosh(0) 결과 1sin, cos, tan은 30°나 30 degrees처럼 어떤 각도 단위로 쓴 값이든 받아요. asin, acos, atan의 결과를 도로 보려면 위의 예처럼 in degrees를 덧붙이거나 도 단위 함수를 사용하세요.
atan2는 y 값을 먼저 받고 각도가 어느 사분면에 있는지 판단해요. 그래서 atan(1)만으로는 구분할 수 없는 왼쪽 아래 방향(−135°)을 atan2(-1, -1)은 정확히 가리켜요.
쌍곡선 함수는 단위 없는 숫자를 받아요. 역함수는 실수 범위 안의 값만 받아요. 예를 들어 asin(2)는 Error: imaginary number를 표시해요. 복소수 결과는 복소수를 참고하세요.
로그와 지수
| 함수 | 의미 |
|---|---|
ln(x) |
자연로그 |
log(x), log10(x) |
밑이 10인 로그 |
log2(x) |
밑이 2인 로그 |
logbase(x, b) |
밑이 b인 x의 로그 |
exp(x) |
자연 지수 함수 |
log(1000) 결과 3log10(1000000) 결과 6log2(1024) 결과 10logbase(81, 3) 결과 4ln(exp(2)) 결과 2exp(0) 결과 1로그에는 양수가 필요해요. log(0)은 Error: ∞를, log(-100)은 Error: imaginary number를 표시해요. 복소 로그를 구하려면 ln(-1 + 0i)처럼 숫자를 복소수로 쓰세요. 밑은 1이 아닌 양수여야 해요. 로그, 지수 함수, 쌍곡선 함수에는 단위나 금액을 쓸 수 없어요.
난수
random number between 1 and 6 결과 4random(1, 6) 결과 2rand(1, 100) 결과 57random() 결과 0.4381930527rand() 결과 0.9102746385random(0, 1) 결과 0.2373052626random(a, b)와random number between a and b표현은a부터b까지(양 끝 포함)의 정수를 줘요.random()은 0 이상 1 미만의 소수를 줘요.random(0, 1)도 같은 결과를 내는 특수한 경우예요.rand는random의 다른 이름이에요.- 경계는 단위 없는 정수로, 작은 값을 먼저 쓰고 64비트 정수 범위 안에 있어야 해요. 인수가 하나이거나 둘보다 많을 때, 정수가 아닌 값을 쓰거나 경계를 거꾸로 쓸 때는 오류가 표시돼요.
- Varlig는 메모를 다시 계산할 때마다 새 숫자를 뽑을 수 있어요. 이후 줄에서 같은 숫자를 써야 한다면
주사위 = random(1, 6)처럼 뽑은 값을 변수에 저장하세요.
목록과 통계
average([12, 18, 9, 21]) 결과 15median([3, 9, 4, 7, 5]) 결과 5sum([£12.50, £8, £4.25]) 결과 £24.75max(4, 9, 2) 결과 9stddev([2, 4, 6]) 결과 2sum(k, k, 1, 100) 결과 5,050range(0, 20, 5) 결과 [0, 5, 10, 15, 20]sort([3, 1, 2]) 결과 [1, 2, 3]slice([10, 20, 30, 40], 1, 3) 결과 [20, 30]map(x * 1.2, x, [£10, £25]) 결과 [£12.00, £30.00]filter(x > 10, x, [4, 12, 18]) 결과 [12, 18]sum(total도 가능), product, average(mean, avg도 가능), median, min, max, count, length, variance, stddev(stdev도 가능)는 목록에 사용할 수 있고, 그중 몇몇은 인수를 따로 받을 수도 있어요. 백분위수 함수는 없어요. 인수가 네 개인 sum, summation, product는 카운터가 lo부터 hi까지 바뀌는 동안 식을 더하거나 곱해요. reverse와 unique도 목록을 받아요. slice의 위치 지정, 표본 통계와 모집단 통계 등은 목록과 통계를 참고하세요.
벡터, 행렬, 미적분
dot([1, 2, 3], [4, 5, 6]) 결과 32det([[2, 1], [1, 3]]) 결과 5solve_system([[1, 1], [1, -1]], [10, 2]) 결과 [6, 4]solve(x * 1.2 = 60, x, 0, 100) 결과 50differentiate(x^2, x, 3) 결과 6integrate(x^2, x, 0, 3) 결과 9solve_system([[1, 1], [1, -1]], [10, 2])는 더하면 10이고 차이가 2인 두 수를 찾아요. solve(x * 1.2 = 60, x, 0, 100)은 부가가치세 20%를 더해 60이 되는 세전 가격을 0과 100 사이에서 찾아요. cross, identity, shape, transpose, inverse, trace, rank, eigenvalues, qr, lu, svd는 벡터와 행렬을 참고하세요. 수식으로 나타낸 도함수와 방정식 풀이 및 적분 기능의 한계는 합, 방정식 풀이, 미적분과 고급 수학: 기능과 한계를 참고하세요.
복소수
abs(3 + 4i) 결과 5complex(3, 4) 결과 3 + 4iconj(3 + 4i) 결과 3 - 4ireal(3 + 4i) 결과 3imag(3 + 4i) 결과 4arg(z)는 복소수의 각도를 라디안으로 줘요. 복소수를 참고하세요.
날짜와 차량
easter(2030) 결과 April 21, 2030tyre_speed(205, 55, 16, 1000 rpm) in km/h 결과 119.1103438682 km/heaster(year)는 해당 연도의 서방 교회 부활절 일요일을 주며, Easter 2030 표현과 같은 날짜예요. easter(2030) + 1 day처럼 그 날짜에서 바로 날수를 더하거나 뺄 수 있어요. 날짜와 달력을 참고하세요. tyre_speed는 타이어 폭(밀리미터), 편평비(퍼센트), 림 크기(인치), 바퀴의 회전 속도를 받아요. 요리, 소리, 화면, 기계를 참고하세요.