xref: /freebsd/contrib/bc/tests/bc/errors/17.txt (revision e0c4386e)
1print "Gathering array...\n"
2
3s =	seed
4
5sum = 0
6
7for (i = 0; i < 100; ++i) {
8	a[i] = rand()
9	sum += a[i]
10	b[i] = irand(sum)
11}
12
13print "Testing implementation...\n"
14
15if (maxrand() >= 2^64 - 1) {
16
17	seed = 54.86785590782347282592869373784717814475564948862907968939159536927733440\
18	          901359008180088183692646452982444316148757934570312500000
19
20	ibase = G
21	obase = G
22
23	for (i = 0; i < 64; ++i) {
24		rand()
25	}
26
27	7B47F409
28	BA1D3330
29	83D2F293
30	BFA4784B
31	CBED606E
32	BFC6A3AD
33	812FFF6D
34	E61F305A
35	F9384B90
36	32DB86FE
37	1DC035F9
38	ED786826
39	3822441D
40	2BA113D7
41	1C5B818B
42	A233956A
43	84DA65E3
44	CED67292
45	B2C0FE06
46	91817130
47
48	55FE8917
49	47E92091
50	486AF299
51	B1E882BB
52	C261E845
53	1A9B90F6
54	7964E884
55	5F36D7A4
56	1EE2052D
57	8519F5D5
58	293D4E4F
59	6D8F99FC
60	C3421509
61	A06CD7C6
62	E43064D3
63	E20F9BF0
64	401B50B7
65	8EF1FF3E
66	E357E2B2
67	A4AEEE37
68
69	2AD4426A
70	9D11BE94
71	7290C556
72	6E6F3787
73	050C2EE3
74	4FD73703
75	C6FF478B
76	4B1CA1E1
77	1654EA91
78	CD08B2F2
79	F7FF3DA8
80	78B1B8DA
81	A100602C
82	9588585F
83	DA028873
84	66B4F376
85	0E6B4B9A
86	48167094
87	0D58CDA0
88	8F7238BE
89
90	F79983F3
91	07E5D324
92	AD78DF52
93	1532BA74
94	1E4899E2
95	6C75DF64
96	171DDC36
97	F2D8D74A
98	24E6D907
99	4780FD32
100	9ADF408C
101	A25544CF
102	EFC6A738
103	1AA23A54
104	C5A13EBB
105	F739EDC9
106	C3A015FA
107	3D5E1511
108	AFC4D7FB
109	3F413B5E
110
111	4660CB73
112	88FC773F
113	D6BED59C
114	63B3B54A
115	D67D3DDE
116	23394F8B
117	13384B44
118	DD8B3ABC
119	FF59A21E
120	3BB16D7E
121	6E01CB68
122	EC34790E
123	B26C42AD
124	D723C830
125	DFD10FCA
126	7E362AA1
127	826FF323
128	CB8F63B5
129	9B3227E5
130	9A61E339
131}
132else {
133
134	ibase = G
135	obase = G
136
137	86B1DA1D72062B68
138	1304AA46C9853D39
139	A3670E9E0DD50358
140	F9090E529A7DAE00
141	C85B9FD837996F2C
142	606121F8E3919196
143	7CE1C7FF478354BA
144	CBC4AC70E541310E
145	74BE71999EC37F2C
146	B81F9C99A934F1A7
147	120E9901A900C97F
148	0F983BAD4B19F493
149	5934619363660D96
150	D5A7FE2717A2014E
151	6E437241C9E6676E
152	6A75C9DD6329CD29
153	2D9E477683673437
154	51FB0CF3D4405437
155	217BB90392D08B20
156	47C528A018B07A82
157
158	1B4E474C418C835E
159	BDB2BDA74A119ED6
160	C6DB79D0B9E43493
161	C3CF4834E94A41D1
162	AB8312FC7877C7DC
163	094B108133E8B5EC
164	37CA97AC830113BD
165	EF02D7347F9192BF
166	959517DD9896C53A
167	7A80EB7629EFE9F9
168	AE53C23F2B1CF57C
169	CA605CD189F6D5CD
170	921C2704886A9622
171	B68C9FBF826AF7AA
172	73F8C733124772C3
173	6B57F7E459EFBCDF
174	9DE7696DDB6B8E18
175	02CA67560DC26877
176	A24E353080777DEC
177	4D600156763FD65C
178
179	5CDF9C7E26DD2C38
180	6A32443BBBB16774
181	3D8415FFECFB8B7F
182	3090ED9C47@6
183	6DBF241361C3E652
184	2CA9EF5A2AD971FC
185	44FBE937A1CF0FFC
186	DB17CF0577CB7853
187	AA3747D98D31B24C
188	5D9A104C5D7F43F7
189	BAE65E3E293B2C7B
190	16A396F0DB4EF984
191	6DD2BACDC4445A05
192	7B7A13D1858E5CA8
193	F73722BCAA52447C
194	31A2C7BBE77CBA00
195	7FC8AF9003BA1ACE
196	5703F11DD3F235EF
197	FA1952267EF836C7
198	BBFA558C9E2D51E2
199
200	3A29661D8145AF36
201	608DEA6358DABD7C
202	9E34E9E53431B447
203	325A05E35EA524EB
204	63A87CCF0C80ABB1
205	8EA183287A46F292
206	E2AA5F119CBF2A08
207	2F3BEB0DE8B730C8
208	4B8006A928CF8F5B
209	57B8BA85069C201C
210	3422D962DDF59474
211	FD744940BA7366A1
212	23D24B06B5DA4F6F
213	AA187C608319D1DC
214	DC60CA6FEA738B8A
215	C9FC61DF96A769FE
216	82E2457708658A20
217	2BECEC9B3E7D93EC
218	1340DAEC04588952
219	F533446AD5C50B1D
220
221	31FD1C7F434A62CE
222	D16DAEDD1F281A39
223	6B5D9648931D7057
224	62FEE3392DBB06D5
225	0358BC87B00DF25A
226	F3C882D22946175D
227	65BA8F11B4516EFE
228	2DA5A96E626DA4FE
229	DCC669F4CD6121F0
230	7A47FAC054319CA2
231	9661CFEE277284C8
232	01E483A14F4EB23A
233	ADDC115507390607
234	5AB47C343BD3B0BD
235	4882FB3A3957B11F
236	615B7C9C3626DD44
237	F79CF49562969219
238	88C32C194EA78D27
239	DA8AFFE1353FF352
240	A7A3C331A64CB146
241
242	ibase = A
243
244	seed = 54.0950779151573258314404657465246373249101452529430389404296875000
245
246	ibase = G
247
248	for (i = 0; i < 64; ++i) {
249		rand()
250	}
251}
252
253print "Testing array...\n"
254
255ibase = A
256
257seed = s
258
259sum = 0
260
261for (i = 0; i < 100; ++i) {
262	a[i] == rand()
263	sum += a[i]
264	b[i] == irand(sum)
265}
266
267print "Exercising irand()...\n"
268
269scale = 256
270
271pow = (maxrand() + 1) ^ 4
272s =!2^256 + 2^128 + (irand(pow) / pow)
273seed = s
274seed < s
275
276s = -459.125
277seed = s
278seed == -s
279
280irand(0)
281irand(1)
282seed == -s
283irand(maxrand() + 1) <= maxrand()
284
285for (i = 0; i < 200; ++i) {
286	irand(20) < 20
287}
288
289seed = 738
290seed != 738
291
292s = 2398@0625
293seed = s
294seed != s
295
296pow = (maxrand() + 1) ^ 4
297s = 2^2560 + 2^128 + (irand(pow) / pow)
298seed = s
299seed < s
300
301b = 0
302m = maxrand() + 1
303n = m + 1
304
305for (i = 0; !b && i < 100; ++i) {
306	c = irand(n)
307	b = (c != 0 && c != m)
308	if (c >= n) print "irand() result is too large.\n"
309}
310
311b
312
313sqrt(-1)
314