๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

[inflearn ๊ฐ•์˜] ๊ธฐ๋ณธ ๋ฌธ๋ฒ• - ์•ผ๊ตฌ ๊ฒŒ์ž„ ๋ณธ๋ฌธ

๐Ÿ‘ฉ‍๐Ÿ’ป IoT (Embedded)/C++

[inflearn ๊ฐ•์˜] ๊ธฐ๋ณธ ๋ฌธ๋ฒ• - ์•ผ๊ตฌ ๊ฒŒ์ž„

์ง•์ง•์•ŒํŒŒ์นด 2023. 6. 30. 01:06
728x90
๋ฐ˜์‘ํ˜•

<๋ณธ ๋ธ”๋กœ๊ทธ๋Š” ์–ด์†ŒํŠธ๋ฝ ๊ฒŒ์ž„์•„์นด๋ฐ๋ฏธ ๋‹˜์˜ ์œ ํŠœ๋ธŒ๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค :-)>

=> C++ Let's Make Games

 

๐Ÿซง ์•ผ๊ตฌ ๊ฒŒ์ž„ 1

// Chapter1_10

#include <iostream>
using namespace std;

int main()
{
	int Player1, Player2, Player3;	// ํ”Œ๋ ˆ์ด์–ด 3๋ช…
	int Computer1, Computer2, Computer3;	// ์ปดํ“จํ„ฐ 3๋Œ€
	int cnt = 1;
	int strike = 0;
	int ball = 0;

	srand((unsigned int)time(0));
	Computer1 = rand() % 9 + 1;
	Computer2 = rand() % 9 + 1;
	Computer3 = rand() % 9 + 1;

	cout << "์ˆซ์ž ์•ผ๊ตฌ ๊ฒŒ์ž„ ์‹œ์ž‘" << endl;

	while (true) {
		cout << "1 ~ 9 ์ˆซ์ž ์ž…๋ ฅ : " << endl;
		cin >> Player1;
		cin >> Player2;
		cin >> Player3;

		if (Computer1 == Player1) {
			strike++;
		}
		else if (Computer1 == Player2) {
			ball++;
		}
		else if (Computer1 == Player3) {
			ball++;
		}

		if (Computer2 == Player2) {
			strike++;
		}
		else if (Computer2 == Player1) {
			ball++;
		}
		else if (Computer2 == Player3) {
			ball++;
		}

		if (Computer3 == Player3) {
			strike++;
		}
		else if (Computer3 == Player1) {
			ball++;
		}
		else if (Computer3 == Player2) {
			ball++;
		}

		cout << "Strike : " << strike << endl;
		cout << "Ball : " << ball << endl;

		// strike 3๋ฒˆ์ด๋ฉด ์•„์›ƒ
		if (strike == 3) {
			break;
		}
		cnt++;
	}
	return 0;
}

 

๐Ÿซง ์•ผ๊ตฌ ๊ฒŒ์ž„ 2

// Chapter1_10

#include <iostream>
using namespace std;

int main()
{
	srand((unsigned int)time(0));
	int iNumber[9] = {};

	// 1 ~ 9 ์ˆซ์ž ์„ค์ •
	for (int i = 0; i < 9; i++) {
		iNumber[i] = i + 1;
	}

	// ์„ค์ •๋œ ์ˆซ์ž ์„ž๊ธฐ
	int iTemp, idx1, idx2;
	for (int i = 0; i < 100; ++i) {
		idx1 = rand() % 9;
		idx2 = rand() % 9;

		iTemp = iNumber[idx1];
		iNumber[idx1] = iNumber[idx2];
		iNumber[idx2] = iTemp;
	}

	cout << "*\t*\t*" << endl;
	//cout << iNumber[0] << "\t" << iNumber[1] << "\t" << iNumber[2] << endl;
	int iStrike = 0;
	int iBall = 0;
	int iInput[3] ;
	int iGameCnt = 1;

	while (true) {
		cout << iGameCnt << " ํšŒ" << endl;
		cout << "1 ~ 9 ์‚ฌ์ด์˜ ์ˆซ์ž ์ค‘ 3๊ฐœ ์ž…๋ ฅ (0์€ ์ข…๋ฃŒ) : ";
		cin >> iInput[0] >> iInput[1] >> iInput[2];

		if (iInput[0] == 0 || iInput[1] == 0 || iInput[2] == 0) {
			break;
		}
		else if (iInput[0] < 0 || iInput[0] > 9 || iInput[1] < 0 || iInput[1] > 9 || iInput[2] < 0 || iInput[2] > 9) {
			cout << "์ž˜๋ชป๋œ ์ˆซ์ž ์ž…๋ ฅํ•จ" << endl;
			continue;
		}
		else if (iInput[0] == iInput[1] || iInput[1] == iInput[2] || iInput[0] == iInput[2]) {
			cout << "์ค‘๋ณต๋œ ์ˆซ์ž ์ž…๋ ฅํ•จ" << endl;
			continue;
		}

		// ๋งค๋ฒˆ Strike์™€ Ball ์ˆ˜๊ฐ€ ๋‹ฌ๋ผ์ง€๋ฏ€๋กœ 0์œผ๋กœ ์ดˆ๊ธฐํ™”
		iStrike = iBall = 0;

		// ๋งž์ถฐ์•ผํ•  ์ˆซ์ž์˜ ์ธ๋ฑ์Šค
		for (int i = 0; i < 3; ++i) {
			// ์ž…๋ ฅ๋ฐ›์€ ์ˆซ์ž์˜ ์ธ๋ฑ์Šค
			for (int j = 0; j < 3; ++j) {
				// ๋งž์ถฐ์•ผํ•  ์ˆซ์ž์˜ ์ฒซ๋ฒˆ์งธ, ์ž…๋ ฅ๋ฐ›์€ ์ˆซ์ž์˜ ์ฒซ, ๋‘, ์„ธ๋ฒˆ์งธ ๋น„๊ตํ•ด์„œ ๊ฐ™์€ ๊ฐ’ ์ฐพ๊ธฐ
				if (iNumber[i] == iInput[j]) {
					// ๊ฐ’์ด ๊ฐ™์€ ๊ฐ’์ด ์žˆ์„ ๊ฒฝ์šฐ Strike ์•„๋‹ˆ๋ฉด Ball ์ด๋ฏ€๋กœ ์ž๋ฆฌ ๊ฐ™์€์ง€ ์ฒดํฌ
					// i์™€ j ๋Š” ๋งž์ถฐ์•ผํ•  ์ˆซ์ž์˜ ์ธ๋ฑ์Šค์™€ ์ž…๋ ฅ ๋ฐ›์€ ์ˆซ์ž์˜ ์ธ๋ฑ์Šค

					// ์ธ๋ฑ์Šค๊ฐ€ ์„œ๋กœ ๊ฐ™๋‹ค๋ฉด strike ์ฆ๊ฐ€, ์•„๋‹ˆ๋ผ๋ฉด ball
					if (i == j)
						++iStrike;
					else
						++iBall;
					// ์ž…๋ ฅ๋ฐ›์€ ์ˆซ์ž์™€ ๋งž์ถฐ์•ผํ•  ์ˆซ์ž๋ฅผ ๋น„๊ตํ•  ๋•Œ ๊ฐ™์€ ์ˆ˜๊ฐ€ ์žˆ์œผ๋ฉด
					// ๋”์ด์ƒ ๊ฐ™์€ ์ˆ˜๋Š” ์—†์œผ๋ฏ€๋กœ ๋‹ค์Œ ๋งž์ถฐ์•ผํ•  ์ˆซ์ž๋กœ ๋ฐ”๋กœ ๋น„๊ตํ•จ
					break;
				}
			}
		}

		if (iStrike == 3) {
			cout << "์ˆซ์ž ๋ชจ๋‘ ๋งž์ถค" << endl;
			break;
		}
		else if (iStrike == 0 && iBall == 0) {
			cout << "Out" << endl;
		}
		else {
			cout << iStrike << " Strike " << iBall << " Ball " << endl;
		}
		++iGameCnt;
	}

	return 0;
}

728x90
๋ฐ˜์‘ํ˜•
Comments