▶ 기본 용어
용어 | 설명 |
변수 | 어떤 값을 주기억 장치에 기억하기 위해 사용하는 공간 |
식별자 | 프로그램의 구성요소를 구별하기 위한 기준 (ex. 변수명, 함수명) |
바인딩 | 변수와 변수에 관련된 속성을 연결하는 과정 |
정적 바인딩: 프로그램 실행 시간 전에 속성을 연결하는 방식 | |
동적 바인딩: 프로그램 실행 시간에 속성을 연결하는 방식 | |
선언 | 변수에 이름, 데이터 타입 등의 속성을 부여하는 작업 |
명시적 선언: 선언문을 이용하여 변수 이름을 나열하고 속성을 부여하는 방식 | |
묵시적 선언: 별도의 선언문 없이 디폴트 규칙에 의해 속성이 부여되는 방식 | |
영역 | 이름이 사용되는 범위를 의미 |
정적 영역: 변수를 찾을 때 구조에 기반하는 방식 | |
동적 영역: 변수를 찾을 때 구조보다는 순서에 기반하는 방식 | |
할당 | 변수에 메모리 공간을 바인딩하는 작업 |
데이터 타입 | 변수가 가질 수 있는 속성 및 속성값의 길이 |
연산자 | 데이터 처리를 위해 연산을 표현하는 기호 |
명령문 | 프로그램을 구성하는 문장으로, 지시 사항을 처리하는 단위 |
▶ 데이터 타입
: 프로그래밍 언어에서 실수치, 정수 자료형과 같은 여러 종류의 데이터를 식별하는 형태로, 메모리 공간을 효율적으로 사용하고 2진수 데이터를 다양한 형태로 사용하기 위해 존재한다.
유형 | 설명 | ||
불린 타입 | Boolean Type | 조건이 참인지 거짓인지 판단하고자 할 때 사용 (논리형) - C언어에서는 지원하지 않음 - C++과 자바에서는 true/false, 파이썬은 True/False |
bool a = true; //C++ boolean a = true; //자바 |
문자 타입 | Character Type | 문자 하나를 저장하고자 할 때 사용 | char a = ‘A’; |
문자열 타입 | String Type | 나열된 여러 개의 문자를 저장하고자 할 때 사용 C언어에서는 지원하지 않음 |
string a = “Hello”; //C++ String a = “Hello”; //자바 |
정수 타입 | Integer Type | 정수 값을 저장하고자 할 때 사용 | int a = 5; |
부동 소수점 타입 | Floating Point | 소수점을 포함하는 실숫값을 저장하고자 할 때 사용 | float a = 4.5; double b = 4.5; |
배열 타입 | Array Type | 여러 데이터를 하나로 묶어서 저장하고자 할 EO 사용 | int a[5] = {1,2,3,4,5} |
정수 | byte | 1byte |
short | 2byte | |
int | 4byte | |
long | 8byte | |
실수 (부동소수점) |
float | 4byte |
double | 8byte | |
문자 | char | 2byte |
▶ 변수
: 저장하고자 하는 어떠한 값이 있을 때, 그 값을 주기억 장치에 기억하기 위한 공간을 의미한다.
(변수는 어떤 값을 주기억 장치에 기억하기 위해 사용하는 공간이고, 데이터 타입은 변수가 가질 수 있는 속성값의 길이 및 성질이다.)
변수 설정 규칙
① 사용 가능 문자: 영문 대문자/소문자, 숫자, 밑줄(‘_’)의 사용 가능
② 변수 사용 규칙: 첫 자리에는 숫자를 사용할 수 없고, 변수 이름의 중간에는 공백을 사용할 수 없다.
③ 변수 의미 부여: 데이터 값의 의미나 역할을 표현한다. 이미 사용되고 있는 예약어는 변수로 사용할 수 없음
(예약어: 데이터 타입, 조건문, 반복문, 루프제어 명령문(break, continue), 함수 반환 값(return) 등)
2. 변수 선언
일반 변수 선언: 데이터타입 변수명 = 초깃값;
배열 변수 선언: 데이터타입 변수명[배열의 수] = {초깃값 들};
▶ 연산자
산술 연산자
연산자 | 내용 |
+ | 양쪽의 값을 더하는 연산자 |
= | 왼쪽 값에서 오른쪽 값을 빼는 연산자 |
* | 두 개의 값을 곱하는 연산자 |
/ | 왼쪽 값을 오른쪽 값으로 나누는 연산자 |
% | 왼쪽 값을 오른쪽 값으로 나눈 나머지 |
2. 시프트 연산자: 비트를 이동시키는 연산자
연산자 | 내용 |
<< | 왼쪽 값을 오른쪽 값만큼 왼쪽으로 이동 |
>> | 왼쪽 값에 오른쪽 값만큼 부호 비트를 채우면서 오른쪽으로 이동 |
3. 관계 연산자: 두 피연산자 사이의 크기 비교
연산자 | 내용 |
> | 왼쪽 값이 오른쪽 값보다 크면 참을, 그렇지 않으면 거짓을 반환 |
< | 왼쪽 값이 오른쪽 값보다 작으면 참을, 그렇지 않으면 거짓을 반환 |
>= | 왼쪽 값이 오른쪽 값보다 크거나 같으면(이상) 참을, 그렇지 않으면 거짓을 반환 |
<= | 왼쪽 값이 오른쪽 값보다 작거나 같으면(이하) 참을, 그렇지 않으면 거짓을 반환 |
== | 왼쪽 값이 오른쪽 값과 같으면 참을, 그렇지 않으면 거짓을 반환 |
!= | 왼쪽 값이 오른쪽 값과 다르면 참을, 그렇지 않으면 거짓을 반환 |
4. 논리 연산자: 두 연산자 사이의 논리적인 관계를 정의
연산자 | 내용 |
&& | (AND) 두 개의 논릿값이 모두 참이면 참을, 그렇지 않으면 거짓을 반환 |
|| | (OR) 두 개의 논릿값 중 하나가 참이면 참을, 그렇지 않으면 거짓을 반환 |
5. 비트 연산자: 0과 1의 각 자리에 대한 연산을 수행하며, 0 또는 1의 결괏값을 갖는 연산자
연산자 | 내용 |
& | 두 값을 비트로 연산하여 모두 참이면 참을 반환 |
| | 두 값을 비트로 연산하여 하나가 참이면 참을 반환 |
^ | 두 값을 비트로 연산하여 서로 다르면 참을 반환 |
6. 대입 연산자: 변수에 값을 대입할 때 사용, 오른쪽에 있는 값을 이용해 왼쪽 변수에 값을 대입
연산자 | 내용 |
= | 왼쪽의 변수에 오른쪽의 값을 대입하는 연산자 |
+= | 왼쪽의 변수에 오른쪽의 값을 더한 후, 그 결괏값을 왼쪽의 변수에 대입 |
-= | 왼쪽의 변수에 오른쪽의 값을 뺀 후, 그 결괏값을 왼쪽의 변수에 대입 |
*= | 왼쪽의 변수에 오른쪽의 값을 곱한 후, 그 결괏값을 왼쪽의 변수에 대입 |
/= | 왼쪽의 변수를 오른쪽의 값으로 나눈 후, 그 결괏값을 왼쪽의 변수에 대입 |
%= | 왼쪽의 변수를 오른쪽의 값으로 나눈 후, 그 나머지를 왼쪽의 변수에 대입 |
7. 증감 연산자: 피연산자를 1씩 증가 혹은 1씩 감소시킬 때 사용하는 연산자
연산자 | 내용 |
++x | 변수의 값을 증가시킨 후에 해당 변수를 사용하는 연산자 |
x++ | 변수를 사용한 후에 변수의 값을 1 증가시키는 연산자 |
--x | 변수의 값을 1 감소시킨 후에 해당 변수를 사용하는 연산자 |
x-- | 변수를 사용한 후에 변수의 값을 1 감소시키는 연산자 |
▶ 명령문
조건문
조건문은 조건의 참, 거짓 여부에 따라 실행 경로를 달리하는 if문과 여러 경로 중에 하나를 선택하는 switch문으로 구분한다.
if문의 경우 대다수의 프로그래밍 언어에서 기본 명령문으로 사용하게 되었다.
종류 | 설명 | |
if문 | 조건이 참인지 거짓인지에 따라 경로를 선택 | |
단순 if문 | 어떤 문장을 수행할지 여부를 결정할 때 사용 if (조건문) { 명령문; } |
|
선택 if문 | 경로를 선택할 때 사용 if (조건문) { 명령문; } else if (조건문) { 명령문; } |
|
중첩 if문 | 수행 경로가 2개 이상일 때 사용하는데, else구문을 추가하여 작성 if (조건문) { 명령문; } else if (조건문) { 명령문; } else { 명령문; } |
|
else 구문은 조건식이 거짓인 경우에 수행되는 구문으로, 프로그래밍 언어마다 차이가 있으나, else if와 같은 방식으로 분기를 추가할 수 있음 | ||
switch문 | 조건에 따라 여러 개의 선택 경로 중 하나를 취하고자 할 때 사용 | |
switch (조건문) { case 조건값: break; default: } |
> C, C++, 자바의 경우 위의 표와 같이 사용된다.
> 파이썬에서의 if문 (파이썬에는 switch문이 존재하지 않는다)
if 조건문: 명령문 elif 조건문: 명령문 else: 명령문 |
2. 반복문
반복문은 특정 부분을 조건이 만족할 때까지 실행하도록 하는 명령문이다.
반복문을 사용할 때 특별한 조건이 없으면 무한 처리를 반복(무한루프)하게 된다.
종류 | 설명 |
while문 | 시작과 종료 조건을 지정하여 참인 동안에는 해당 문장을 반복해서 실행 |
for문 | 초깃값, 최종값, 증감값을 지정하여 반복을 실행 |
(1) while문
C. C++, 자바 | 파이썬 |
while (조건문) { 명령문; } |
while 조건문: 명령문 |
(2) for문
C. C++, 자바 | 파이썬 | |
for (초깃값; 최종값; 증감값) { 명령문; } |
for 변수 in range (시작값, 끝값+1) : 명령문 |
range에 (시작값)과 (끝값+1)로 정의할 경우 (끝값)-(시작값)만큼 반복 변수는 (시작값)부터 (끝값)까지 1씩 증가 |
for 변수 in range (반복횟수) : 명령문 |
range에 (반복횟수)를 정의한 경우 0부터 (반복횟수-1)까지 변수가 1씩 증가 |
3. 루프 제어 명령어: 반복문에서 무한 루프를 방지하기 위해 break와 continue 명령어 사용
(1) break: 반복문을 중지
(2) continue: 다음 반복으로 넘어갈 수 있도록 하는 명령어
'Basic' 카테고리의 다른 글
LocaleResolver 인터페이스 (0) | 2021.07.24 |
---|---|
Git/GitHub 명령어 (0) | 2021.07.17 |