๐Ÿ’ป Dev & CSC++ Programming

C++ Programming Ch.4 Exercise 12 Solution

Problem: ๋‹ค์Œ์€ ์ด๋ฆ„๊ณผ ๋ฐ˜์ง€๋ฆ„์„ ์†์„ฑ์œผ๋กœ ๊ฐ€์ง„ Circle ํด๋ž˜์Šค์™€ ์ด๋“ค์„ ๋ฐฐ์—ด๋กœ ๊ด€๋ฆฌํ•˜๋Š” CircleManager ํด๋ž˜์Šค์ด๋‹ค. 1 2 3 4 5 6 7 8 class Circle{ int radius; // ์›์˜ ๋ฐ˜์ง€๋ฆ„ ๊ฐ’ string name; // ์›์˜ ์ด๋ฆ„ public: void setCircle(string name, int radius); // ์ด๋ฆ„๊ณผ ๋ฐ˜์ง€๋ฆ„ ์„ค์ • double getArea(); string getName(); }; 1 2 3 4 5 6 7 8 9 class CircleManager { Circle *p; // Circle ๋ฐฐ์—ด์— ๋Œ€ํ•œ ํฌ์ธํ„ฐ int size; // ๋ฐฐ์—ด์˜ ํฌ๊ธฐ public: CircleManager(int size); // size ํฌ๊ธฐ์˜ ๋ฐฐ์—ด์„ ๋™์  ์ƒ์„ฑ. ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ž…๋ ฅ ์™„๋ฃŒ ~CircleManager(); void searchByName(); // ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์›์˜ ์ด๋ฆ„์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฉด์  ์ถœ๋ ฅ void searchByArea(); // ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋ฉด์ ์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฉด์ ๋ณด๋‹ค ํฐ ์›์˜ ์ด๋ฆ„ ์ถœ๋ ฅ }; ํ‚ค๋ณด๋“œ์—์„œ ์›์˜ ๊ฐœ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›๊ณ , ๊ทธ ๊ฐœ์ˆ˜๋งŒํผ ์›์˜ ์ด๋ฆ„๊ณผ ๋ฐ˜์ง€๋ฆ„์„ ์ž…๋ ฅ๋ฐ›๊ณ , ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‹คํ–‰๋˜๋„๋ก main() ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๋ผ. ...

March 4, 2020 ยท 3 min ยท Sobamemil
๐Ÿ’ป Dev & CSC++ Programming

C++ Programming Ch.4 Exercise 8 Solution

Problem: Exercise Problem 7์˜ ๋ฌธ์ œ๋ฅผ ์ˆ˜์ •ํ•ด๋ณด์ž. ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์›์˜ ๊ฐœ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›๊ณ , ์›์˜ ๊ฐœ์ˆ˜๋งŒํผ ๋ฐ˜์ง€๋ฆ„์„ ์ž…๋ ฅ๋ฐ›๋Š” ๋ฐฉ์‹์œผ๋กœ ์ˆ˜์ •ํ•˜๋ผ. ์›์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ๋ฐฐ์—ด์„ ํ• ๋‹น๋ฐ›์•„์•ผ ํ•œ๋‹ค. Objective & Hints: ๊ฐ์ฒด ๋ฐฐ์—ด ์‘์šฉ ์—ฐ์Šต Execution Result: Code: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 #include using namespace std; class Circle{ int radius; public: void setRadius(int radius); double getArea(); }; void Circle::setRadius(int r){ radius = r; } double Circle::getArea(){ return radius * radius * 3.14; } int main() { int r, num, cnt=0; cout << "์›์˜ ๊ฐœ์ˆ˜ >> "; cin >> num ; Circle *pArray = new Circle[num]; // ์ž…๋ ฅ๋ฐ›์€ num๋งŒํผ ๋™์ ์œผ๋กœ ๊ฐ์ฒด ๋ฐฐ์—ด ์ƒ์„ฑ for(int i=0; i<num; i++){ cout << "์› " << i+1 << "์˜ ๋ฐ˜์ง€๋ฆ„ >> "; cin >> r; pArray->setRadius(r); if(pArray->getArea() > 100) cnt++; pArray++; } cout << "๋ฉด์ ์ด 100๋ณด๋‹ค ํฐ ์›์€ " << cnt << "๊ฐœ ์ž…๋‹ˆ๋‹ค"; } Explanation: ...

March 4, 2020 ยท 1 min ยท Sobamemil
๐Ÿ’ป Dev & CSC++ Programming

C++ Programming Ch.4 Exercise 1 Solution

Problem: ๋‹ค์Œ์€ ์ƒ‰์˜ 3์š”์†Œ์ธ red, green, blue๋กœ ์ƒ‰์„ ์ถ”์ƒํ™”ํ•œ Color ํด๋ž˜์Šค๋ฅผ ์„ ์–ธํ•˜๊ณ  ํ™œ์šฉํ•˜๋Š” ์ฝ”๋“œ์ด๋‹ค. ๋นˆ์นธ์„ ์ฑ„์›Œ๋ผ. red, green, blue๋Š” 0~255์˜ ๊ฐ’๋งŒ ๊ฐ€์ง„๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #include using namespace std; class Color { int red, green, blue; public: Color() {red = green = blue = 0;} Color(int r, int g, int b) {red = r; green = g; blue = b;} void setColor(int r, int g, int b) {red = r; green = g; blue = b;} void show() {cout << red << ' ' << green << ' ' << blue << endl;} }; int main() { Color screenColor(255,0,0); // ๋นจ๊ฐ„์ƒ‰์˜ screenColor ๊ฐ์ฒด ์ƒ์„ฑ Color *p; // Color ํƒ€์ž…์˜ ํฌ์ธํ„ฐ ๋ณ€์ˆ˜ p ์„ ์–ธ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ // (1) p๊ฐ€ screenColor์˜ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง€๋„๋ก ์ฝ”๋“œ ์ž‘์„ฑ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ // (2) p์™€ show()๋ฅผ ์ด์šฉํ•˜์—ฌ screenColor ์ƒ‰ ์ถœ๋ ฅ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ // (3) Color์˜ ์ผ์ฐจ์› ๋ฐฐ์—ด colors ์„ ์–ธ. ์›์†Œ๋Š” 3๊ฐœ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ // (4) p๊ฐ€ colors ๋ฐฐ์—ด์„ ๊ฐ€๋ฆฌํ‚ค๋„๋ก ์ฝ”๋“œ ์ž‘์„ฑ // (5) p์™€ setColor()๋ฅผ ์ด์šฉํ•˜์—ฌ colors[0], colors[1], colors[2]๊ฐ€ // ๊ฐ๊ฐ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘์ƒ‰์„ ๊ฐ€์ง€๋„๋ก ์ฝ”๋“œ ์ž‘์„ฑ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ // (6) p์™€ show()๋ฅผ ์ด์šฉํ•˜์—ฌ colors ๋ฐฐ์—ด์˜ ๋ชจ๋“  ๊ฐ์ฒด์˜ ์ƒ‰ ์ถœ๋ ฅ. for ๋ฌธ ์ด์šฉ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ ๏ผฟ๏ผฟ๏ผฟ๏ผฟ๏ผฟ } Objective & Hints: ...

March 4, 2020 ยท 3 min ยท Sobamemil