로드하면BC 수학 도서관사인, 코사인, 아크탄젠트인 삼각 함수 s()
의 합을 구합니다 . 왜 우리는 이 세 가지 기능을 가지고 있습니까?c()
a()
저는 이 세 가지가 왜 수학적으로 알고 있는지 알고 있습니다. 왜냐하면 이 세 가지가 직교 좌표와 극좌표 사이를 직접 변환해야 하기 때문입니다. 저는 수학 교사인데 안타깝게도 사인/코사인/아크탄젠트가 집합으로 설정되는 곳을 본 곳은 여기뿐입니다.원래의삼각 함수이므로 누군가가 나에게 말해주길 바랐습니다.왜좀 더 역사적인 맥락에서. 탄젠트 이전에 학생들에게 아크탄젠트를 소개하는 것이 신성모독적인 생각이 아닌 이유에 대해 수학 교육자들과 이야기할 때 탄약이 가장 필요하다는 것을 모르겠습니다.
답변1
완전한 답변은 아니지만 일부 유용할 수도 있습니다.
초기 적응에서 삼각 함수를 사용하는 추가 예 목록입니다. UNIX 세계에 대해서도 배울 수 있습니다.
앨 고어
역사에 관한 흥미로운 에세이:
ALGOL은 1950년대에 개발되었습니다. 1958년 유럽과 미국 컴퓨터 과학자들의 합동 회의에서 사람들은 또한 다음과 같은 사실을 얻었습니다.국제 알고리즘 언어에 관한 예비 보고서취리히 보고서라고도 합니다. 그 일은 표기법과 컴퓨터 알고리즘 작성 방법을 통합하는 것이었습니다.58' 보고서에서 발췌좀 보여주려고논의하다이와 관련하여:
"변수의 경우와 마찬가지로 함수를 지정하는 식별자도 선호도에 따라 선택할 수 있습니다. 그러나 특정 식별자는 표준 분석 함수용으로 남겨두어야 합니다.
예약된 목록에는 다음이 포함되어야 합니다.
abs(E)는 표현식 E 값의 모듈러스(절대값)입니다. 기호(E) E의 값을 나타내는 기호 전체(E)는 E의 값보다 크지 않은 가장 큰 정수입니다. sqrt(E)는 E 값의 제곱근입니다. sin(E)는 E 값의 사인입니다.일반적인 수학 기호 등에 따르면. "
ALGOL 58에서 ALGOL 60까지, 작업의 기반이 무엇인지에 대해서도 더 구체적이라고 할 수 있습니다(삼각 함수에 관해서:
간단히 말해서 sin
, , cos
를 arctan
표준 기능으로 권장합니다.
연산
디지털 시대에 수학을 수행하는 장치를 살펴보면 초기 기계 중 하나가 Bendix G-15 컴퓨터(1950년대 후반)였습니다. ALGOL 58의 영향을 받은 ALGO를 사용합니다. 알고 시스템의 일부가 아닌 라이브러리가 있습니다. 라이브러리의 루틴은 다음과 같습니다 SIN
.COS
ARCTN
- 알고리즘 매뉴얼–지침
- 프로그래머 참조 매뉴얼(G15D - 참고 사항: 비트, 바이트, 단어가 그룹화되는 방식과 같은 다양한 측면을 설명하는 흥미로운 섹션이 있습니다.자기 드럼기억으로)
- 프로그램 및 서브루틴
arcsine
예를 들어 계산 과arccosine
사용법 에 대한 루틴이 있습니다arctan
. (일반 카드의 날짜는 1957년이므로 이것이 예비 실험의 일부인지 확실하지 않습니다 :?)
이러한 루틴을 사용하려면 코드워드 로딩을 사용하십시오.
SIN 0101000
COS 0168000
ARCTN 0164000
로딩 예:
LIBRAry SIN{0101000}
말대로
"머신 언어 루틴을 라이브러리에 추가할 수 있습니다.", 하지만 이 세 가지는 라이브러리에 포함되어 있습니다. (또한 16진수에 16진수를 사용합니다. 하지만 그게 요점은 아니지만 흥미롭습니다.)
유닉스 시스템
버전 1유닉스 포함bas
, 기본 방언 (Thompson 소유). 여기에는 arg
, exp
, log
, sin
, cos
, atn
및 rnd
과 같은 내장 함수가 포함되어 있습니다 expr
.int
버전 2또한 bas
다른 서브루틴을 나열하는 서브루틴 목록도 찾을 수 있습니다: atan
, hypot
, log
, sin
(사인/코사인). 에서도 작동합니다 dc
.
또한 bc
, 그러나 이는 프로그램 B를 컴파일하는 데 사용됩니다.
또한 언급할 가치가 있는 것은 ttt
(틱택토), bj
(블랙잭), moo
(MOO 게임)입니다.
버전 5. 등의 소스 코드를 보려면 다음과 같이 할 수 있습니다 sin/cos
.atan
이 코드를 살펴보세요:
- 서브루틴:
usr/source/s3/{atan.s,sin.s}
- 기본 내장:
usr/source/s1/bas4.s
알아채다!예를 들어, 1972-stuff(s2)의 파일은 다음과 같습니다.절대 경로!
tan
V7의 mathlib는 등을 포함하도록 확장되었습니다 .
Fortran77도 포함되어 있습니다.
기원전
BC는 1975년부터 존재해왔으며 앞서 언급했듯이 이 세 가지 기본 방법도 포함합니다. 로버트 모리스(Robert Morris)와 로린다 체리(Lorinda Cherry)가 개발했습니다. /usr/doc/bc/bc
버전 V6(1975) 부터 :
삼.다음을 입력하여 명령 수준에서 사용할 수 있는 수학 함수 라이브러리가 있습니다.
bc –l
이 명령은 작성 당시 사인("s"로 명명), 코사인("c"), 아크탄젠트("a"), 자연 로그("l"), 지수(`)를 포함하는 일련의 라이브러리 함수를 로드합니다. e') 및 정수순 베셀 함수(`j(n,x)'). 시간이 지나면 더 많은 기능이 추가될 것이라는 데에는 의심의 여지가 없습니다. 라이브러리는 배율을 20으로 설정합니다. 원하는 경우 다른 값으로 재설정할 수 있습니다. 이러한 수학 라이브러리 루틴의 설계는 다른 곳에서 논의됩니다
[4]
.
[4]
로버트 모리스,표준 수학 서브루틴 라이브러리에 대한 참조,
그 종이 조각하지만 찾기는 어려울 것 같습니다.
따라서 목록에서 기본 삼각 함수는 이미 V1부터 시스템의 일부입니다. bc
이는 로딩 루틴에 사용됩니다.
Unix Heritage Wiki의 참고 사항(참조)
Unix와의 생활은 다음과 같이 말합니다: Lorinda Cherry와 함께 dc를 썼습니다.
Unix 독자는 다음과 같이 말했습니다. Bob (Robert) Morris는 수치 분석이든 정수론이든 수학과 관련된 모든 분야에 참여했습니다. Bob은 독특하고 독창적인 유틸리티를 발명했으며 typo
- dc
( bc
Lorinda Cherry와 함께)대부분의 수학 라이브러리를 작성했습니다., 소수와 인수를 작성했습니다(Thompson 사용). 그의 일련의 암호화 프로젝트는 암호화에 대한 센터의 지속적인 관심을 불러일으켰습니다.
Life with Unix에서는 다음과 같이 말합니다. Writers at Writer's Bench(문구, 스타일 등), be 및 dc. eqn
로 작성하세요 bwk
.
Unix 독자는 다음과 같이 말했습니다: Lorinda L. Cherry는 dc
- bc
및 에서 Morris와 협력했습니다 typo
. Lorinda는 항상 텍스트 처리에 매료되어 eqn
유명한 Writer's Workbench®, ww6(v8)에서 사용되는 근사 파서인 위젯을 시작하고 발명했습니다.
엘리엇 803
물론 더 많은 기능을 구현하는 시스템이 없거나 이러한 기능을 핵심 기능으로 갖고 있지 않은 것은 아닙니다. 하지만 이것은 역사입니다... :P
arccos
, arcsin
, tan
- 어느 것보충하다 sin
, cos
,arctan
.
포르탄어
77 1977년:
sin
,,,,,,, ...cos
tan
asin
acos
atan
II 1958:
SIN
,COS
,ATAN
,TANH
와 같이라이브러리 테이프 기능.
기초적인
1964년에 탄생한 베이직(BASIC ) SIN
에는COS
TAN
그리고 ATN
.
댓글에 따르면@roaima.
가정용 컴퓨터에서 사용되는 대부분의 BASIC 방언(약 1975년 이후)에는 SIN, COS, TAN, ATN(arctan)도 있습니다. 다른 반대는 없습니다. SIN/COS를 사용할 때 오차 범위를 최소화하기 위해 TAN이 포함되어 있다고 가정합니다. 왜냐하면 이러한 모든 삼각 함수는 상당히 작은 조회 테이블을 통해 생성되기 때문입니다.
아폴로 11호
이것APOLLO 11 명령 모듈 및 달 모듈 소스 코드적어도 하나의 서브루틴이 있음을 나타냅니다.ARCTAN
서브루틴 없이 달에 성공적으로 착륙했다고 말할 수 있습니다 TAN
. ;)
코디크
CORDIC(Volder 알고리즘)삼각함수 구현 측면에서 주목할 가치가 있습니다.
통계자료
흥미로운 추가@Stephenkit, 댓글 중:
또 다른 흥미로운 논문은컴퓨터 센터 라이브러리의 수학 서브루틴 사용 통계, 1973년에 출판됨. 이는 1973년 초 퍼듀 대학에서 sin/cos/atan이 가장 일반적으로 사용되는 삼각 함수였으며, 이는 tan/asin/acos/tanh보다 훨씬 앞서 있음을 보여줍니다.:
sin / cos 39,462
atan 27,248
tan 4,707
asin / acos 4,139
tanh 2,546
다이빙
하나도 아니야심해 잠수, 그러나 주제에 대해 적어도 조금 더 자세히 설명합니다. ALGOL의 논문이 아마도 가장 적절할 것입니다.
BC의 경우는직접 견적을 찾을 수 없습니다.Morris/Cherry는 라이브러리에서 로드하는 옵션을 통해 이러한 특정 기본 기능을 포함하기로 결정했습니다 -l
.
한마디로 사람이 안 하는 게 아니다.생각하다예를 들어 tan
, 그러나 기록에는 리소스 및 사용량을 기반으로 구현할 기반으로 어떤 삼각 함수가 선택되었는지 표시됩니다.