[영진전문대 컴퓨터정보계열]프로그램과 순서도 작성 기초
프로그램의
논리
프로그램을 배울 때 가장
어려운 점은 해결하려는 문제를 컴퓨터가 인식할
수 있는 절차로 변환시키는 것이다.
일반적으로 컴퓨터를 통해 문제를 해결하기
위해서는 3가지
논리가 필요하며, 이
논리를 이용하여 해결하려는 문제를 컴퓨터가
인식할 수 있는 절차로 표현할 수 있다.
1970년대
개발된 구조적 프로그래밍은
3가지의
기본적인 논리에 바탕을 두고 있는 프로그래밍
기법이다. 3가지
기본 논리는 선택,
순서,
반복 논리이다.
즉,
프로그램을 작성한다는
의미는 순서, 선택,
반복의 논리를
이용하여 문제를 해결한다는 의미이다.
순서논리란?
프로그램은 사용자가 작성한
의도대로 순차적으로 실행돼야 한다는 의미.
선택
논리란?
선택논리는 반드시
조건이
수반되어야 하고,
조건의 결과는 반드시
참 또는 거짓이 되는 논리이다.
반복
논리란?
반복 논리란 특정
부분을 반복해서 실행 한다는 의미이다.
반복의 논리에는 반드시 조건이 따라오게 된다. 만약 조건이 존재하지 않는 반복이 있다면, 그 반복은 무한정 반복되는 무한 반복(루프) (infinite loop)이 되어, 프로그램이 영원히 끝나지 않을 것이다.
반복의 논리에는 반드시 조건이 따라오게 된다. 만약 조건이 존재하지 않는 반복이 있다면, 그 반복은 무한정 반복되는 무한 반복(루프) (infinite loop)이 되어, 프로그램이 영원히 끝나지 않을 것이다.
(반복
논리에는 반드시 선택 논리가 포함되어 있다.)
산술
연산자와 우선 순위
C언어,
Java 언어,
자바스크립트언어,
그리고 랩터에서 공통적으로 사용되는 산술
연산자이다
연산자
|
우선순위
|
의미
|
사용 예
|
()
|
1
|
괄호
|
4*(2+3),
(data1+data2)/2
|
+,-
|
2
|
양수 음수 부호
|
-7, -5
|
*,/,%
|
3
|
*
: 곱하기
/ : 나누기
% : 나머지
|
|
+,-
|
4
|
+
: 더하기
- : 빼기
|
가감 연산
|
=
|
5
|
배정 연산자
|
Sum=hap,
total=data1*data2
|
-랩터
도형들 익히기-
선택문
- 단순 if 문 (if)
조건에 따라 단순히 한 단위의
특정 작업을 수행해야 하는 경우 사용하는 if문.단순
if문은
조건식의 결과가 참인 경우에만 특정 문장들을
수행하고, 거짓일
경우에는 아무 일도 수행하지 않는다.
If
(조건식)
{문장들; } |
선택문에서 사용되는 조건식은
다양한 형태로 나타낼 수 있다.
조건식에서는 여러 종류의 산술
연산자, 관계
연산자, 논리
연산자들을 사용할 수 있지만,
그 결과는 조건식의
복잡함과 상관없이 항상 참 또는 거짓으로 나온다.
- 데이터 입력창 prompt(“문장”, “초기값”)
자바스크립트는 사용자로부터
프로그램 실행 시 데이터를 입력받기 위한 기능으로
prompt문을
제공하고 있다.
Var
idnum;
Idnum=prompt(“학번을
입력하세요”,
“학번입력”) |
위 파란색 부분은 prompt창에
나타나는 주석이다.
위 초록색 부분은 prompt창의
입력란에 입력되게 하는 주석이다.
- 이중 if문(if-else)
조건식의
결과인 참 또는 거짓에 따라 특정 작업을 수행해야
하는 경우 사용하는 선택문이다.if-else문은
이중 선택문이라고도 하며,
조건의 결과에 따라 서로 다른 문장들을
수행한다.
If
(조건식)
{
문장들;
}
Else
{
문장들;
} |
If-else
에서 조건식을 만족하지 않는 경우,
else 에 입력한 것을 수행한다.
랩터로 따지면,
선택문(Selection)도형의
조건을 불만족 해서 ‘No’
방향으로 수행되는 경우와 같다고 생각하면
쉽다.
- 다중 if문(if-else if)
다중 선택을 제공하는 선택문이다.
이 문은 조건이 거짓일 경우 다시 선택 조건을
제시하여 조건의 결과에 따라 처리하며,
결과가 거짓일 경우 다시 선택 조건을
반복적으로 제시할 수 있다.
If
(조건식)
{
문장들;
}
Else
if (조건식)
{
문장들;
}
Else
if (조건식)
{
문장들;
}
Else
{
문장들;
} |
If
조건식에 입력한 정보가 최상위 조건식이라면,
else if 조건식에 입력한 정보는 하위 조건식이라고
볼 수 있다. 물론,
if 조건식의 하위 else
if 조건식은 조건의 결과가 거짓일 때에
수행된다.
(마지막은 else 조건식을 입력)
(마지막은 else 조건식을 입력)
다시 말해,
랩터의 경우,
조건식에 대한 수행 결과가 거짓일 경우로
죽 선택문을 이어 나간다고 보면 된다.
- 내포된 if문
전형적인 선택문과 달리 모든
형태의 선택문들은 내포될 수 있다.
즉 선택문 안에 다른 형태의 선택문이 내포될
수 있다는 의미이다.
If
(조건식)
{
If
(조건식)
{
If
(조건식)
{
문장들;
}
Else
{
문장들;
}
}
}
Else
{
문장들;
} |
내포된 if문의
경우, 내포되는
하위 if 조건식은
그 조건식을 포함하는 상위 조건식을 수행한 결과가
참일 때에 수행되는 조건식이다.
If문에
계속해서 if문을
내포시킨다는 말은,
랩터 맵 상에서 Yes
쪽으로 선택문 도형을 이어나간다고 생각하면
된다.
- 관계 연산자
연산자
|
사용법
|
설명
|
> | op1>op2 | op1이 op2보다 큰 경우 |
>= | op1<=op2 | op1이 op2보다 같거나 큰 경우 |
< | op1<op2 | op1이 op2보다 작은 경우 |
<= | op1<=op2 | op1이 op2보다 같거나 작은 경우 |
== | op1==op2 | op1과 op2가 같은 경우 |
!= | op!=op2 | op1과 op2가 같지 않은 경우 |
수학에서의 표기법처럼
~와~사이
라는 두 부등호를 사용하는 것은 불가능하다.
(뒤에서
배우는 and or 등의
논리연산자를 이용해 표현할 수 있다.)
var
a, b, c;
a=parseInt(prompt(“첫
번째 과목 점수 입력”));
b=parseInt(prompt(“두
번째 과목 점수 입력”));
c= a + b
|
댓글
댓글 쓰기