IT’s Ha

[C#강의] 4. 연산자 본문

.NET/C# 강의

[C#강의] 4. 연산자

Deleloper Ha 2023. 3. 11. 22:35
728x90
반응형

C#

안녕하세요. 이번 포스팅은 C# 연산자에 대해서 알아보겠습니다.

1. 산술 연산자

산술연산자는 기본적이면서 가장 사용 많이 되는 사칙연산입니다.  기본적인 사칙연산과 나머지 계산(%)가 산술연산자입니다. 우선순위는 사칙연산 법칙과 같이 곱하기, 나누기, 나머지 계산이 먼저 그 다음 더하기,빼기가 우선순위가 됩니다. 연산자의 종류는 아래와 같습니다. (아래의 예제는 a: 20, b: 10)

연산자 표기 예제
더하기 + c = a + b      // 결과 : 30
빼기 - c = a - b      // 결과 : 10
곱하기 * c = a * b     // 결과 : 200
나누기 / c = a / b     // 결과 : 2
나머지 계산 % c = a % b  // 결과 : 0

※ 예제

int a = 1;
int b = 2;
int c = 4;
int d = 4;

Console.WriteLine(a + b);           // 3
Console.WriteLine(a - b);           // -1
Console.WriteLine(c * a - d);       // 0
Console.WriteLine(d * (c - b));     // 8
Console.WriteLine(b / (c- d));      // Error : DivideByZeroException 발생

5번째 같은 경우는 0나누기 오류가 발생하여 에러가 발생하게 됩니다. 연산은 0으로 값을 나누기를 할 수 없어  오류를 발생 시킵니다. 위와 관련하여 나중에 예외처리(Exception)에서 추가적으로 설명 드리겠습니다. 

나머지는 기존 연산과 동일하게 동작을 합니다. 그리고 괄호를 사용하여 우선순위를 변경 할 수 있습니다. 일반적인 사칙 연산과 동일합니다. 

2. 대입 연산자

우리가 평소 수학에서 '='은 같다를 의미하지만 컴퓨터에서 '='은 대입을 의미합니다. 이전 포스팅 변수에서 보시면 변수에 값을 대입하기 위하여 '='를 사용하였습니다. 대입 연산자의 종류는 아래와 같습니다. 

대입 연산자 설명 예제
=  왼쪽에 있는 변수에 값을 대입 a = b
+=  왼쪽에 있는 값과 오른쪽에 있는 변수 또는 데이터를 덧셈 후 왼쪽에 있는 변수에 대입  a += b (a = a +b)
-=  왼쪽에 있는 값과 오른쪽에 있는 변수 또는 데이터를 뺼셈 후 왼쪽에 있는 변수에 대입 a -= b (a = a -b)
*=  왼쪽에 있는 값과 오른쪽에 있는 변수 또는 데이터를 곱셈 후 왼쪽에 있는 변수에 대입 a *= b (a = a * b)
/=  왼쪽에 있는 값과 오른쪽에 있는 변수 또는 데이터를 나눗셈 후 왼쪽에 있는 변수에 대입 a /= b (a = a / b)
%=  왼쪽에 있는 값과 오른쪽에 있는 변수 또는 데이터를 나머지 연산 후 왼쪽에 있는 변수에 대입 a %= b (a= a % b)

※ 예제

int a = 3;
int b = 2;

b = a;
Console.WriteLine(b);      // 3
b += 2;
Console.WriteLine(b);      // 5
b -= 2;
Console.WriteLine(b);      // 3
b *= 3;
Console.WriteLine(b);      // 9
b /= 3;
Console.WriteLine(b);      // 3
b %= 2;
Console.WriteLine(b);      // 1

3. 증감 연산자

증감 연산자는 1씩 증가 또는 감소 시키는 연산자입니다. 증감 연산자의 위치에 따라 순서와 결과가 다릅니다. 

증감 연산자 설명
a++ 값을 1 증가시킨 후에 연산을 진행
++a 연산을 진행 후 값을 1 증가 시킴
a-- 값을 1 감소시킨 후에 연산 진행
--a 연산을 진행 후 값을 1 감소 시킴

※ 예제

int a = 3;
int b = 2;

int result;

result = a++ + b;
Console.WriteLine(result);      // 5
Console.WriteLine(a);           // 4

4. 비교 연산자

비교 연산자는 두 값의 크기를 비교하는 연산자입니다. 결과는 참 또는 거짓을 나타냅니다. 

비교 연산자 설명
==  왼쪽 변수와 오른쪽 변수가 같으면 True 틀리면 False를 반환
!=  왼쪽 변수와 오른쪽 변수가 다르면 Ture 같으면 False를 반환
>  왼쪽 변수가 오른쪽 변수보다 크면 True 작거나 같으면 False를 반환
>=  왼쪽 변수가 오른쪽 변수보다 크거나 같으면 True 작으면 False를 반환
<  왼쪽 변수가 오른쪽 변수보다 작으면 True 크거나 같으면 False를 반환
<=  왼쪽 변수가 오른쪽 변수보다 작거나 같으면 True 크면 False를 반환

※ 예제

int a = 4;

Console.WriteLine(a==4);    // True
Console.WriteLine(a!=4);    // False

Console.WriteLine(a>4);    // False
Console.WriteLine(a>=4);   // True

Console.WriteLine(a<4);    // False
Console.WriteLine(a<=4);   // True

5. 논리 연산자

논리 연산자는 And와 Or, Not 연산에 대하여 표현합니다.

논리 연산자 설명
&& 왼쪽과 오른쪽이 모두 True일 경우 True 반환 아니면 False 반환
|| 왼쪽 또는 오른 쪽이 True 일 경우 True를 반환  아니면 False 반환
! 논리 값에 반대 되는 값을 반환 

※ 예제

bool a = True;
bool b = False;


Console.WriteLine(a && b);    // False
Console.WriteLine(a || b);    // True
Console.WriteLine(!a);        // False

6. 비트 연산자

비트 연산자는 논리 연산자와 비슷하지만, 비트(bit) 단위로 논리 연산을 할 때 사용하는 연산자입니다.

비트 연산자 설명
&  대응 되는 비트가 모두 1이면 1을 반환
|  대응 되는 비트가 하나라도 1이면 1을 반환
^  대응 되는 비트가 서로 다르면 1을 반환 
~  비트가 1이면 0 , 0 이면 1로 반환
<< 지정한 수만큼 비트들을 전부 왼쪽으로 이동
>> 지정한 수만큼 비트를 전부 오른쪽으로 이동

※ 예제

int a = 8;

Console.WriteLine(a<<1);    // 16
Console.WriteLine(a>>1);    // 4

8은 2진수로 표현을 하면 1000입니다. 1000을 왼쪽으로 한칸씩 이동하게 되면 10000이 됩니다. 10000은 10진수로 다시 바꾸면 16이 되게 됩니다. 오른쪽으로 이동하게 되면 100이 됩니다. 100은 10진수로 4가 됩니다.

7. 삼항 연산자

삼항연산자의 구조는 조건식 : 참일떄 값? 거짓일때 값 이렇게 구성이 됩니다. 

※ 예제

int a = 2;
int b = 3;

int c = (a==b)? a: b;

Console.WriteLine(c);     //3

삼항 연산자는 비교 연산을 하고 True와 False의 조건에 따라 결과값을 다르게 연산됩니다. 

오늘은 연산자에 대하여 설명 드렸습니다. 이번 포스팅은 여기서 마치겠습니다.

궁금하신 내용이나 잘못된 내용은 댓글이나 메일로 부탁드리겠습니다. 감사합니다.

 

2023.02.23 - [.NET/C# 강의] - [C# 강의] 1. C#이란?

 

[C# 강의] 1. C#이란?

안녕하세요. C#을 시작하기전 C#에 관한 내용을 정리하려고 합니다. 1. C# C#은 객체 지향 언어입니다. 객체 지향 언어라고 하면 가장 많이 나오는 언어 중 하나입니다. 또 객체 지향 언어 하면 Java

oppr123.tistory.com

2023.02.27 - [.NET/C# 강의] - [C# 강의] 2.개발 환경 준비

 

[C# 강의] 2.개발 환경 준비

안녕하세요. C#개발 진행 준비인 개발 환경 셋팅에 대해서 알아보겠습니다. 여러가지 IDE가 있지만, 저희는 Microsoft Visual Studio를 통하여 개발을 하려고 합니다. 그리고 대상 .NET버전은 7.0을 사용하

oppr123.tistory.com

2023.03.02 - [.NET/C# 강의] - [C#강의]3.변수, 주석, 데이터 자료형, 상수

 

[C#강의]3.변수, 주석, 데이터 자료형, 상수

안녕하세요. 이번 포스팅은 변수, 주석, 데이터형에 대해서 알아보겠습니다. 1. 변수 변수는 들어보신 분도 있을 거라 생각합니다. 보통 변수는 상자 또는 그릇이라 표현을 많이 합니다. 프로그

oppr123.tistory.com

 

728x90
반응형

'.NET > C# 강의' 카테고리의 다른 글

[C#강의] 6. 반복문  (0) 2023.03.13
[C#강의] 5. 조건문  (0) 2023.03.12
[C#강의]3.변수, 주석, 데이터 자료형, 상수  (1) 2023.03.02
[C# 강의] 2.개발 환경 준비  (0) 2023.02.27
[C# 강의] 1. C#이란?  (0) 2023.02.23
Comments