lcm 6 7.2

Oct. 25th, 2011 12:35 pm
[personal profile] gdsfh
Исходный вопрос: [personal profile] nicka_startcev: Какое наименьшее общее кратное у 6 и 7.2 ?
Реализация на C++, обсуждение double: [profile] udpn: Дробная арифметика
Реализация на OCaml, чисто для разминки/отвлечения:

open Cd_All;
open Num;
open Num_as_int;

value t = tnum
;

value rec gcd x y =
  if t#eq y zero
  then x
  else gcd y (mod_num x y)
;

value lcm x y = x * y / (gcd x y)
;

value main () =
  let (a, b) = Tuple2.monomap num_of_string ("6", "72/10") in
  Printf.printf "(lcm %s %s) = %s\n%!"
    (t#show a)
    (t#show b)
    (t#show & lcm a b)
;

value () = main ()
;


$ ./main.byte
(lcm 6 36/5) = 36


Репка тут.

Profile

gdsfh

August 2013

S M T W T F S
    123
45678910
111213 14151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 9th, 2025 07:00 pm
Powered by Dreamwidth Studios