summaryrefslogtreecommitdiff
path: root/res/nist/expressions.nc
diff options
context:
space:
mode:
authorLibravatar Martin Michalec <martin@michalec.dev>2026-02-22 03:18:43 +0000
committerLibravatar Martin Michalec <martin@michalec.dev>2026-02-22 03:18:43 +0000
commit627a8943856c70ef12232e5dbaa1397587198f98 (patch)
treeaba005dc18caed4cb77e3578243a9733757d884f /res/nist/expressions.nc
parentadd build.sh (diff)
downloadrs274ngc-master.tar.gz
add RS274/NGC samplesHEADmaster
Diffstat (limited to 'res/nist/expressions.nc')
-rw-r--r--res/nist/expressions.nc48
1 files changed, 48 insertions, 0 deletions
diff --git a/res/nist/expressions.nc b/res/nist/expressions.nc
new file mode 100644
index 0000000..68e7c16
--- /dev/null
+++ b/res/nist/expressions.nc
@@ -0,0 +1,48 @@
1n0010 g21 g1 x3 f20 (expression test)
2n0020 x [1 + 2] (x should be 3)
3n0030 x [1 - 2] (x should be -1)
4n0040 x [1 --3] (x should be 4)
5n0050 x [2/5] (x should be 0.40)
6n0060 x [3.0 * 5] (x should be 15)
7n0070 x [0 OR 0] (x should be 0)
8n0080 x [0 OR 1] (x should be 1)
9n0090 x [2 or 2] (x should be 1)
10n0100 x [0 AND 0] (x should be 0)
11n0110 x [0 AND 1] (x should be 0)
12n0120 x [2 and 2] (x should be 1)
13n0130 x [0 XOR 0] (x should be 0)
14n0140 x [0 XOR 1] (x should be 1)
15n0150 x [2 xor 2] (x should be 0)
16n0160 x [15 MOD 4.0] (x should be 3)
17n0170 x [1 + 2 * 3 - 4 / 5] (x should be 6.2)
18n0180 x sin[30] (x should be 0.5)
19n0190 x cos[0.0] (x should be 1.0)
20n0200 x tan[60.0] (x should be 1.7321)
21n0210 x sqrt[3] (x should be 1.7321)
22n0220 x atan[1.7321]/[1.0] (x should be 60.0)
23n0230 x asin[1.0] (x should be 90.0)
24n0240 x acos[0.707107] (x should be 45.0000)
25n0250 x abs[20.0] (x should be 20)
26n0260 x abs[-1.23] (x should be 1.23)
27n0270 x round[-0.499] (x should be 0)
28n0280 x round[-0.5001] (x should be -1.0)
29n0290 x round[2.444] (x should be 2)
30n0300 x round[9.975] (x should be 10)
31n0310 x fix[-0.499] (x should be -1.0)
32n0320 x fix[-0.5001] (x should be -1.0)
33n0330 x fix[2.444] (x should be 2)
34n0340 x fix[9.975] (x should be 9)
35n0350 x fup[-0.499] (x should be 0.0)
36n0360 x fup[-0.5001] (x should be 0.0)
37n0370 x fup[2.444] (x should be 3)
38n0380 x fup[9.975] (x should be 10)
39n0390 x exp[2.3026] (x should be 10)
40n0400 x ln[10.0] (x should be 2.3026)
41n0410 x [2 ** 3.0] #1=2.0 (x should be 8.0)
42n0420 ##1 = 0.375 (#1 is 2, so parameter 2 is set to 0.375)
43n0430 x #2 (x should be 0.375) #3=7.0
44n0440 #3=5.0 x #3 (parameters set in parallel, so x should be 7, not 5)
45n0450 x #3 #3=1.1 (parameters set in parallel, so x should be 5, not 1.1)
46n0460 x [2 + asin[1/2.1+-0.345] / [atan[fix[4.4] * 2.1 * sqrt[16.8]] /[-18]]**2]
47n0470 x sqrt[3**2 + 4**2] (x should be 5.0)
48n0480 m2