#!/usr/bin/perl -w
use strict;
die "usage: $0 <decimal_expansion>\n" unless(1==@ARGV and $ARGV[0] =~ /^(-?)(\d*)(\.\d+)$/s);
my ($sign,$int,$frac)=($1,$2,$3);
$int=0 unless($int);
if($frac =~ /^\.0*$/s) {
	print "$sign$int\n";
	exit 0;
}
my ($n,$d,$N,$D)=(0,1,1,1);
my $worsterror=1;
while(1) {
	my ($mn,$md)=($n+$N,$d+$D);
	my $f=$mn/$md;
	my $diff=$frac-$f;
	if(abs($diff)<1e-9) {
		print $sign.($int*$md+$mn)."/$md\n";
		last;
	}
	if(0<$diff) {
		($n,$d)=($mn,$md);
	} else {
		($N,$D)=($mn,$md);
	}
	if(abs($diff)<$worsterror) {
		printf "%u/%u %+g\n",$mn,$md,$diff;
		$worsterror=abs($diff);
	}
}
0;
