diff options
author | Raphael McSinyx <vn.mcsinyx@gmail.com> | 2017-01-04 11:21:47 +0700 |
---|---|---|
committer | Raphael McSinyx <vn.mcsinyx@gmail.com> | 2017-01-04 11:21:47 +0700 |
commit | 15b38076cc08d89024864252e99e10fe6f597196 (patch) | |
tree | 07762f0368bebeff1f2bb20604e2fd690cab2c69 /9/TP-HN-2014/cau1.pas | |
parent | 57d767cf4e4d5b83645bda2c4e398fdd76d059e1 (diff) | |
download | cp-15b38076cc08d89024864252e99e10fe6f597196.tar.gz |
Add 9/TP-HN-2014
Diffstat (limited to '9/TP-HN-2014/cau1.pas')
-rw-r--r-- | 9/TP-HN-2014/cau1.pas | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/9/TP-HN-2014/cau1.pas b/9/TP-HN-2014/cau1.pas new file mode 100644 index 0000000..466d4c4 --- /dev/null +++ b/9/TP-HN-2014/cau1.pas @@ -0,0 +1,46 @@ +var + f: text; + a, b, g: int64; + c, d: smallint; + + +function gcd(x, y: int64): int64; + var z: int64; + + begin + while y <> 0 do + begin + z := y; + y := x mod y; + x := z + end; + + gcd := a + end; + + +begin + assign(f, 'CAU1.INP'); + reset(f); + read(f, a, b, c, d); + close(f); + + a := a * d - c * b; + b := b * d; + + g := gcd(a, b); + + a := a div g; + b := b div g; + + if b < 0 then + begin + a := -a; + b := -b + end; + + assign(f, 'CAU1.OUT'); + rewrite(f); + writeln(f, a, ' ', b); + close(f) +end. |