diff options
author | Nguyễn Gia Phong <vn.mcsinyx@gmail.com> | 2019-12-15 15:09:13 +0700 |
---|---|---|
committer | Nguyễn Gia Phong <vn.mcsinyx@gmail.com> | 2019-12-15 15:09:13 +0700 |
commit | 9e28e4c7b67c54229df11d355047ac8a88ea1817 (patch) | |
tree | 0d9d40db69613c2c49564a3f1987a005d61f4db3 /THT/C/TP-2018/func.scm | |
parent | 67393f42f41ab92219deb549f711121c4dab845b (diff) | |
download | cp-9e28e4c7b67c54229df11d355047ac8a88ea1817.tar.gz |
Normalize pathname
Diffstat (limited to 'THT/C/TP-2018/func.scm')
-rw-r--r-- | THT/C/TP-2018/func.scm | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/THT/C/TP-2018/func.scm b/THT/C/TP-2018/func.scm deleted file mode 100644 index a7d0af5..0000000 --- a/THT/C/TP-2018/func.scm +++ /dev/null @@ -1,35 +0,0 @@ -(define (func k r p q m) - (define (func-iter a b c d count) - (display (cons a b)) - (newline) - (cond ((= count 0) (cons (remainder b m) - (remainder a m))) - ((even? count) (func-iter (remainder a m) - (remainder b m) - (remainder (+ (* c c) (* d d)) m) - (remainder (+ (* 2 c d) (* d d r)) m) - (/ count 2))) - (else (func-iter (remainder (+ (* b d) (* a d r) (* a c)) m) - (remainder (+ (* b c) (* a d)) m) - (remainder c m) - (remainder d m) - (- count 1))))) - (let ((g (gcd p q))) - (func-iter (/ q g) (/ p g) 0 1 (- k 1)))) - -(define (iter) - (let* ((k (read)) - (r (read)) - (p (read)) - (q (read)) - (m (read))) - (if (not (eof-object? m)) - (let ((c (func k r p q m))) - (display (car c)) - (display " ") - (display (cdr c)) - (newline) - (iter))))) - -(with-input-from-file "FUNC.INP" - (lambda () (with-output-to-file "FUNC.OUT" iter))) |