CodeGym /행동 /C# SELF /정수: int 타입, int 타입 연산

정수: int 타입, int 타입 연산

C# SELF
레벨 2 , 레슨 1
사용 가능

1. int 타입 좀 더 자세히 알아보기

변수에 정수를 저장하고 싶으면 int 타입을 써야 해. intInteger의 줄임말이야(영어로 정수라는 뜻), 그래서 이 타입이 정수를 저장할 수 있다는 걸 암시하지.

int 타입 변수는 -2,147,483,648부터 2,147,483,647까지(쉽게 말하면 -2십억부터 +2십억까지) 정수를 저장할 수 있어.

재밌는 사실

이렇게 애매한 숫자가 나오는 건 컴퓨터 메모리 구조 때문이야. C#에서 int 타입은 4바이트 메모리를 써. 한 바이트는 8비트로 되어 있고, 각 비트는 2가지 값(0 또는 1)만 가질 수 있어. int 타입 변수는 32비트고, 4,294,967,296개의 값을 가질 수 있지.

이 범위의 절반은 음수, 나머지 절반은 양수로 할당돼. 그래서 -2,147,483,648부터 2,147,483,647까지가 되는 거야.

2. int 타입 변수 만들기

int 타입은 정수를 저장하는 용도야. 코드에서 정수를 저장할 수 있는 변수를 만들려면 이렇게 써:

int 이름;
int 타입 변수 선언

여기서 이름은 변수 이름이야. 예시:

명령어 설명
int x;
x라는 정수형 변수가 만들어져
int count;
count라는 정수형 변수가 만들어져
int currentYear;
currentYear라는 정수형 변수가 만들어져

대소문자 구분 중요해: int colorint Color는 서로 다른 변수야.

근데 Int ColorINT COLOR 같은 명령어는 컴파일러가 이해 못 해서 에러가 나. int는 정수 타입을 의미하는 특별한 단어고, 항상 소문자로만 써야 해.

3. 변수 여러 개 한 번에 만들기

프로그램 한 곳에서 같은 타입 변수를 여러 개 만들고 싶으면, 이렇게 짧게 쓸 수 있어:


int 이름1, 이름2, 이름3;
        
int 타입 변수 여러 개 선언

예시:

명령어 짧게 쓰는 방법
int x;
int y;
int z;
int x, y, z;
int count;
int totalCount;
int count, totalCount;
int day;
int month;
int year;
int day, month, year;

4. 값 할당하기

int 타입 변수에 값을 넣으려면 이렇게 써:


이름 = ;
        
변수에 값 할당하기

여기서 값은 아무 정수식이나 될 수 있어. 예시:

명령어 비고
int a;
a = 5;
int b;
b = 2*1000*1000*1000;
변수에 "2십억"이 들어가
int c;
c = -10000000;
변수에 "마이너스 천만"이 들어가
int d;
d = 3000000000;
컴파일 안 됨, 3,000,000,000int 최대값 2,147,483,647보다 커서 그래

5. 변수 선언과 초기화 한 번에

변수 만들기(선언)랑 값 넣기(할당)를 한 줄로 쓸 수도 있어. 보통 이렇게 많이 써, 왜냐면 변수는 뭔가 값을 저장해야 할 때 선언하니까.

이렇게 써:


int 이름 = ;
        
변수 선언과 초기화 한 줄로

예시:

명령어 비고
int a = 5;
int b = 2*1000*1000*1000;
변수에 "2십억"이 들어가
int c = -10000000;
변수에 "마이너스 천만"이 들어가
int d = 3000000000;
컴파일 안 됨, 3,000,000,000은 int 최대값 2,147,483,647보다 커서 그래

여러 변수도 한 줄에 선언할 수 있어. 그럼 이렇게 써:


int 이름1 = 값1, 이름2 = 값2;
여러 변수 선언과 초기화 한 줄로

예시:

명령어 비고
int a = 5, b = 10, c = a + b;
a5, b10, c15

6. 정수식 계산하기

할당 연산자(=) 오른쪽에는 아무 식이나 올 수 있어. 숫자, 변수, +, -, *, / 같은 연산자 조합도 되고.

괄호 ( )도 쓸 수 있어. C#에서도 수학이랑 똑같이, 괄호 안 먼저 계산하고, 곱셈/나눗셈이 덧셈/뺄셈보다 우선이야.

예시:

명령어 비고
int a = (2 + 2) * 2;
변수에 8이 들어가
int b = (6 - 3) / (9 - 6);
변수에 1이 들어가
int c = (-2) * (-3);
변수에 6이 들어가
int d = 3 / 0;
이 명령 실행하면 에러 나고 프로그램 종료돼

식에 변수도 쓸 수 있어:

int a = 1;			// 변수 a에 1이 들어가
int b = 2;			// 변수 b에 2가 들어가
int c = a * b + 2;	// 변수 c에 4가 들어가

더 나아가서, 같은 변수가 할당 연산자 왼쪽이랑 오른쪽에 동시에 나올 수도 있어:

int x = 5;		// 변수 x에 5가 들어가
x = x + 1;		// 변수 x에 6이 들어가
x = x + 1;		// 변수 x에 7이 들어가
x = x + 1;		// 변수 x에 8이 들어가
x = x + 1;		// 변수 x에 9가 들어가
x = x + 1;		// 변수 x에 10이 들어가

C#에서 =는 등호가 아니라, 왼쪽 변수오른쪽 식의 값을 넣는 명령어야.

7. 정수 나누기

C#에서 정수정수로 나누면 항상 정수가 나와. 나머지는 버려지고, 소수점 이하는 그냥 없어져.

예시:

명령어 나눈 결과 비고
int a = 5 / 2;
2.5 a에는 2가 들어가
int b = 20 / 3;
6.6667 b에는 6이 들어가
int c = -6 / 5;
-1.2 c에는 -1이 들어가
int d = 1 / 2;
0.5 d에는 0이 들어가

8. 정수 나눗셈의 나머지

C#에서 정수에 대해 덧셈, 뺄셈, 곱셈, 나눗셈 말고도 "나머지" 연산자가 있어. 퍼센트 기호 %를 써. 이건 정수 나눗셈의 나머지(소수점 이하가 아니라 진짜 나머지)를 구하는 거야.

예시:

명령어 나눈 결과 비고
int a = 5 % 2;
2로 나누면 1이 남아 a에는 1이 들어가
int b = 20 % 4;
5로 나누면 0이 남아 b에는 0이 들어가
int c = 9 % 5;
1로 나누면 4가 남아 c에는 4가 들어가
int d = 1 % 2;
0으로 나누면 1이 남아 d에는 1이 들어가

이 연산자는 진짜 자주 써. 예를 들어, 짝수인지 확인하려면 2로 나눈 나머지가 0인지 보면 돼. 나머지가 0이면 짝수, 1이면 홀수야.

이렇게 체크해:


            (a % 2) == 0

여기서 a % 2는 2로 나눈 나머지(즉 0이나 1)고, ==는 0이랑 비교하는 거야.

9. 인크리먼트와 디크리먼트

프로그래밍하다 보면 변수를 1씩 늘리거나 줄이는 일이 진짜 많아. C#에는 이걸 위한 특별한 명령어가 있어:

인크리먼트(1 증가)는 이렇게 써:


            a++;
1 증가시키기

이 명령은 a = a + 1;이랑 똑같아. 즉, a를 1만큼 늘려.

디크리먼트(1 감소)는 이렇게 써:


            a--;
1 감소시키기

이 명령은 a = a - 1;이랑 똑같아. 즉, a를 1만큼 줄여.

예시 1

int x = 5;		// 변수 x에 5가 들어가
x++;			// 변수 x에 6이 들어가
x++;			// 변수 x에 7이 들어가
x++;			// 변수 x에 8이 들어가
x++;			// 변수 x에 9가 들어가
x++;			// 변수 x에 10이 들어가

예시 2

int x = 5;		// 변수 x에 5가 들어가
x--;			// 변수 x에 4가 들어가
x--;			// 변수 x에 3이 들어가
x--;			// 변수 x에 2가 들어가
x--;			// 변수 x에 1이 들어가
x--;			// 변수 x에 0이 들어가
x--;			// 변수 x에 -1이 들어가
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION