>>77
use bigrat;   # or use Math::BigRat;

$a = 3/4;   # or $a = Math::BigRat->new(3/4);
my($n, $d) = $a->as_parts();   # 1. 分母分子の取り出し
$i = 1/$a;   # 2. 逆数

3. だけ分からん。自分で考えてくれ。
BigRatでは、分母を小数にはできないかも。

ちなみに (2/3)*(2/3) を 4/9 にするには
use bigrat;
print 2/3 * 2/3;