Sugar

Section 1-5. 데이터와 로직 - 산술 연산

by Sugar0810
Inflearn Rookiss님의 [게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버 강의를 보고 정리한 포스팅입니다.
👨🏻‍🏫강의 보러 가기
 

[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버 -

어디부터 시작할지 막막한 게임 프로그래밍 입문자를 위한 All-In-One 커리큘럼입니다. C++, 자료구조/알고리즘, STL, 게임 수학, Windows API, 게임 서버 입문으로 이어지는 알찬 커리큘럼으로 게임 프

www.inflearn.com

 

 

 

☑️사칙연산

📝사칙연산의 기본형

#include <iostream>
using namespace std;

int a;
int b;

int result;

int main()
{
    // + - * / %(나머지)

    a = 10;
    b = 4;

    cout << (a + b) << endl; // Result is :: 14
    cout << (a - b) << endl; // Result is :: 6
    cout << (a * b) << endl; // Result is :: 40
    cout << (a / b) << endl; // Result is :: 2
    cout << (a % b) << endl; // Result is :: 2
}

 

✔️나머지(%)

C++에서 산술 연산자 %는 나머지 연산을 수행하는 연산자입니다. 나머지 연산자는 어떤 수를 다른 수로 나눌 때, 나머지를 계산하는 데 사용됩니다.

예를 들어, a % b라는 표현식은 a를 b로 나눈 나머지를 반환합니다.

 

📝나머지(%) 예시

#include <iostream>

int main()
{
    int a = 10;
    int b = 3;

    int remainder = a % b; // 10을 3으로 나눈 나머지는 1

    std::cout << "The remainder of " << a << " divided by " << b << " is " << remainder << std::endl;

    return 0;
}

 

📝기본 형태의 연산과 축약형

#include <iostream>
using namespace std;

int hp;

int main()
{
	hp = 100;

	hp = hp + 5;
	hp = hp - 5;
	hp = hp * 2;
	hp = hp / 2;
	hp = hp % 2;


	// 축약형
	hp += 5;
	hp -= 5;
	hp *= 5;
	hp /= 5;
	hp %= 2;
}

 

 

 

☑️증감연산자

전위 증감 연산자와 후위 증감 연산자는 변수의 값을 1 증가시키거나 1 감소시키는데 사용되는 C++ 연산자입니다. 그러

나 이 두 연산자 간에는 동작 방식에 차이가 있습니다.

 

✔️전위 증감 연산자(++와 --)

전위 증감 연산자는 변수의 값을 먼저 증가시키거나 감소시킨 후, 그 값을 사용합니다. 즉, 증감된 값을 반환하는 것입니다.

 

📝전위 증감 연산자 예시

int a = 5;
int b = ++a; // a를 먼저 1 증가시키고, 그 후에 b에 할당됨. b = 6, a = 6

 

✔️후위 증감 연산자(++와 --)

후위 증감 연산자는 변수의 값을 먼저 사용한 후에 증가시키거나 감소시킵니다. 즉, 사용된 값을 반환하고 그 후에 변수를 증가시키거나 감소시킵니다.

 

📝후위 증감 연산자 예시

int x = 10;
int y = x++; // x를 먼저 y에 할당하고, 그 후에 x를 1 증가시킴. y = 10, x = 11

 

 

 

☑️연산 우선순위

우리가 일반적으로 수학 공부 했을 때 사용하던 '( )'를 통해 우선 순위를 조정할 수 있다.

 

📝연산 우선순위 예시

#include <iostream>
using namespace std;

int hp;
int a;
int b;

int main()
{
	hp = 100;

	a = 5;
	b = 2;

	cout << (hp * 2 + a / b); // Result is :: 202
}

 

 

 

☑️쉬프트 연산

자세한 내용 보러가기

 

<< : 두 배 증가
>> : 두 배 감소

 

✔️주의사항

쉬프트 연산 가장 왼쪽으로 갔을 때 음수(-)가 되며, 이는 다시 >> 연산을 하더라도 음수가 유지된다.

 

✔️예방법

양수만 취급하는 'unsigned'를 사용하면 예방할 수 있다.

unsigned int hp;

블로그의 정보

Sugar

Sugar0810

활동하기