xref: /freebsd/contrib/bc/tests/bc/assignments.txt (revision 3aa99676)
1define x(x) {
2	return (i++ + x)
3}
4define y(x) {
5	return (++i + x)
6}
7define z(x) {
8	return (i *= 2) + x
9}
10
11i++
12i--
13++i
14--i
15
16(i++)
17(i--)
18(++i)
19(--i)
20
21i += 1
22i
23i -= -4
24i
25i *= 5
26i
27i /= 12.5
28i
29
30i = 0
31
32(i += 1)
33(i -= -4)
34(i *= 5)
35(i /= 12.5)
36
37i = 0
38
39a[i++] += ++i
40i--
41i--
42i
43a[i]
44
45a[i]++
46a[i]--
47++a[i]
48--a[i]
49
50i += 4
51i
52
53sqrt(i *= 4)
54i
55length(i /= 2)
56i
57
58i = 4
59scale(i /= 2)
60i
61
62i = -1
63
64abs(i--)
65abs(--i)
66abs(++i)
67abs(i++)
68
69i = -i
70
71a = 4
72
73x(a)
74i
75
76x(a *= 5)
77a
78i
79
80a = 4
81
82y(a)
83i
84
85y(a -= 2)
86a
87i
88
89a = 4
90
91z(a)
92i
93
94z(a /= 0.5)
95a
96i
97
98i = 1
99
100if (i -= 1) print "true\n"
101else print "false\n"
102
103if (i += 1) print "true\n"
104else print "false\n"
105
106i = 3
107
108while (i -= 2) print "i: ", i += 1, "\n"
109
110a = 5
111
112for (i = 5; i-= 1; --a) print "i: ", i, "; a: ", a, "\n"
113
114define void t(x, y) {
115	print "x: ", x, "; y: ", y, "\n"
116}
117
118t(i++, i++)
119i
120
121t(++i, ++i)
122i
123