파스칼 프로그래밍/따라하기
(프로그래밍/파스칼/따라하기에서 넘어옴)
이 문서는 덜 쓰였으며, 앞으로도 한동안 완성되지 않을 것입니다.
입문예제
+/-- 코드 파일을 만듭니다. &File -> &New
- 저장해 봅니다. &File -> Save &As
- 예제 설명을 위해 파일 이름은 HWorld.pas로 정하겠습니다.
- 이 예제의 목적은 어떤 문자열을 출력하고 끝내는 프로그램을 만드는 것으로서, 프로그램의 간단한 구조에 대해 익히기 위한 것입니다.
Program
+/-- Program은 프로그램의 시작을 알리는 도입부입니다.
- Program 뒤의 값에 대해서는 본문을 참조하세요.
Program HWorld;
- ; 는 문장의 종결을 뜻합니다. 파스칼은 모든 문장에서 종결의 의미로 ;을 쓸 것입니다. 눈에 보이는 형식이 칸이 띄어져 있거나, 줄이 띄어져 있는것과 관계없이 실제로 컴파일할때는 오직 ;만을 고려하게 됩니다.
begin ~ end
+/-- begin과 end로 묶인부분이 실질적으로 프로그램이 실행되는 부분이며, 프로그램이 무엇을 할지를 구체적으로 서술하는 부분입니다.
- 프로그램이 실행되면, 이 begin 뒤의 부분부터 한 줄씩 실행되며 특별한 오류가 없는 한 그대로 진행됩니다.
- 이번 예제의 목적은 단순히 문자열을 출력하는 것이므로, 이 사이에 단순히 출력함수만 쓸 것입니다.
Program HWorld;
begin
Write('HelloWorld');
end.
- 생각해볼거리 : 이 코드는 HelloWorld를 출력해라는 프로시저 하나로 이루어져 있습니다. 그런데 왜 HelloWorld는 ' 두개로 묶여 있을까요?
- 답 : 파스칼의 수많은 예약어, 함수, 변수 이름과 구분하기 위해, 단순한 문자열은 ' 두개로 둘러쌉니다. 문자열 내용 중 작은따옴표를 입력해야 할 때는 두개를 연달아 적습니다.
Write('L''Espero');
결과:
L'Espero
이번에는 HelloWorld를 세번 출력하도록 저것을 바꾸어 봅시다. 적절히 처리해보세요.
- 답
Program HWorld;
begin
Write('HelloWorld');
Write('HelloWorld');
Write('HelloWorld');
end.
결과를 확인하셨나요?
아마 보기 좋지 않을것입니다. 한 줄을 띄워주기위해, Write대신 WriteLn을 씁니다. WriteLn은 실행 후 한 줄을 띄워줍니다. Write(#10)과 같은 효과를 가집니다. (이것에 대해서는 아스키코드에 관한 내용을 참고하세요.)
Program HWorld;
begin
WriteLn('HelloWorld');
WriteLn('HelloWorld');
WriteLn('HelloWorld');
end.
이때, 갑자기 HelloWorld를 Hello World로 바꾸고 싶어졌다고 생각해봅시다. 그러면 우리는 HelloWorld를 세번이나 바꾸어야 합니다. 이런 것을 막기위해, 미리 저장해둘 수 있습니다.
var를 이용해 변수의 저장공간을 만들어둘 수 있습니다. 변수를 선언하는 위치나, 변수의 자료형은 본 페이지를 참조하세요. 문자열을 저장할 공간 S1을 만들어 HelloWorld를 저장하겠습니다.
Program HWorld;
Var
S1: String;
begin
S1 := 'HelloWorld';
WriteLn(S1);
WriteLn(S1);
Write(S1);
end.
다섯째줄에서 :=는 대입 연산자입니다. 오른쪽의 내용을 왼쪽의 변수에 대입하게 됩니다.