cython
1import sys
2
3
4def modobj(obj2, obj3):
5"""
6>>> modobj(9,2)
71
8>>> modobj('%d', 5)
9'5'
10>>> modobj(1, 0) # doctest: +ELLIPSIS
11Traceback (most recent call last):
12ZeroDivisionError: integer... by zero
13"""
14obj1 = obj2 % obj3
15return obj1
16
17
18def mod_10_obj(int2):
19"""
20>>> mod_10_obj(0) # doctest: +ELLIPSIS
21Traceback (most recent call last):
22ZeroDivisionError: ... by zero
23>>> 10 % 1
240
25>>> mod_10_obj(1)
260
27>>> mod_10_obj(3)
281
29>>> 10 % -1
300
31>>> mod_10_obj(-1)
320
33>>> mod_10_obj(-10)
340
35"""
36int1 = 10 % int2
37return int1
38
39
40def mod_obj_10(int2):
41"""
42>>> 0 % 10
430
44>>> mod_obj_10(0)
450
46>>> 1 % 10
471
48>>> mod_obj_10(1)
491
50>>> (-1) % 10
519
52>>> mod_obj_10(-1)
539
54>>> 9 % 10
559
56>>> mod_obj_10(9)
579
58>>> 10 % 10
590
60>>> mod_obj_10(10)
610
62>>> (-10) % 10
630
64>>> mod_obj_10(-10)
650
66>>> (-12) % 10
678
68>>> mod_obj_10(-12)
698
70>>> 10002 % 10
712
72>>> mod_obj_10(10002)
732
74>>> int((2**25) % 10)
752
76>>> int(mod_obj_10(2**25))
772
78>>> int((-2**25) % 10)
798
80>>> int(mod_obj_10(-2**25))
818
82>>> int((-2**31-1) % 10)
831
84>>> int(mod_obj_10(int(-2**31-1)))
851
86>>> int((2**50) % 10)
874
88>>> int(mod_obj_10(2**50))
894
90>>> int((-2**50) % 10)
916
92>>> int(mod_obj_10(-2**50))
936
94>>> int((-2**63-1) % 10)
951
96>>> int(mod_obj_10(-2**63-1))
971
98>>> int((2**200) % 10)
996
100>>> int(mod_obj_10(2**200))
1016
102>>> int((-2**200) % 10)
1034
104>>> int(mod_obj_10(-2**200))
1054
106"""
107int1 = int2 % 10
108return int1
109
110
111def mod_obj_17(int2):
112"""
113>>> 0 % 17
1140
115>>> mod_obj_17(0)
1160
117>>> 1 % 17
1181
119>>> mod_obj_17(1)
1201
121>>> (-1) % 17
12216
123>>> mod_obj_17(-1)
12416
125>>> 9 % 17
1269
127>>> mod_obj_17(16)
12816
129>>> 17 % 17
1300
131>>> mod_obj_17(17)
1320
133>>> (-17) % 17
1340
135>>> mod_obj_17(-17)
1360
137>>> (-18) % 17
13816
139>>> mod_obj_17(-18)
14016
141>>> 10002 % 17
1426
143>>> mod_obj_17(10002)
1446
145>>> int((2**25) % 17)
1462
147>>> int(mod_obj_17(2**25))
1482
149>>> int((-2**25) % 17)
15015
151>>> int(mod_obj_17(-2**25))
15215
153>>> int((-2**31-1) % 17)
1547
155>>> int(mod_obj_17(int(-2**31-1)))
1567
157>>> int((2**50) % 17)
1584
159>>> int(mod_obj_17(2**50))
1604
161>>> int((-2**50) % 17)
16213
163>>> int(mod_obj_17(-2**50))
16413
165>>> int((-2**63-1) % 17)
1667
167>>> int(mod_obj_17(-2**63-1))
1687
169>>> int((2**200) % 17)
1701
171>>> int(mod_obj_17(2**200))
1721
173>>> int((-2**200) % 17)
17416
175>>> int(mod_obj_17(-2**200))
17616
177"""
178int1 = int2 % 17
179return int1
180
181
182def mod_int_17(int int2):
183"""
184>>> 0 % 17
1850
186>>> mod_int_17(0)
1870
188>>> 1 % 17
1891
190>>> mod_int_17(1)
1911
192>>> (-1) % 17
19316
194>>> mod_int_17(-1)
19516
196>>> 9 % 17
1979
198>>> mod_int_17(16)
19916
200>>> 17 % 17
2010
202>>> mod_int_17(17)
2030
204>>> (-17) % 17
2050
206>>> mod_int_17(-17)
2070
208>>> (-18) % 17
20916
210>>> mod_int_17(-18)
21116
212>>> 10002 % 17
2136
214>>> mod_int_17(10002)
2156
216>>> int((2**25) % 17)
2172
218>>> int(mod_int_17(2**25))
2192
220>>> int((-2**25) % 17)
22115
222>>> int(mod_int_17(-2**25))
22315
224"""
225int1 = int2 % 17
226return int1
227
228
229def mod_obj_m2(int2):
230"""
231>>> 0 % -2
2320
233>>> mod_obj_m2(0)
2340
235>>> 1 % -2
236-1
237>>> mod_obj_m2(1)
238-1
239>>> 9 % -2
240-1
241>>> mod_obj_m2(9)
242-1
243"""
244int1 = int2 % -2
245return int1
246
247
248def mod_obj_m2f(obj2):
249"""
250>>> 0 % -2.0 == 0.0 # -0.0 in Py2.7+
251True
252>>> mod_obj_m2f(0)
253-0.0
254>>> 1 % -2.0
255-1.0
256>>> mod_obj_m2f(1)
257-1.0
258>>> 9 % -2.0
259-1.0
260>>> mod_obj_m2f(9)
261-1.0
262"""
263result = obj2 % -2.0
264return result
265
266
267def modint(int int2, int int3):
268"""
269>>> modint(9,2)
2701
271"""
272cdef int int1
273int1 = int2 % int3
274return int1
275
276
277def modptr():
278"""
279>>> modptr()
280b'spameggs'
281"""
282cdef char *str2, *str3
283str2 = "spam%s"
284str3 = "eggs"
285obj1 = str2 % str3
286return obj1
287
288
289def mod_bigint(obj):
290"""
291>>> mod_bigint(3316000000000)
292319
293"""
294result = obj % 999
295return result
296