이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
PI의 소수점 이하 숫자
이 예제에서는 Symbolic Math Toolbox™를 사용하여 pi의 소수점 이하 숫자를 조사하기 위해 가변 정밀도 연산방식을 사용하는 방법을 보여줍니다.
농담: 태양의 원주를 지름으로 나누면 무엇을 얻게 될까요?
답: 하늘의 !
의 소수점 이하 숫자에서 생일이나 전화 번호를 찾는 것은 오래된 게임입니다. 내장 데이터형의 정밀도로는 몇 자리 숫자만 얻을 수 있습니다.
num2str(pi, 100000)
ans = '3.141592653589793115997963468544185161590576171875'
함수 vpa
는 가변 정밀도를 사용하여 기호 표현식을 기호 부동소수점 숫자로 변환합니다. vpa
를 사용하여 pi
를 부동소수점 숫자로 변환합니다. digits
를 사용하여 vpa
의 정밀도를 높입니다.
digits(5000); a = vpa(pi)
a =
가변 정밀도 숫자를 string형으로 변환하려면 함수 char
를 사용합니다.
c = char(a);
pi
의 숫자에서 여러분의 전화 번호를 찾아봅니다.
strfind(c, '1185480')
ans = 447
의 소수 전개에서 모든 숫자가 점근적으로 같은 빈도로 발견된다는 것이 일반적인 생각이지만, 아직 증명되지는 않았습니다. 소수점 위치를 구합니다.
pos = strfind(c, '.')
pos = 2
소수점 이하 숫자를 수로 변환하고 그 빈도를 나타내는 히스토그램을 플로팅합니다.
d = arrayfun(@str2num, c(pos+1:end));
histogram(d, 10);
title('Frequency of the decimal digits of \pi');