๐Ÿ’ป Dev & CSC++ Programming

C++ Programming Ch.10 Exercise 8 Solution

Problem: ๋ฌธ์ œ 7์„ ํ‘ธ๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•œ๋‹ค. bigger() ํ•จ์ˆ˜์˜ ๋‹ค์Œ ๋ผ์ธ์—์„œ > ์—ฐ์‚ฐ์ž ๋•Œ๋ฌธ์— 1 if(a > b) return a; T์— Circle๊ณผ ๊ฐ™์€ ํด๋ž˜์Šค ํƒ€์ž…์ด ๋Œ€์ž…๋˜๋ฉด, ๊ตฌ์ฒดํ™”๊ฐ€ ์‹คํŒจํ•˜์—ฌ ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ถ”์ƒ ํด๋ž˜์Šค Comparable์„ ์ œ์•ˆํ•œ๋‹ค. 1 2 3 4 5 6 class Comparable { public: virtual bool operator > (Comparable& op2) = 0; // ์ˆœ์ˆ˜ ๊ฐ€์ƒ ํ•จ์ˆ˜ virtual bool operator < (Comparable& op2) = 0; // ์ˆœ์ˆ˜ ๊ฐ€์ƒ ํ•จ์ˆ˜ virtual bool operator == (Comparable& op2) = 0; // ์ˆœ์ˆ˜ ๊ฐ€์ƒ ํ•จ์ˆ˜ }; Circle ํด๋ž˜์Šค๊ฐ€ Comparable์„ ์ƒ์†๋ฐ›์•„ ์ˆœ์ˆ˜ ๊ฐ€์ƒ ํ•จ์ˆ˜๋ฅผ ๋ชจ๋‘ ๊ตฌํ˜„ํ•˜๋ฉด, ์•ž์˜ bigger() ํ…œํ”Œ๋ฆฟ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์•„๋ฌด ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค. ...

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

C++ Programming Ch.9 Exercise 2 Solution

Problem: The following is an abstract class Converter that converts units. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 class Converter { protected: double ratio; virtual double convert(double src)=0; // src๋ฅผ ๋‹ค๋ฅธ ๋‹จ์œ„๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค. virtual string getSourceString()=0; // src ๋‹จ์œ„ ๋ช…์นญ virtual string getDestString()=0; // dest ๋‹จ์œ„ ๋ช…์นญ public: Converter(double ratio) { this->ratio = ratio; } void run(){ double src; cout << getSourceString() << "์„ " << getDestString() << "๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. "; cout << getSourceString() << "์„ ์ž…๋ ฅํ•˜์„ธ์š”>> "; cin >> src; cout << "๋ณ€ํ™˜ ๊ฒฐ๊ณผ : " << convert(src) << getDestString() << endl; } }; Write a km๋ฅผ mile(๋งˆ์ผ)๋กœ ๋ณ€ํ™˜ํ•˜๋Š” KmToMile class that inherits from the Converter class. The main() function and execution result are as follows. ...

November 20, 2019 ยท 2 min ยท Sobamemil