Saturday, April 21, 2007
PHP 프로그래밍] log (ln), log10, log2, 로그 함수 [밑이 2인 로그값 구하기
log() 함수로 "자연 로그"를 구하고,
log10() 함수로, 밑이 10인 "상용 로그"를 구합니다.
PHP 4.3 이상의 버전에서는, log() 함수의 두번째 파라미터에 로그의 밑(base)을 지정할 수 있습니다. 가령, 밑이 2인 로그는, log(숫자, 2) 이렇게 구합니다.
log(숫자)
의 형식으로 사용하면, 자연로그를 반환하고
log(숫자, 밑)
의 형식으로 사용하면, 임의의 밑을 가진 로그값을 반환합니다.
따라서, "log10(5)"와 "log(5, 10)"은, 똑같이 5의 상용로그를 반환합니다.
소스 파일명: example.php
※ 아래 박스 클릭 후, 키보드 화살표 키로 좌우 스크롤 가능함
실행 결과 화면:
php example.php > out.html
이렇게 하면, 실행 결과 화면이 out.html 이라는 파일로 하드에 저장됩니다.
log10() 함수로, 밑이 10인 "상용 로그"를 구합니다.
PHP 4.3 이상의 버전에서는, log() 함수의 두번째 파라미터에 로그의 밑(base)을 지정할 수 있습니다. 가령, 밑이 2인 로그는, log(숫자, 2) 이렇게 구합니다.
log(숫자)
의 형식으로 사용하면, 자연로그를 반환하고
log(숫자, 밑)
의 형식으로 사용하면, 임의의 밑을 가진 로그값을 반환합니다.
따라서, "log10(5)"와 "log(5, 10)"은, 똑같이 5의 상용로그를 반환합니다.
임의의 밑을 가진 로그 값 구하기 예제
소스 파일명: example.php
※ 아래 박스 클릭 후, 키보드 화살표 키로 좌우 스크롤 가능함
<html>
<head>
<title>PHP Example</title>
</head>
<body>
<?php
echo " 자연 로그 :<br />\n";
for ($i = 1; $i <= 10; $i++)
printf(" ln(%2d) = %.16f<br />\n", $i, log($i));
echo "<br /><br /><br />"; // 줄바꿈
echo "\n\n\n 상용 로그 :<br />\n";
for ($i = 1; $i <= 10; $i++)
printf("log10(%2d) = %.16f<br />\n", $i, log10($i));
echo "<br /><br /><br />"; // 줄바꿈
echo "\n\n\n 밑이 2인 로그 :<br />\n";
for ($i = 1; $i <= 10; $i++)
printf(" log2(%2d) = %.16f<br />\n", $i, log($i, 2));
?>
</body>
</html>
<head>
<title>PHP Example</title>
</head>
<body>
<?php
echo " 자연 로그 :<br />\n";
for ($i = 1; $i <= 10; $i++)
printf(" ln(%2d) = %.16f<br />\n", $i, log($i));
echo "<br /><br /><br />"; // 줄바꿈
echo "\n\n\n 상용 로그 :<br />\n";
for ($i = 1; $i <= 10; $i++)
printf("log10(%2d) = %.16f<br />\n", $i, log10($i));
echo "<br /><br /><br />"; // 줄바꿈
echo "\n\n\n 밑이 2인 로그 :<br />\n";
for ($i = 1; $i <= 10; $i++)
printf(" log2(%2d) = %.16f<br />\n", $i, log($i, 2));
?>
</body>
</html>
실행 결과 화면:
D:\Z>php example.php
<html>
<head>
<title>PHP Example</title>
</head>
<body>
자연 로그 :<br />
ln( 1) = 0.0000000000000000<br />
ln( 2) = 0.6931471805599453<br />
ln( 3) = 1.0986122886681098<br />
ln( 4) = 1.3862943611198906<br />
ln( 5) = 1.6094379124341003<br />
ln( 6) = 1.7917594692280550<br />
ln( 7) = 1.9459101490553132<br />
ln( 8) = 2.0794415416798357<br />
ln( 9) = 2.1972245773362196<br />
ln(10) = 2.3025850929940459<br />
<br /><br /><br />
상용 로그 :<br />
log10( 1) = 0.0000000000000000<br />
log10( 2) = 0.3010299956639812<br />
log10( 3) = 0.4771212547196624<br />
log10( 4) = 0.6020599913279624<br />
log10( 5) = 0.6989700043360189<br />
log10( 6) = 0.7781512503836436<br />
log10( 7) = 0.8450980400142568<br />
log10( 8) = 0.9030899869919435<br />
log10( 9) = 0.9542425094393249<br />
log10(10) = 1.0000000000000000<br />
<br /><br /><br />
밑이 2인 로그 :<br />
log2( 1) = 0.0000000000000000<br />
log2( 2) = 1.0000000000000000<br />
log2( 3) = 1.5849625007211561<br />
log2( 4) = 2.0000000000000000<br />
log2( 5) = 2.3219280948873622<br />
log2( 6) = 2.5849625007211561<br />
log2( 7) = 2.8073549220576042<br />
log2( 8) = 3.0000000000000000<br />
log2( 9) = 3.1699250014423122<br />
log2(10) = 3.3219280948873622<br />
</body>
</html>
D:\Z>php example.php > out.html
D:\Z>
<html>
<head>
<title>PHP Example</title>
</head>
<body>
자연 로그 :<br />
ln( 1) = 0.0000000000000000<br />
ln( 2) = 0.6931471805599453<br />
ln( 3) = 1.0986122886681098<br />
ln( 4) = 1.3862943611198906<br />
ln( 5) = 1.6094379124341003<br />
ln( 6) = 1.7917594692280550<br />
ln( 7) = 1.9459101490553132<br />
ln( 8) = 2.0794415416798357<br />
ln( 9) = 2.1972245773362196<br />
ln(10) = 2.3025850929940459<br />
<br /><br /><br />
상용 로그 :<br />
log10( 1) = 0.0000000000000000<br />
log10( 2) = 0.3010299956639812<br />
log10( 3) = 0.4771212547196624<br />
log10( 4) = 0.6020599913279624<br />
log10( 5) = 0.6989700043360189<br />
log10( 6) = 0.7781512503836436<br />
log10( 7) = 0.8450980400142568<br />
log10( 8) = 0.9030899869919435<br />
log10( 9) = 0.9542425094393249<br />
log10(10) = 1.0000000000000000<br />
<br /><br /><br />
밑이 2인 로그 :<br />
log2( 1) = 0.0000000000000000<br />
log2( 2) = 1.0000000000000000<br />
log2( 3) = 1.5849625007211561<br />
log2( 4) = 2.0000000000000000<br />
log2( 5) = 2.3219280948873622<br />
log2( 6) = 2.5849625007211561<br />
log2( 7) = 2.8073549220576042<br />
log2( 8) = 3.0000000000000000<br />
log2( 9) = 3.1699250014423122<br />
log2(10) = 3.3219280948873622<br />
</body>
</html>
D:\Z>php example.php > out.html
D:\Z>
php example.php > out.html
이렇게 하면, 실행 결과 화면이 out.html 이라는 파일로 하드에 저장됩니다.
tag: php
PHP
<< Home