Formula Calculator — 나만의 공식을 저장하는 계산기#

원래 이 위젯 코너의 초심은 실생활에 쓸만한 도구를 만드는 것이었습니다. 키보드를 피아노로 만들거나 글자를 하늘로 날리는 실험들도 즐거웠지만, 솔직히 “매일 쓰는 도구"와는 거리가 있었죠. 그런데 이 계산기를 만들고 나서야, 이제서야 실생활에 쓸만한 툴을 하나 만든 기분이 듭니다.
저는 평소 뭔가 계산할 일이 있으면 터미널을 열고 Python REPL을 띄워서 계산하는 편입니다. 3 * 1.08, (70/1.75**2) 같은 걸 그냥 코드처럼 두드리는 거죠. 바꿔 말하면 기존 계산기 앱들이 제 사용 패턴에 잘 안 맞았다는 뜻입니다. 버튼을 하나씩 누르는 방식도, 한 번 계산하면 사라지는 휘발성도 답답했습니다. 그래서 일단 제가 쓰려고 이 계산기 위젯을 만들었습니다.
핵심은 두 가지입니다. ① 식을 한 줄로(코드처럼) 입력하고, ② 자주 쓰는 계산은 공식(함수)으로 저장해 두고 값만 바꿔 끼우는 것. 부가세(금액), bmi(몸무게, 키), 복리(원금, 이율, 연수) 같은 걸 한 번 만들어 두면, 다음부터는 숫자만 넣으면 됩니다. 함수 안에서 다른 함수를 부를 수 있고(합성), if() 조건과 sum(range(...)) 같은 리스트 집계도 됩니다 — 그러면서도 화면은 그냥 계산기입니다.
사용법
- 입력: 화면 위쪽은 출력 전용입니다(모바일에서 OS 키보드가 뜨지 않습니다). 아래 버튼으로 입력하세요. 결과는 입력하는 즉시 아래 줄에 미리 보기로 계산됩니다.
- PC 키보드: 하드웨어 키보드로도 입력됩니다(누르면 해당 버튼이 깜빡입니다). 글자를 그대로 쳐서
sqrt(,sin(같은 함수명도 입력할 수 있어요. 설정 → 키 매핑에서u를 누르면1이 입력되도록 자기 손에 맞게 바꿀 수도 있습니다(키보드가 있는 환경에서만).- 함수: 위쪽 함수 칩을 탭하면 식에 삽입됩니다.
[ƒ](또는 함수 탭)에서 직접 함수를 추가/편집할 수 있고, 식을 입력한 상태에서 [이 식으로 함수 만들기] 를 누르면 그대로 공식이 됩니다(이름은f1,f2…로 자동, 수정 가능).- 저장: 만든 함수와 설정은 이 브라우저에 저장됩니다. 함수셋을 JSON으로 내보내기/가져오기 할 수 있습니다.
- 예시:
sum(range(1,100,1))→ 1부터 100까지 합(5050).if(x>=90, 1, 0)처럼 조건도. 각도는 기본 도(°), 설정에서 라디안으로 전환.