-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhelp.html
297 lines (291 loc) · 12.3 KB
/
help.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
<!DOCTYPE html>
<html lang='en' class=''>
<head>
<title>Help - CLP's Nice Calculator</title>
<link rel="stylesheet" href="help.css"></link>
<meta charset="UTF-8">
<meta name="viewport" content="width-device-width,initial-scale=1.0">
</head>
<body>
<header>
<h1>
CLP's Nice Calculator
</h1>
</header>
<main>
<section>
<p>
This is an <a href="https://en.wikipedia.org/wiki/Reverse_Polish_notation">RPN</a>, or stack-based, calculator.
You put numbers on the stack, and then you do things to them.
</p>
<p>
For example, to work out <em>1 + 3</em>, you'd:
</p>
<ol style="list-style: disc;">
<li>Type <kbd>1</kbd></li>
<li>Press <kbd>Enter</kbd></li>
<li>Type <kbd>3</kbd></li>
<li>Press <kbd>Enter</kbd></li>
<li>Press <kbd>+</kbd></li>
</ol>
<p>
It's a different way of doing things to a normal calculator, but it can be much more efficient for complicated calculations.
</p>
<p>
This calculator not only displays the results of calculations, but shows you what went into producing them.
</p>
<p>
The display shows the current stack. Input numbers are shown in blue, and operations are shown in yellow.
</p>
<p>
Type a number and press <kbd>Enter</kbd> to push it onto the stack.
</p>
<p>
You can tap any item on the stack to select it, or use the arrow keys to move the selection.
</p>
<p>
When you push a number, it's inserted below the selected item.
</p>
<p>
Input numbers inside an operation can't be deleted, but they can be changed, moved or copied.
</p>
<p>
To change a number inside an operation, select it, type the new value, and press <kbd>Enter</kbd>.
</p>
<p>
When you copy a number, it's given a label to identify it. If you change the value of the number, it changes in all the copies too.
</p>
<p>
Nested operations are folded up by default. Click on an operation to unfold it and see what's inside.
</p>
<p>
Click on the result value of an operation, or press the <kbd>?</kbd> key to see more digits.
</p>
</section>
<section>
<h2>Keyboard commands</h2>
<p>
If you have a keyboard, you can type numbers and operations.
There are also keys for most of the other on-screen buttons.
</p>
<h3>Moving around the interface</h3>
<table>
<thead>
<tr>
<th>Key</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td><kbd>↑</kbd></td>
<td>Select the previous item.</td>
</tr>
<tr>
<td><kbd>↓</kbd></td>
<td>Select the next item.</td>
</tr>
<tr>
<td><kbd>←</kbd></td>
<td>Select the operator above this item.</td>
</tr>
<tr>
<td><kbd>→</kbd></td>
<td>Select this item's first argument.</td>
</tr>
<tr>
<td><kbd>Shift</kbd> <kbd>↑</kbd></td>
<td>Switch to the previous screen of buttons.</td>
</tr>
<tr>
<td><kbd>Shift</kbd> <kbd>↓</kbd></td>
<td>Switch to the next screen of buttons.</td>
</tr>
<tr>
<td><kbd>v</kbd></td>
<td>Show the named item editor.</td>
</tr>
<tr>
<td><kbd>@</kbd></td>
<td>
<p>Search for a named item. Type the item's name. As soon as there's only one named item matching what you've typed, it's pushed to the stack.</p>
<p>For example, if you have items named <code>root</code> and <code>x</code>, then typing <kbd>@</kbd> <kbd>r</kbd> will push <code>root</code> to the stack.</p>
</td>
</tr>
<tr>
<td><kbd>Escape</kbd></td>
<td>
<p>If in the custom function or named value editors, return to the calculator screen.</p>
<p>If editing the name of an item, stop editing it.</p>
</td>
</tr>
</tbody>
</table>
<h3>Manipulating the stack</h3>
<table>
<thead>
<tr>
<th>Key</th>
<th>Command</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td><kbd>Enter</kbd></td>
<td>Enter</td>
<td>Push the number in the input to the stack, below the selected item.</td>
</tr>
<tr>
<td><kbd>⌫</kbd></td>
<td>Backspace</td>
<td>Delete the last character of the input.</td>
</tr>
<tr>
<td><kbd>`</kbd></td>
<td>±</td>
<td>Change the sign of the number being entered.</td>
</tr>
<tr>
<td><kbd>Delete</kbd></td>
<td>Drop</td>
<td>Remove the selected item from the stack.</td>
</tr>
<tr>
<td><kbd>w</kbd></td>
<td>Swap</td>
<td>The selected item and the one above it exchange places.</td>
</tr>
<tr>
<td><kbd>d</kbd></td>
<td>Copy</td>
<td>Add a copy of the selected item to the bottom of the stack. Copies of the same number are linked - if you change the value for one, it changes in all the copies too.</td>
</tr>
<tr>
<td><kbd>u</kbd></td>
<td>Undo</td>
<td>When you've selected an operation, undo it and leave its arguments in place on the stack.</td>
</tr>
<tr>
<td><kbd>?</kbd></td>
<td>Show more digits</td>
<td>When you've selected an operation, expand the result to show more digits. More digits are shown as you scroll down.</td>
</tr>
<tr>
<td><kbd>n</kbd></td>
<td>Name</td>
<td>Focus the input to change the name of the selected item.</td>
</tr>
</tbody>
</table>
<h3>Arithmetic operations</h3>
<table>
<thead>
<tr>
<th>Key</th>
<th>Command</th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><kbd>+</kbd></td>
<td><math><mi>x</mi> <mo>+</mo> <mi>y</mi></math></td>
</tr>
<tr>
<td><kbd>-</kbd></td>
<td><math><mi>x</mi> <mo>-</mo> <mi>y</mi></math></td>
</tr>
<tr>
<td><kbd>*</kbd></td>
<td><math><mi>x</mi> <mo>×</mo> <mi>y</mi></math></td>
</tr>
<tr>
<td><kbd>/</kbd></td>
<td><math><mi>x</mi> <mo>÷</mo> <mi>y</mi></math></td>
</tr>
<tr>
<td><kbd>s</kbd></td>
<td><math><mo>sin</mo><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></math></td>
</tr>
<tr>
<td><kbd>c</kbd></td>
<td><math><mo>cos</mo><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></math></td>
</tr>
</tr>
<tr>
<td><kbd>t</kbd></td>
<td><math><mo>tan</mo><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></math></td>
</tr>
</tr>
<tr>
<td><kbd>S</kbd></td>
<td><math><msup><mo>sin</mo><mrow><mo>-</mo><mn>1</mn></mrow></msup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></math></td>
</tr>
</tr>
<tr>
<td><kbd>C</kbd></td>
<td><math><msup><mo>cos</mo><mrow><mo>-</mo><mn>1</mn></mrow></msup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></math></td>
</tr>
<tr>
<td><kbd>T</kbd></td>
<td><math><msup><mo>tan</mo><mrow><mo>-</mo><mn>1</mn></mrow></msup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></math></td>
</tr>
<tr>
<td><kbd>^</kbd></td>
<td><math><msup><mi>x</mi><mn>2</mn></msup></math></td>
</tr>
<tr>
<td><kbd>r</kbd></td>
<td><math><msqrt><mi>x</mi></msqrt></math></td>
</tr>
<tr>
<td><kbd>p</kbd></td>
<td><math><msup><mi>x</mi><mi>y</mi></msup></math></td>
</tr>
<tr>
<td><kbd>l</kbd></td>
<td><math><mo>ln</mo><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></math></td>
</tr>
<tr>
<td><kbd>L</kbd></td>
<td><math><mo>log</mo><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow></math></td>
</tr>
<tr>
<td><kbd>e</kbd></td>
<td><math><msup><mi>e</mi><mi>x</mi></msup></math></td>
</tr>
<tr>
<td><kbd>E</kbd></td>
<td><math><msup><mn>10</mn><mi>x</mi></msup></math></td>
</tr>
<tr>
<td><kbd>!</kbd></td>
<td><math><mi>x</mi><mo>!</mo></math></td>
</tr>
<tr>
<td><kbd>m</kbd></td>
<td>Mean</td>
<td>The mean of all the items on the stack.</td>
</tr>
<tr>
<td><kbd>%</kbd></td>
<td>Mod</td>
<td>The remainder on dividing <code>x</code> by <code>y</code></td>
</tr>
<tr>
<td><kbd>P</kbd></td>
<td><math><mn>π</mn></math></td>
<td>Add the constant π to the stack</td>
</tr>
</tbody>
</table>
</section>
</main>
<footer>
<p>
Made by <a href="http://somethingorotherwhatever.com">Christian Lawson-Perfect</a>.
</p>
</footer>
</body>
</html>