aboutsummaryrefslogtreecommitdiff
path: root/biginttest.py
diff options
context:
space:
mode:
Diffstat (limited to 'biginttest.py')
-rwxr-xr-xbiginttest.py39
1 files changed, 0 insertions, 39 deletions
diff --git a/biginttest.py b/biginttest.py
deleted file mode 100755
index 71c5417..0000000
--- a/biginttest.py
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/env python3
-import sys, random, subprocess
-
-ntimes=10000
-maxn=1e100
-
-def check(desc,x,y):
- if x==y: return
- print("{}: {} != {}".format(desc,x,y))
- assert False
-
-def gendata():
- for _ in range(ntimes):
- yield random.randint(-maxn,maxn), random.randint(-maxn,maxn)
-
-def proctest():
- proc=subprocess.Popen(["./main"],stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=sys.stderr)
-
- for (a,b) in gendata():
- proc.stdin.write("div {} {}\n".format(a,b).encode("ascii"))
- proc.stdin.write("mod {} {}\n".format(a,b).encode("ascii"))
- proc.stdin.flush()
-
- q=int(proc.stdout.readline())
- r=int(proc.stdout.readline())
- if r<0 or r>=abs(b) or a!=q*b+r:
- print("Error: {} divmod {}".format(a,b))
- print("Diff: {}".format(a-q*b-r))
- sys.exit(1)
-
- proc.kill()
-
-def justprint():
- for (a,b) in gendata():
- print("div {} {}".format(a,b))
- print("mod {} {}".format(a,b))
-
-#justprint()
-proctest()