use POSIX; ($a,$b,$c)=glob<>; $x=rand; for(0..9){ $x-=($x**3+$a*$x**2+$b*$x+$c)/(3*$x**2+2*$a*$x+$b); } $x=floor($x+.5); $d=$a+$x; $e=$b+$x*$d; $y=floor((-$d+sqrt($d**2-4*$e))/2+.5); $z=floor((-$d-sqrt($d**2-4*$e))/2+.5); print join$",sort{$a-$b}$x,$y,$z;