ํ๋ก๊ทธ๋๋ฐ์ ํ๋ค ๋ณด๋ฉด 2๊ฐ์ ๋ณ์์ ๋ํด์ ์๋ก์ ๊ฐ์ ๊ตํํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค.
swap ํจ์๋ฅผ ์ฐ๋ฉด ํธํ์ง๋ง, ์ง์ ํจ๊ณผ๋ฅผ ๊ตฌํํด์ผ ํ ๋๋ (ํน์?) ์์ ๊ฒ ์ ๋๋ค.
๊ฐ๋ น a = 40, b = 30์ผ ๋ a = 30, b = 40์ผ๋ก ๋ง๋๋ ๊ฒ์ ๋๋ค.
์ ๋ง ๊ทธ๋ฐ์ง ๋ชจ๋ฅด๊ณ์ง๋ง, ํญ์ ๋ณด์กฐ ๋ณ์๋ฅผ ์ ์ธํด์ ์ด ๋ฐฉ๋ฒ์ ํด๊ฒฐํ์์ต๋๋ค.
int n ๊ฐ์ ๋ณ์์ a ๋ b ์ค ํ๋๋ฅผ ์ ์ฅํด ๋๊ณ , ์์ฐจ์ ์ผ๋ก ๋ฐ๊พธ๋ ๊ฒ์ด์ฃ .
int a {40};
int b {30};
int n {};
n = a;
a = b;
b = n;
cout << a << endl; // 30
cout << b << endl; // 40
์ด๋ฐ ์์ผ๋ก์.
์๋ง ์ต์ํ์ค ๊ฒ ๊ฐ์ต๋๋ค.
๊ทธ๋ฐ๋ฐ ์ธ๋ฐ ์๋ ๋ณ์๋ฅผ ๋ง๋ค์ง ์๊ณ ๊ฐ๋ฅํ ๊ธฐ๋ฐํ ๋ฐฉ๋ฒ์ ์ฐพ์์ ๊ธฐ๋กํด๋ก๋๋ค.
int n1{30};
int n2{40};
n1 = n1 + n2; // n1 = 30 + 40 = 70
n2 = n1 - n2; // n2 = 70 - 40 = 30
n1 = n1 - n2; // n1 = 70 - 30 = 40
cout << n1 << endl; // 40
cout << n2 << endl; // 30
์ด๋ ๊ฒ ํ๋ฉด ์๋ฏธ์๋ ๋ณ์๋ฅผ ์ ์ธํ์ง ์๊ณ ํด๊ฒฐ์ด ๋์ต๋๋ค.
์ฌ์ค ์์ฃผ ๊ฐ๋จํ ์์ด๋์ด์ธ๋ฐ ์ด๋ฐ๊ฒ ์ฝ๊ฒ ์๊ฐ๋์ง ์๋ค์..
์ด๋ฐ๊ฒ ๋ฐ๋ก๋ฐ๋ก ๋ ์ค๋ฅธ๋ค๋ฉด ์ฐธ ์ข์ ๊ฒ ๊ฐ์ต๋๋ค.
'C++ > ๊ธฐํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[C++] cin.ignore() (0) | 2023.12.28 |
---|---|
[C++] vscode ๋๋ฒ๊น ์ธํ ๊ธฐ๋ก (0) | 2023.12.23 |
[C++] ๋๋ค ์ซ์ random number (0) | 2023.12.16 |
[C++] <iomanip> setprecision(n) (0) | 2023.12.10 |
[C++] Compund Assignment Operator (0) | 2023.12.07 |