독학사 컴퓨터과학과

자료구조(3) - SPARKS

고유빙글 2021. 4. 15. 06:50

 - SPARKS : 알고리즘을 기술하는 언어

              : 선언문, 지정문, 조건문, 입출력문 등이 있음

 

              - 선언문

                         : 여러 가지 형태의 변수를 선언해 자료형(data type)을 사용

              - 지정문

                         : 상수나 변수 또는 연산식의 결과를 변수에 지정하는 문장

 

P←X; q←0
LINK(p)←Y
q←q+1

                         : 대입연산자 : ←

                         : ';' : 같은행의 문장 구분

                         : LINK(p) ← Y  이건 함수에 변수를 의미하는건가..검색을 해보아도 똑같은 표기만 있고 해석이 없다.

                         : 산술연산 가능

 

              - 조건문

                         : 참, 거짓을 판별할 수 있는 조건식을 표현하고,

                            참인경우 실행하는 문장, 거짓인 경우 실행하는 문장으로 구성

                         : if~else문, while 문, repeat~until문, case문 등

 

              - 반복문

                         : 포함한 선언문이 증감식에 따라 반복

                         : for문, loop~forever문 등

 

              - Procedure문 ( 프로시져 )

                         : 알고리즘은 하나 이상의 procedure로 구성되고 모든 procedure는 서로 독립적이므로,

                          procedure간의 정보전달은 매개변수 ( parameter )로 이루어지게 된다. 

                         : 각 procedure들은 서브루틴이나 함수가 될 수 있고, 함수로 사용될때는 return을 통해

                           결과값을 보여주게 된다.

 

              - 서브루틴과 함수의 차이점

                         : 서브루틴은 실행만 진행, 함수는 결과값으르 반환

 

              - Procedure간의 자료 전달방법

                         : 매개변수 ( parameter ) 를 통해 이루어지게되는데 전달 값 또는 방법에 따라 차이가 있다.

                         : 책에 나온 설명은 전달력이 낮다 생각해 재해석을 할 것으로 원론적인 내용이 궁금하면

                           검색을 해보길 권한다.

 

                         : call by value

                                            : 입력된 변수의 값을 그대로 이용하는 것

                         : call by reference

                                            : 입력된 변수의 주소를 활용하는 것. 해당 주소의 값에 변화가 다음 활용에도 영향을                                              가짐

                         : call by name

                                            : Sub Procedure에서 미지수로 연산을 마치고, 마지막에 계산할떄 값으로 반영

 

              - 입출력문

 

              - 기타 명령과 규칙

                         : 주석 : //, /* ~ */

                         : stop문

                                            : 진행중인 알고리즘 중단

                         : SPARKS 언어의 사용규칙

                                            : 모든 Procedure의 입출력 변수를 명확히 해야한다.

                                            : 변수의 의미를 알 수 있게 정의해야한다.

                                            : 알고리즘의 제어 흐름은 되도록 순차적으로 표현한다.

                                            : 가독성을 위해 문장들은 들여쓰기를 한다.

                                            : 주석은 짧으면서 의미는 명확히 기술해야한다.

                                            : 함수를 적절히 사용한다.