codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
data G = G { fs :: Int, sn :: Int } deriving (Show) gsum a b = G (fs a + fs b) (sn a + sn b) gdif a b = G (fs a - fs b) (sn a - sn b) gmul a b = G (o a b) (i a b) gdiv a b = G (x o a b) (x i a b) where n = fromIntegral $ fs b ^ 2 + sn b ^ 2 x f a b = round $ (fromIntegral $ f a b) / n grem a b = let q = gdiv a b in gdif a (gmul q b) o a b = fs a * fs b - sn a * sn b i a b = fs a * sn b + sn a * fs b main = let a = G 10 20; b = G 3 4 in (print $ (gsum a b, gdif a b, gmul a b, gdiv a b, grem a b)) >> (print $ gsum (grem a b) (gmul (gdiv a b) b))
Private
[
?
]
Run code
Submit