2015년 7월 28일 화요일

맥시마(maxima)의 for 반복문

 맥시마는 반복 수행을 위한 명령어 for 가 있다. 문법은 다음 표에 정리한 바와 같다.

[표 1] for반복문의 문법
생략 가능
(기본값은 1)
다음 중 택일
(반드시 하나는 있어야 함>
for <변수>:<초기값>
step <증감값>
thru <끝값>
do <수행문>
while <조건식>
unless <조건식>
for <변수> in <list>
do <수행문>

먼저 반복문에서 사용할 변수를 초기화 시켜야 한다. 그 다음에 증감값을 step명령 다음에 지정해 준다. 이 증감값은 생략가능하며 이 경우 기본값인 1로 지정된다.

가장 기본적인 사용법의 예는 다음과 같다. (display함수는 단순히 변수의 값을 화면에 출력하는 함수임)
만약 1부터 100까지의 합을 구하고 싶다면 다음과 같다.
증감값을 정하고 싶다면 step 명령어를 다음과 같이 이용한다.
for문을 이용하여 x5+x4+x3+x2+x+1을 생성하면 다음과 같다.
같은 명령을 thru 대신 while을 이용하면 다음과 같다.

또 다른 예로서 리스트 [0, 1, 2, 3, … , 29, 30]를 생성하려면 다음과 같이 하면 된다. 다음 명령을 입력한 후에 그 결과를 확인해 보자. (/*~*/사이의 주석문은 입력할 필요가 없다.)

똑같은 명령을 unless를 이용하여 작성하면 다음과 같다.
이러한 for문을 이용하여 다양한 반복 작업과 많은 요소를 갖는 객체(리스트나 다항식 등)를 생성할 수 있다.


댓글 없음:

댓글 쓰기