본문 바로가기

프로그래밍

[1] c++ 강의 - 프로그램이란?


한번쯤은 이런 글도 써 보고 싶었습니다. 


앞으로 계속 프로그래밍에 관한 글을 조금씩 게재할 예정입니다.


오늘은 기본중의 기본, 프로그램이 무엇인가에 대해서 간단히 알아보도록 하겠습니다.


프로그램이란?


프로그램이란 간단히 말해서 컴퓨터가 실행시키는 명령어들의 모음이라고 할 수 있습니다. 프로그램으로 계산을 하거나, 모니터에 글자를 띄우거나 등의 특수한 일을 처리할 수 있죠. 프로그램은 해야 할 일 목록과 유사합니다.

예를 들어서, 레모네이드를 만든다고 가정해 봅시다.



레모네이드를 만들기 위해 어떻게 해야 할까요?

초간단하게 만들기 위해서는 다음과 같이 된다고 합시다.


1. 컵에 물을 채운다.

2. 레몬 주스를 첨가한다.

3. 설탕을 첨가한다.

4. 저어 준다.


이렇게 일련의 과정을 통해 레모네이드가 탄생합니다. 프로그램도 마찬가지죠. 어떤 삼각형의 넓이를 구하는 프로그램을 짜고 싶다고 가정합시다. 그럼 프로그램에게 무엇을 명령해야 할까요? 프로그램은 사람처럼 자기가 알아서 '아, 이렇게 구하면 되겠다.'라고 하지 않습니다. 사람이 입력한 명령어를 토씨 하나 틀리지 않고 그대로 이행하는 것이 프로그램입니다. 그렇기 때문에 프로그래머는 정말 실수 없이 차근차근 명령어를 입력해야 할 의무가 있습니다. 자, 그럼 삼각형의 넓이를 어떻게 구할까요?


1. 먼저, 밑변의 넓이를 입력해야 합니다.

2. 그리고, 높이를 정하고,

3. 밑변과 높이의 길이를 곱합니다.

4. 최종적으로, 그 값을 2로 나눕니다.


이렇게 간단하게 삼각형의 넓이를 구할 수 있습니다.


다음은 간단한 c++ 프로그램의 예제입니다.


#include <iostream>

using namespace std;


int main() {

cout << "Hello World!" << endl;

return 0;

}


이 프로그램을 실행시키면 화면에 Hello World! 라는 문구가 뜨게 됩니다.

이렇게 적어놓으면 처음 접하시는 분들은 각각의 줄이 무엇을 의미하는지 정말 헷갈릴 것입니다. 세부적인 것에 대해서는 다음 포스팅에 알아보기로 하겠습니다. 하지만 지금은 이것만 알아두시면 됩니다.


프로그램을 짜고 나서 컴파일을 하게 되면, 컴파일러가 이 코드를 컴퓨터가 인식할 수 있는 기계어로 변환하게 됩니다. 다시 말해 0과 1로 모든 코드들이 변환되는 거죠. 그렇게 컴퓨터가 인식을 하고 프로그램을 실행하게 됩니다.



(이런 느낌인가요?ㅋㅋ)


즉, 다시 말해서


1. 프로그래머들이 쓰는 고급 언어(ex. c++) 

2. 컴파일러가 컴퓨터가 알아들을 수 있는 기계어로 번역

3. 컴퓨터가 프로그램을 실행


이렇게 프로그램을 실행할 때마다 이런 절차를 거치고 있음을 기억하면 되겠습니다. 다음 포스팅부터는 코드의 각 부분이 무엇을 의미하는지, 그리고 기계어가 무엇인지에 대해 조금 더 깊게 다루도록 하겠습니다.


도움이 되셨다면 댓글과 공감 부탁합니다^^