본문으로 건너뛰기
Varlig 가이드
Varlig 홈

계산 줄 작성하기

이 페이지에서는 모든 계산 블록의 바탕이 되는 기본을 다뤄요. 줄을 어떻게 읽는지, 계산 옆에 메모를 남기는 방법, 값에 이름을 붙여 다시 쓰는 방법, 조건에 따라 줄의 결과를 바꾸는 방법을 알아봐요. Varlig에서 계산을 처음 해 본다면 여기서 시작하고, 이름이나 주석이 예상대로 작동하지 않을 때도 다시 찾아오세요.

한 줄에 식 하나

계산은 메모 안의 계산 블록에 적어요. ```calc 펜스를 입력하거나 ⌘Y를 눌러 블록을 삽입하세요. 블록의 각 줄이 하나의 계산이고, 결과는 줄 옆에 표시돼요.

calc
4,500 * 5 결과 ₩22,500
45 min + 1 hour 20 min 결과 2 hours 5 min
1.5 litres in ml 결과 1,500 mL

빈 줄과 주석 줄에는 결과가 없으므로, 블록에 여백을 두거나 설명을 곁들이며 써 내려갈 수 있어요.

Varlig는 먼저 ₩45,000 with 10% VAT 같은 일상 표현까지 포함해 줄 전체를 수식으로 읽어요. 그렇게 읽히지 않으면 알아보지 못한 단어를 제쳐 두기 때문에, 5 사과 + 3 오렌지도 8이 돼요. 빠르게 적어 둘 때는 편리하지만, 설명 단어가 표현이나 단위 이름과 겹칠 수 있어요. 줄이 무엇을 위한 것인지 적고 싶다면 이어서 설명할 주석이나 라벨을 사용하세요. 자세한 내용은 Varlig가 표현을 읽는 방법을 참고하세요.

주석

주석은 계산기가 무시하는 텍스트예요. 쓰는 방법은 세 가지가 있어요.

형식 무시되는 부분
해시 주석 월세 * 12 # 1년 치 또는 # 예산 #부터 줄 끝까지
슬래시 주석 월세 * 12 // 1년 치 //부터 줄 끝까지
따옴표 메모 "플랫 화이트" ₩4,500 * 5 줄 어디에 있든 큰따옴표 안의 모든 내용
calc
# 이번 주 장보기
우유 = 2,980
식빵 = 3,500 // 사워도우
달걀 = 6,900 "동물복지"
우유 + 식빵 + 달걀 # 다른 물건은 빼고 결과 ₩13,380

#으로 시작하는 줄은 처음부터 끝까지 주석이므로, 블록 안에서 소제목처럼 쓰기 좋아요.

라벨

라벨은 줄 맨 앞에 쓰는 짧은 말과 그 뒤의 콜론, 공백이에요. 수식의 일부가 되지 않고 결과가 무엇인지 설명해 줘요.

calc
전기요금 = 42,000
가스요금 = 38,000
전기와 가스 요금: 전기요금 + 가스요금 결과 ₩80,000
카페 계산: 5,500 + 4,000 결과 ₩9,500

라벨에는 문자(악센트가 붙은 문자 포함), 공백, 밑줄을 쓸 수 있지만 숫자는 쓸 수 없어요.

라벨은 이름을 만들지 않아요. 전기와 가스 요금: 전기요금 + 가스요금이라고 써도 전기와 가스 요금이라는 값은 생기지 않아요. 결과를 다시 쓰고 싶다면 =를 사용하세요. 또한 대입 앞에 라벨을 붙이지 마세요. 공과금: 전기요금 = ₩42,000이라고 쓰면 금액은 표시되지만 전기요금은 저장되지 않아요.

대입

=로 값에 이름을 붙여요. 그 줄에도 값이 표시되므로 확인하면서 진행할 수 있어요.

calc
가격 = 65,000 결과 ₩65,000
가격 + 20% 결과 ₩78,000

이미 정의한 이름을 갱신하려면 +=, -=, *=, /=를 사용하세요.

calc
모임 회비 = 50,000
모임 회비 += 30,000 결과 ₩80,000
모임 회비 -= 18,500 결과 ₩61,500
분량 = 4
분량 *= 3 결과 12
밀가루 = 750 g
밀가루 /= 3 결과 250 g

오른쪽 식이 실패하면 그 이름에는 오류가 담기고, 이름에 값을 다시 대입할 때까지 그 이름을 쓰는 모든 줄에 같은 오류가 표시돼요.

calc
손님 = 0
인당 비용 = 60,000 / 손님 결과 Error: divide by zero
인당 비용 + 5,000 결과 Error: divide by zero

이름

이름은 여러 단어로 지을 수 있고, 악센트가 붙은 문자와 라틴 문자가 아닌 문자, 숫자, 밑줄, 이모지를 포함할 수 있어요.

calc
플랫 화이트 = 5,000
플랫 화이트 * 5 결과 ₩25,000
crème brûlée = 7,500
crème brûlée * 2 결과 ₩15,000
🍎 가격 = 1,200
🍎 가격 * 6 결과 ₩7,200
q1 후원금 = 45,000
q2 후원금 = 52,000
q1 후원금 + q2 후원금 결과 ₩97,000
침실_너비 = 3.2 m
침실_너비 * 2 결과 6.4 m

이름에는 to, in, needed처럼 Varlig가 다른 곳에서 쓰는 단어를 넣을 수 있고, floor 같은 내장 함수의 이름을 빌려 쓸 수도 있어요. 값으로 쓰이는 자리에서는 Varlig가 내가 정한 값을 읽어요.

calc
time to work = 25 min
time to work * 10 결과 250 min
paint needed = 12.44 L
paint needed to 1 dp 결과 12.4 L
floor = 12
floor * 2 결과 24 m²
floor(3.7) 결과 3

floor(3.7)처럼 뒤에 괄호가 오면 함수가 원래 하던 일을 그대로 해요.

이름이 영어 숫자 단어로 끝나도 돼요. 그래서 가격을 메뉴에 적힌 그대로 쓸 수 있어요.

calc
table for four = 96,000
table for four / 4 결과 ₩24,000

이름은 영문 대소문자를 구분해요. eggsEggs는 서로 다른 값이에요.

시급이나 세율처럼 모든 메모에서 쓰고 싶은 이름이 있다면, 메모마다 반복해서 쓰지 말고 Settings의 전역 정의에 추가하세요.

내장 단어와 겹치는 이름

내가 정의한 이름은 단위, 숫자 단어, 상수처럼 철자가 같은 다른 것보다 우선해요. 그래도 흔히 쓰는 이름이 양을 건드리지는 않아요. 영어 복수형 이름이나 단위 바로 앞에 쓴 숫자는 그 대상의 개수를 세고, tip이나 tax 앞의 퍼센트는 팁이나 세금을 나타내요. 그래서 hours, nights, tip이라는 값이 있어도 다음 줄들은 바뀌지 않아요.

calc
시급 = 12,000 / hour
hours = 7.5
시급 * 7.5 hours 결과 ₩90,000
nights = 14
65,000/night * 14 nights 결과 ₩910,000
tip = $12.69
$84.60 + 18% tip 결과 $99.83

단어 위에 포인터를 올리면 Varlig가 어떻게 읽었는지 볼 수 있어요. 시급 * 7.5 hours에서는 "Counts hours here, not the variable hours = 7.5."가 표시돼요. 줄의 다른 자리에서는 split ₩90,000 among people처럼 이름이 내가 정한 값이에요.

다음과 같은 경우에는 내가 정의한 이름 때문에 줄의 의미가 바뀌어요.

  • 한 글자 이름은 항상 내 값을 뜻해요. 그래서 m = 3 다음에는 2 m가 2미터가 아니라 6이에요.
  • 숫자 뒤에 오는 이름이 복수형이 아니면 곱해져요. 그래서 너비 = 3 다음에는 2 너비가 6이에요. 힌트에서 뜻이 분명하도록 2 * 너비로 쓰라고 제안해요.
  • 숫자 단어와 상수도 대체돼요. one = 7 다음에는 one times two가 14예요.

두 가지 습관만 들이면 대부분의 뜻밖의 결과를 피할 수 있어요.

  • m, s, h, in 같은 단위 기호만으로 이름을 짓거나, pi, one, i 같은 상수와 숫자 단어를 다시 쓰지 마세요.
  • 근무 시간, 일당, 달린 거리처럼 뜻이 분명한 이름을 쓰세요.

문서 순서

각 줄은 자기보다 위에서 정의된 이름을 볼 수 있어요. 이름은 같은 메모의 뒤쪽 계산 블록으로도 이어지므로, 입력값을 한 번만 정해 두고 페이지 아래쪽에서 계속 쓸 수 있어요.

calc
가격 = 20,000
수량 = 3
비용 = 가격 * 수량 결과 ₩60,000
가격 = 25,000
가격 * 수량 결과 ₩75,000
비용 결과 ₩60,000

가격을 다시 정의해도 앞쪽의 비용 줄은 바뀌지 않아요. 비용은 그 시점의 가격으로 계산되었기 때문이에요. 앞선 계산의 결과를 바꾸려면 입력값이 정의된 줄을 고치세요.

바로 위의 결과

prev는 가장 가까운 위쪽 줄의 결과이고, ansans라는 이름의 값을 따로 만들지 않았다면 같은 뜻이에요. 앞 결과에 이어서 간단히 계산할 때 편리해요.

calc
65,000 * 12 결과 ₩780,000
prev / 52 결과 ₩15,000
ans + 2,000 결과 ₩17,000

여러 줄을 한꺼번에 더하려면 한 줄에 sum이나 total만 쓰세요. 위쪽 줄 합산하기를 참고하세요.

범위 초기화

---만 있는 줄은 새로운 범위를 시작해요. 그 위에서 정의한 이름, 사용자 정의 단위, 직접 만든 함수는 그 아래에서 더 이상 보이지 않아요. 한 메모에서 두 가지 경우를 비교할 때 서로의 값이 섞이지 않아서 유용해요.

calc
# 방안 A: 시내 원룸
월세 = 750,000
교통비 = 60,000
월세 + 교통비 결과 ₩810,000
---
# 방안 B: 외곽 원룸
월세 = 550,000
교통비 = 150,000
월세 + 교통비 결과 ₩700,000

--- 아래에서는 교통비를 다시 정의해야 해요. 잊어버리면 그 이름을 쓰는 줄이 참조할 값이 없어요.

조건문

if … then … else …는 비교 결과에 따라 두 값 중 하나를 골라요. 단독으로 쓸 수도 있고, 결과를 이름에 대입할 수도 있어요.

calc
장바구니 = 34,500
배송비 = if 장바구니 >= 40,000 then 0 else 3,000 결과 ₩3,000
장바구니 + 배송비 결과 ₩37,500

결과가 셋 이상이면 else if를 이어 붙이세요.

calc
장바구니 = 34,500
if 장바구니 < 20,000 then 4,000 else if 장바구니 < 40,000 then 2,500 else 0 결과 ₩2,500

선택된 쪽만 계산되므로, 다른 쪽에는 실패할 수 있는 식이 들어 있어도 괜찮아요.

calc
손님 = 0
if 손님 > 0 then 120,000 / 손님 else 0 결과 ₩0

뒤에 붙이는 if와 unless

조건을 값 뒤에 둘 수도 있어요. value if condition은 조건이 참일 때 값을 표시하고, value unless condition은 조건이 거짓일 때 값을 표시해요. 어느 쪽이든 그렇지 않으면 줄에 아무것도 표시되지 않아요.

calc
장바구니 = 34,500
3,000 if 장바구니 < 40,000 결과 ₩3,000
3,000 unless 장바구니 >= 40,000 결과 ₩3,000

조건문 안에서 대입하기

양쪽 분기 모두 같은 이름에 대입할 수 있어요.

calc
장바구니 = 34,500
if 장바구니 >= 40,000 then 택배비 = 0 else 택배비 = 3,000 결과 ₩3,000
택배비 결과 ₩3,000

then 분기만 있으면 조건이 참일 때만 대입이 일어나고, 그렇지 않으면 이름이 원래 값을 유지해요.

calc
장바구니 = 34,500
적립금 = 0
if 장바구니 > 30,000 then 적립금 = 500 결과 500
적립금 결과 500

>= 같은 비교와 &&, || 연산자는 연산자, 비교, 조건문에서 다뤄요.

모두 합쳐 보기

메모에 적어 둘 법한 작은 프리랜서 청구서예요.

calc
# 3월 청구서
일당 = 350,000
작업일수 = 6
교통비 = 120,000 // KTX 요금
작업비 = 일당 * 작업일수 결과 ₩2.1M
소계 = 작업비 + 교통비 결과 ₩2.22M
과세사업자 = true
부가세 = if 과세사업자 then 소계 * 10% else 0 결과 ₩222,000
청구 합계: 소계 + 부가세 결과 ₩2.442M

모든 입력값에 이름이 있으니 다음 달에는 작업일수교통비만 바꾸면 청구서의 나머지가 따라 바뀌어요. 주석과 라벨 덕분에 블록을 읽기 쉽고, 조건문 덕분에 부가세를 청구하든 안 하든 같은 메모를 쓸 수 있어요.