95961/23で書いた通り、「数学的に考える」のが面倒で、ちょろちょろっとこんなの書いて計算してしまった #!/usr/bin/perl use strict; use warnings; my $mz=9999; my $mx=0; my $my=0; for (my $x=0.01; $x<10; $x+=0.01) { for (my $y=0.01; $y<10; $y+=0.01) { my $z=$x+$y+2/($x+$y)+1/(2*$x*$y); if ($z<$mz) { $mz=$z; $mx=$x; $my=$y; } } } print "x=$mx y=$my z=$mz\n";