함수 e^x = 1 + x/1에 대한 perl 코드를 작성했습니다! + x^2/2! + x^3/3! + .. + x^n/n!나누기 연산자에서 십진수 값을 가져 오지 못합니다.
은 x = 1 및 n = 10에 대한 값을 고려하십시오. 내 문제는 분자와 분모 부분에 대한 올바른 값을 얻고 있지만 그것을 $ factor로 나누는 것이다. 나는 소수 값을 얻지 못하고있다. 내가 실수하는 곳에서 나를 교정 해 주시겠습니까?
($x, $n) = @ARGV; # for x=1 , n =10
say "\n Your entered values are ", $x, " ", $n;
for my $i (1..$n)
{
$numerator = $x**$i;
$denominator = Math::BigInt->new($i)->bfac();
$factor = int($numerator/$denominator); # tried it without typecasting then too noluck
$exp = $exp + $factor; #[$numerator/$denominator];
say $i, "\n Numerator :", $numerator, "Denominator :", $denominator, " Factor :", $factor, " EXP :", $exp;
$i++;
}
내가 INT 부분을 멀리 복용했습니다. 그것은 여전히 동일한 $ factor 값을 보여줍니다. 심지어 1/2의 경우 – kay
도 동일한 표현을 시도해도 결과가 모두 훌륭합니다. 그러나 묻는 경우에는 그렇지 않다. – kay
이것은'$ denominator'가 int인데 작동 할 것이지만 그렇지 않다. 그것은'Math :: BigInt'입니다. –