๐Ÿ’ป Dev & CSC++ Programming

C++ Programming Ch.5 Exercise 11 Solution

Problem: ์ฑ…์˜ ์ด๋ฆ„๊ณผ ๊ฐ€๊ฒฉ์„ ์ €์žฅํ•˜๋Š” ๋‹ค์Œ Book ํด๋ž˜์Šค์— ๋Œ€ํ•ด ๋ฌผ์Œ์— ๋‹ตํ•˜์—ฌ๋ผ. 1 2 3 4 5 6 7 8 9 class Book { char *title; // ์ œ๋ชฉ ๋ฌธ์ž์—ด int price; // ๊ฐ€๊ฒฉ public: Book(const char* title, int price); ~Book(); void set(char* title, int price); void show() { cout << title << ' ' << price << "์›" << endl; } }; (1) Book ํด๋ž˜์Šค์˜ ์ƒ์„ฑ์ž, ์†Œ๋ฉธ์ž, set() ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๋ผ. set() ํ•จ์ˆ˜๋Š” ๋ฉค๋ฒ„ ๋ณ€์ˆ˜ title์— ํ• ๋‹น๋œ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์žˆ์œผ๋ฉด ๋จผ์ € ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๊ณ  ๋‚˜์„œ ์ƒˆ๋กœ์šด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ• ๋‹น๋ฐ›๊ณ  ์ด๊ณณ์— ๋งค๊ฐœ ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›์€ ์ฑ…์ด๋ฆ„์„ ์ €์žฅํ•œ๋‹ค. ...

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

C++ Programming Ch.5 Exercise 10 Solution

Problem: ์ฐธ์กฐ๋ฅผ ๋ฆฌํ„ดํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ณด์ž. ๋‹ค์Œ ์ฝ”๋“œ์™€ Execution Result๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ append() ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์ „์ฒด ํ”„๋กœ๊ทธ๋žจ์„ ์™„์„ฑํ•˜๋ผ. append()๋Š” Buffer ๊ฐ์ฒด์— ๋ฌธ์ž์—ด์„ ์ถ”๊ฐ€ํ•˜๊ณ  Buffer ๊ฐ์ฒด์— ๋Œ€ํ•œ ์ฐธ์กฐ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜์ด๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 class Buffer{ string text; public: Buffer(string text) { this->text = text; } void add(string next) { text += next; } // text์— next ๋ฌธ์ž์—ด ๋ง๋ถ™์ด๊ธฐ void print() { cout << text << endl; } }; int main() { Buffer buf("Hello"); Buffer& temp = append(buf, "Guys"); // buf์˜ ๋ฌธ์ž์—ด์— "Guys" ๋ง๋ถ™์ž„ temp.print(); // "HelloGuys" ์ถœ๋ ฅ buf.print(); // "HelloGuys" ์ถœ๋ ฅ } Execution Result: ...

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

C++ Programming Ch.5 Exercise 3 Solution

Problem: ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘๋™ํ•˜๋„๋ก combine() ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๋ผ. 1 2 3 4 5 6 int main() { string text1("I love you"), text2("very much"); string text3; // ๋น„์–ด์žˆ๋Š” ๋ฌธ์ž์—ด combine(text1, text2, text3); // text1๊ณผ " ", ๊ทธ๋ฆฌ๊ณ  text2๋ฅผ ๋ง๋ถ™์—ฌ text3 ๋งŒ๋“ค๊ธฐ cout << text3; // "I love you very much" ์ถœ๋ ฅ } Execution Result: Objective & Hints: string ํด๋ž˜์Šค์™€ ์ฐธ์กฐ ์‚ฌ์šฉ ์—ฐ์Šต Code: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include #include using namespace std; void combine(string t1, string t2, string &t3){ t3 = t1 + " " + t2; } int main() { string text1("I love you"), text2("very much"); string text3; // ๋น„์–ด์žˆ๋Š” ๋ฌธ์ž์—ด combine(text1, text2, text3); // text1๊ณผ " ", ๊ทธ๋ฆฌ๊ณ  text2๋ฅผ ๋ง๋ถ™์—ฌ text3 ๋งŒ๋“ค๊ธฐ cout << text3; // "I love you very much" ์ถœ๋ ฅ } Explanation: ...

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

C++ Programming Ch.4 Exercise 9 Solution

Problem: ๋‹ค์Œ๊ณผ ๊ฐ™์€ Person ํด๋ž˜์Šค๊ฐ€ ์žˆ๋‹ค. Person ํด๋ž˜์Šค์™€ main() ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜์—ฌ, 3๊ฐœ์˜ Person ๊ฐ์ฒด๋ฅผ ๊ฐ€์ง€๋Š” ๋ฐฐ์—ด์„ ์„ ์–ธํ•˜๊ณ , ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‚ค๋ณด๋“œ์—์„œ ์ด๋ฆ„๊ณผ ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์ถœ๋ ฅํ•˜๊ณ  ๊ฒ€์ƒ‰ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์™„์„ฑํ•˜๋ผ. 1 2 3 4 5 6 7 8 9 class Person{ string name; string tel; public: Person(); string getName() { return name; } string getTel() { return tel; } void set(string name, string tel); }; Objective & Hints: ๊ฐ์ฒด ๋ฐฐ์—ด๊ณผ string ์‘์šฉ ์—ฐ์Šต ...

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

C++ Programming Ch.4 Exercise 6 Solution

Problem: string ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ์˜๋ฌธ ํ•œ ์ค„์„ ๋ฌธ์ž์—ด๋กœ ์ž…๋ ฅ๋ฐ›๊ณ  ๊ฑฐ๊พธ๋กœ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. Objective & Hints: string ํด๋ž˜์Šค๋กœ ๋ฌธ์ž์—ด ๋‹ค๋ฃจ๊ธฐ Execution Result: Code: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include #include using namespace std; int main() { string str; cout << "์•„๋ž˜ ํ•œ ์ค„์„ ์ž…๋ ฅํ•˜์„ธ์š”.(exit๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค)"; while(true){ cout << endl << ">>"; getline(cin,str); if(str == "exit") break; for(int i = str.length()-1; i>=0; i--) cout << str[i]; } } Explanation: ...

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

C++ Programming Ch.4 Exercise 3 Solution

Problem: string ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ๋นˆ์นธ์„ ํฌํ•จํ•˜๋Š” ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›๊ณ  ๋ฌธ์ž์—ด์—์„œ 'a'๊ฐ€ ๋ช‡๊ฐœ ์žˆ๋Š”์ง€ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด๋ณด์ž. Objective & Hints: getline(), string ํด๋ž˜์Šค ํ™œ์šฉ Execution Result: Code: (1) ๋ฌธ์ž์—ด์—์„œ 'a'๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด string ํด๋ž˜์Šค์˜ ๋ฉค๋ฒ„ at()๋‚˜ []๋ฅผ ์ด์šฉํ•˜์—ฌ ์ž‘์„ฑํ•˜๋ผ. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include #include using namespace std; int main() { string str; cout << "๋ฌธ์ž์—ด ์ž…๋ ฅ>>"; getline(cin,str); int length = str.length(); int num = 0; for(int i=0; i<length; i++){ if(str[i] == 'a') num++; } cout << "๋ฌธ์ž a๋Š” " << num << "๊ฐœ ์žˆ์Šต๋‹ˆ๋‹ค." ; } (2) ๋ฌธ์ž์—ด์—์„œ 'a'๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด string ํด๋ž˜์Šค์˜ find() ๋ฉค๋ฒ„ ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ์ž‘์„ฑํ•˜๋ผ. text.find('a', index);๋Š” text ๋ฌธ์ž์—ด์˜ index ์œ„์น˜๋ถ€ํ„ฐ 'a'๋ฅผ ์ฐพ์•„ ๋ฌธ์ž์—ด ๋‚ด ์ธ๋ฑ์Šค๋ฅผ ๋ฆฌํ„ดํ•œ๋‹ค. ...

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

C++ Programming Ch.3 Exercise 8 Solution

Problem: int ํƒ€์ž…์˜ ์ •์ˆ˜๋ฅผ ๊ฐ์ฒดํ™”ํ•œ Integer ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋ผ. Integer์˜ ๋ชจ๋“  ๋ฉค๋ฒ„ ํ•จ์ˆ˜๋ฅผ ์ž๋™ ์ธ๋ผ์ธ์œผ๋กœ ์ž‘์„ฑํ•˜๋ผ. Integer ํด๋ž˜์Šค๋ฅผ ํ™œ์šฉํ•˜๋Š” ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include #include using namespace std; int main() { Integer n(30); cout << n.get() << ' '; // 30 ์ถœ๋ ฅ n.set(50); cout << n.get() << ' '; // 50 ์ถœ๋ ฅ Integer m("300"); cout << m.get() << ' '; // 300 ์ถœ๋ ฅ cout << m.isEven(); // true(์ •์ˆ˜๋กœ 1) ์ถœ๋ ฅ } Objective & Hints: ...

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

C++ Programming Ch.3 Exercise 2 Solution

Problem: ๋‚ ์งœ๋ฅผ ๋‹ค๋ฃจ๋Š” Date ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๊ณ ์ž ํ•œ๋‹ค. Date๋ฅผ ์ด์šฉํ•˜๋Š” main()๊ณผ Execution Result๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ํด๋ž˜์Šค Date๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ์•„๋ž˜ ํ”„๋กœ๊ทธ๋žจ์— ์ถ”๊ฐ€ํ•˜๋ผ. 1 2 3 4 5 6 7 8 9 #include using namespace std; int main() { Date virth(2014, 3, 20); Date independenceDay("1945/8/15"); independenceDay.show(); cout << birth.getYear() << ',' << birth.getMonth() << ',' << birth.getDay() << endl; } Execution Result: Objective & Hints: 2๊ฐœ์˜ ์ƒ์„ฑ์ž์™€ ์—ฌ๋Ÿฌ ๋ฉค๋ฒ„๋ฅผ ๊ฐ€์ง„ ํด๋ž˜์Šค ๋งŒ๋“ค๊ธฐ ...

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

C++ Programming Ch.2 Exercise 10 Solution

Problem: ๋ฌธ์ž์—ด์„ ํ•˜๋‚˜ ์ž…๋ ฅ๋ฐ›๊ณ  ๋ฌธ์ž์—ด์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. ์˜ˆ์‹œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 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 #include using namespace std; int main() { cout << "๋ฌธ์ž์—ด ์ž…๋ ฅ>>"; char str[100]; cin.getline(str,100); for(int i=1;i<100;i++){ for(int j=0;j<i;j++) { cout << str[j]; } if(str[i]=='\0') // ๋ฌธ์ž์—ด์˜ ๋์ด๋ฉด break break; cout << endl; } return 0; }

February 28, 2020 ยท 1 min ยท Sobamemil