diff options
Diffstat (limited to 'biginttest.py')
-rwxr-xr-x | biginttest.py | 39 |
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() |