2022. 6. 8. 16:34ㆍ정처기(필기)/프로그래밍언어활용
(1) 데이터 타입
1. 데이터 타입의 개념
- 프로그래밍 언어에서 실수형, 정수형과 같은 여러 종류의 데이터를 식별하는 형태
2. 데이터 타입의 유형
- 불린 타입 : 조건이 참인지 거짓인지 판단
- 문자 타입 : 문자 하나를 저장할 때 사용
- 문자열 타입 : 나열된 여러 개의 문자를 저장할 때 사용
- 정수 타입 : 정수값을 저장할 때 사용
- 부동 소수점 타임 : 소수점을 포함하는 실수값을 저장할 때 사용
(2) 변수
1. 변수란
- 저장하고자 하는 어떠한 값이 있을 때, 그 값을 주기억장치에 기억하기 위한 공간
2. 변수 설정 규칙
- 영문, 대문자, 소문자, 숫자, 밑줄, 달러 사용 가능
- 첫 자리에는 숫자를 사용할 수 없고, 변수 이름의 중간에는 공백을 사용할 수 없음
- 데이터값의 의미나 역할을 표현하기 때문에 이미 사용되고 있는 예약어는 변수로 사용할 수 없음
(3) 배열 및 포인터
1. 배열의 개념
- 배열은 같은 타입의 변수들로 이루어진 집합
- 여러 자료를 묶어서 하나의 단위로 처리할 수 있게 하는 구조적 자료형
2. 배열 선언
- 초깃값이 없는 경우 -> 타입 배열명[배열_요소_개수];
- 초깃값이 있는 경우 -> 타입 배열명[배열_요소_개수] = [초깃값];
▼C언어 배열 선언 및 출력 예제
#include <stdio.h>
void main() {
int a[4] = {1, 2};
int i;
for(i = 0; i < 4; i++) {
printf("%d\n", a[i]);
}
}
설명 : a 배열의 요소 개수는 4개지만, 초기값은 1, 2로 두 개만 명시되어 있으므로 나머지 2개의 공간은 0으로 초기화, 0번째 요소부터 3번째 요소의 값을 출력
3. 포인터의 개념
- 포인터는 변수의 주소값을 저장하는 공간이다.
① 포인터 선언
데이터_타입* 포인터_변수명 = &변수명;
- 데이터 타입 뒤에 *를 붙이면 주소를 저장하는 포인터 변수, 일반 변수명에 &를 붙이면 해당 변수명의 주솟값
(4) 연산자
1. 연산자 개념
- 연산자는 프로그램 실행을 위해 연산을 표현하는 기호
2. 연산자 종류
- 증감 연산자
- 산술 연산자
- 시프트 연산자
- 관계 연산자
- 비트 연산자(&, |, ^, ~)
- 논리 연산자(&&, ||, !)
- 삼항 연산자((조건식) ? a : b)
- 대입 연산자
3. 연산자 우선순위
증산시 관비 논삼대
-> 증감 연산자/산술 연산자/시프트 연산자/관계 연산자/ 비트 연산자/ 논리 연산자/삼항 연산자/대입 연산자
(5) 명령문
1. 명령문 개념
- 명령문은 프로그램을 구성하는 문장으로, 지시사항을 처리하는 단위
2. 조건문의 개념
- 조건문은 조건의 참, 거짓 여부에 따라 실행 경로를 달리하는 if 문과 여러 경로 중의 하나를 선택하는 switch 문으로 구분한다.
[1] if 문
조건이 참인지 거짓인지에 따라 경로를 선택하는 명령문
▼ if문 사용 예제
class ifEx1{
public static void main(String[] args) {
int score = 5;
if(score %2 = 0) {
System.out.print("짝수");
}
else {
System.out.print("홀수");
}
}
}
[2] switch문
- 조건에 따라 여러 개의 선택 경로 중 하나를 취하고자 할 때 사용하는 명령어
class SwitchEx1 {
public static void main(String[] args) {
int score = 5;
switch(score % 2) {
case 0 :
System.out.println("짝수");
break;
default :
System.out.print("홀수");
}
}
}
[3] 반복문
- 특정 부분을 조건이 만족할 때까지 실행하도록 하는 명령문
- C, Java에서의 for 문
for(초기식; 조건식; 증감식) {
명령문;
}
- Python에서의 for 문
for 변수 in range(시작값, 끝값 +1) :
명령문
-> 변수는 시작값부터 끝값까지 1씩 증가함
for 변수 in range(반복횟수) :
명령문
-> range에 정의한 경우 0부터 반복횟수-1까지 변수가 1씩 증가
▼python for문 사용예제
i = 0
sum = 0
for i in range(1, 11) :
sum = sum + i
print(sum)
while문
- 조건이 참인 동안에 해당 분기를 반복해서 실행하는 명령문이다.
while(조건문) {명령문;}
do-while문
- 참, 거짓과 관련 없이 무조건 한 번은 실행하고, 그다음부터는 조건이 참인 동안에 해당 분기를 반복해서 실행하는 명령문
do {
명령문;
}while(조건문);
- 루프제어 명령어
▼break문 사용 예시
#include <stdio.h>
void main() {
int i = 0;
while(i < 10) {
i++;
if(i == 7)
break;
printf("%d", i);
}
}
▼continue문 사용 예시
#include <stdio.h>
void main() {
int i = 0;
while(i < 10) {
i++;
if(i == 7)
continue;
printf("%d", i);
}
}
(6) 사용자 정의 함수
1. 사용자 정의 함수 개념
- 특별한 목적의 작업을 수행하도록 설계된 블록
2. C, 자바에서 사용하는 사용자 정의 함수
반환_데이터_타입 함수명(데이터_타입 변수명, ....) {
명령어;
return 반환값;
}
3. 파이썬에서 사용하는 사용자 정의 함수
def 함수명(변수명, ...);
명령어
return 반환값
(7) 클래스
1. 클래스 개념
- 객체 지향 프로그래밍에서 특정 객체를 생성하기 위해 변수와 메소드를 정의하는 틀이다.
2. 클래스 정의
- 클래스는 변수와 메소드 형태로 구성되어 있다.
- 클래스에서 변수는 변수 선언과 동일하고, 메소드는 사용자 정의 함수와 문법이 동일하다.
- 파이썬은 별도로 변수 선언을 하지 않기 때문에 메소드 형태로 구성되어 있다.
▼ 클래스 정의
[1] 자바 클래스
public class 클래스명 {
private 변수_타입 변수명;
public 반환_데이터_타입 메소드명(데이터_타입 변수명, ...) {
명령어;
return 반환값;
}
}
[2] 파이썬 클래스
class 클래스명;
def 메소드명(self, 변수명, ...);
명령어
return 반환값
-> 파이썬은 함수명에 입력받은 값 앞에 self라는 키워드를 적어야 한다.
[3] 자신 클래스 참조
this 포인터 : this 포인터는 현재 객체를 가리키는 포인터, 자바에서 사용하는 것으로 클래스 내부의 변수와 함수를 가리킬 수 있음
self : self는 현재 객체를 가리키는 포인터, 파이썬에서 사용하는 것으로 클래스 내부의 변수와 함수를 가리킬 수 있음
[4] 클래스 선언
- 클래스를 일반변수로 선언한 경우 선언함과 동시에 생성자가 호출되고, 일반 변수로 선언한 곳에서 함수가 종료되면 소멸자가 호출된다.
- 자바에서 클래스를 포인터 변수로 선언한 경우 new 키워드를 이용해 선언함과 동시에 생성자가 호출되고, finalize 키워드를 호출하면 소멸자가 호출된다.
- 파이썬에서는 del키워드를 호출하면 소멸자가 호출된다.
▼자바클래스 선언
클래스 클래스변수 = new 클래스(매개변수);
클래스변수.finalize();
▼파이썬 클래스 선언
클래스변수 = 클래스(매개변수) //생성시
del 클래스변수 //소멸시
'정처기(필기) > 프로그래밍언어활용' 카테고리의 다른 글
프로세스 스케줄링 (0) | 2022.06.10 |
---|---|
운영체제, 메모리 관리 (0) | 2022.06.09 |
언어특성 활용, 라이브러리 (0) | 2022.06.08 |
서버 프로그램 구현 (0) | 2022.06.07 |
서버프로그램 구현 - 개발환경 구축, 공통 모듈 구현 (0) | 2022.06.07 |