C++ Programming Ch.3 Exercise 1 Solution

Problem: ์•„๋ž˜ main()์˜ Execution Result๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™๋„๋ก Tower ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋ผ. 1 2 3 4 5 6 7 8 9 #include using namespace std; int main() { Tower myTower; // 1 ๋ฏธํ„ฐ Tower seoulTower(100); // 100 ๋ฏธํ„ฐ cout << "๋†’์ด๋Š” " << myTower.getHeight() << "๋ฏธํ„ฐ" << endl; cout << "๋†’์ด๋Š” " << seoulTower.getHeight() << "๋ฏธํ„ฐ" << endl; } Objective & Hints: 2๊ฐœ์˜ ์ƒ์„ฑ์ž์™€ ์—ฌ๋Ÿฌ ๋ฉค๋ฒ„๋ฅผ ๊ฐ€์ง„ ํด๋ž˜์Šค ๋งŒ๋“ค๊ธฐ ...

March 2, 2020 ยท 1 min ยท Sobamemil

C++ Programming Ch.2 Exercise 16 Solution

Problem: ์˜๋ฌธ ํ…์ŠคํŠธ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์•ŒํŒŒ๋ฒณ ํžˆ์Šคํ† ๊ทธ๋žจ์„ ๊ทธ๋ฆฌ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. ๋Œ€๋ฌธ์ž๋Š” ๋ชจ๋‘ ์†Œ๋ฌธ์ž๋กœ ์ง‘๊ณ„ํ•˜๋ฉฐ, ํ…์ŠคํŠธ ์ž…๋ ฅ์˜ ๋์€ ';' ๋ฌธ์ž๋กœ ํ•œ๋‹ค. Objective & Hints: ๋ฌธ์ž์—ด ์ฝ๊ธฐ, C++ ํ”„๋กœ๊ทธ๋žจ ์ข…ํ•ฉ ์‘์šฉ Input File: ์ž…๋ ฅํ•  ํ…์ŠคํŠธ ํŒŒ์ผ์„ ์ฒจ๋ถ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค. [2-16.txt 0.00MB](https://blog.kakaocdn.net/dna/EsAHK/btqChFfPBnw/AAAAAAAAAAAAAAAAAAAAAOhcwRebixdRiSrFB2r5c8Z4mBZDeCt4ibUUEp2n5aCw/2-16.txt?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1788188399&allow_ip=&allow_referer=&signature=PEoHUr5ktP9MyFLvskuQj0jS1Q8%3D&attach=1&knm=tfile.txt) 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 #include #include using namespace std; int main() { int tot=0; // ์ด ์•ŒํŒŒ๋ฒณ ๊ฐœ์ˆ˜ int alpha[27]={0}; // ๊ฐ๊ฐ์˜ ์•ŒํŒŒ๋ฒณ์„ ๋‚˜ํƒ€๋ƒ„ char text[10000]; // text๋ฅผ ์ €์žฅํ•  ๋ฐฐ์—ด cout << "์˜๋ฌธ ํ…์ŠคํŠธ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”. ํžˆ์Šคํ† ๊ทธ๋žจ์„ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค.\nํ…์ŠคํŠธ์˜ ๋์€ ; ์ž…๋‹ˆ๋‹ค. 10000๊ฐœ๊นŒ์ง€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.\n"; cin.getline(text,10000,';'); // ์ตœ๋Œ€ 10,000๊ฐœ์˜ ์˜๋ฌธ ํ…์ŠคํŠธ๋ฅผ ';'์ „๊นŒ์ง€ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค for (int i = 0; i<strlen(text); i++) { // text[0]๋ถ€ํ„ฐ text์˜ ๋๊นŒ์ง€ if (isalpha(text[i])) { // text[i]๊ฐ€ ์•ŒํŒŒ๋ฒณ์ด๋ฉด ์ฐธ if(text[i]<91) text[i] = tolower(text[i]); // text[i]๊ฐ€ ๋Œ€๋ฌธ์ž์ด๋ฉด ์†Œ๋ฌธ์ž๋กœ ๋ณ€๊ฒฝ tot++; alpha[text[i] - 97]++; // ๊ฐ๊ฐ์˜ ์•ŒํŒŒ๋ฒณ์ด ๋ช‡๊ฐœ์ธ์ง€ ์นด์šดํŠธ } } cout << "์ด ์•ŒํŒŒ๋ฒณ ์ˆ˜ " << tot << endl << endl; for (int i = 0; i < 26; ++i) { // ์•ŒํŒŒ๋ฒณ์˜ ์†Œ๋ฌธ์ž ์ด ๊ฐœ์ˆ˜๋Š” 26๊ฐœ (a~z) cout << (char)(i+'a') << "(" << alpha[i] << ")"; // a๋ถ€ํ„ฐ z๊นŒ์ง€ ์ถœ๋ ฅ ํ›„ ๊ฐ (์•ŒํŒŒ๋ฒณ์˜ ๊ฐœ์ˆ˜) ์ถœ๋ ฅ cout << "\t: "; // ํฌ๋งท์„ ์ถœ๋ ฅํ•˜๊ธฐ ์œ„ํ•ด ํƒญ๊ณผ ":" ์ถœ๋ ฅ for (int j = 1; j <= alpha[i]; j++) // ๊ฐ ์•ŒํŒŒ๋ฒณ์˜ ๊ฐœ์ˆ˜๋งŒํผ "*" ์ถœ๋ ฅ cout << "*"; cout << endl; } } Explanation: ...

February 28, 2020 ยท 2 min ยท Sobamemil

C++ Programming Ch.2 Exercise 15 Solution

Problem: ๋ง์…ˆ(+), ๋บ„์…ˆ(-), ๊ณฑ์…ˆ(*), ๋‚˜๋ˆ—์…ˆ(/), ๋‚˜๋จธ์ง€(%)์˜ ์ •์ˆ˜ 5์ฒ™ ์—ฐ์‚ฐ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜•์‹์œผ๋กœ ์ž…๋ ฅ๋œ๋‹ค. ์ •์ˆ˜์™€ ์—ฐ์‚ฐ์ž๋Š” ํ•˜๋‚˜์˜ ๋นˆ์นธ์œผ๋กœ ๋ถ„๋ฆฌ๋œ๋‹ค. Objective & Hints: ๊ณต๋ฐฑ์„ ํฌํ•จํ•˜๋Š” ๋ฌธ์ž์—ด ์ฝ๊ธฐ, C++ ํ”„๋กœ๊ทธ๋žจ ์ข…ํ•ฉ ์‘์šฉ ํ•œ ์ค„์„ ๋ฌธ์ž์—ด๋กœ ์ฝ๊ณ , ๊ณต๋ฐฑ ๋ฌธ์ž๋ฅผ ์ฐพ์•„ ์—ฐ์‚ฐ์ž์™€ ๋‘ ๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ๊ตฌ๋ถ„ํ•œ ํ›„, ๊ณ„์‚ฐํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด์„ ์ •์ˆ˜๋กœ ๋ฐ”๊ฟ€ ๋•Œ atoi() ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด atoi("34") = 34 ์ž…๋‹ˆ๋‹ค. 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 34 35 36 37 #include #include #include using namespace std; int main(){ char sic[100]; char *symbol; int front,rear; while(true){ cout << "? "; cin.getline(sic,100); front = atoi(strtok(sic, " ")); symbol = strtok(NULL, " "); rear = atoi(strtok(NULL, " ")); if(*symbol == '+'){ cout << front << " + " << rear << " = " << front+rear << endl; } else if(*symbol == '-'){ cout << front << " - " << rear << " = " << front-rear << endl; } else if(*symbol == '*'){ cout << front << " * " << rear << " = " << front*rear << endl; } else if(*symbol == '/'){ cout << front << " / " << rear << " = " << front/rear << endl; } else if(*symbol == '%'){ cout << front << " % " << rear << " = " << front%rear << endl; } } return 0; } Explanation: ...

February 28, 2020 ยท 2 min ยท Sobamemil

C++ Programming Ch.2 Exercise 14 Solution

Problem: ์ปคํ”ผ๋ฅผ ์ฃผ๋ฌธํ•˜๋Š” ๊ฐ„๋‹จํ•œ C++ ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด๋ณด์ž. ์ปคํ”ผ ์ข…๋ฅ˜๋Š” "์—์Šคํ”„๋ ˆ์†Œ", "์•„๋ฉ”๋ฆฌ์นด๋…ธ", "์นดํ‘ธ์น˜๋…ธ"์˜ 3๊ฐ€์ง€์ด๋ฉฐ ๊ฐ€๊ฒฉ์€ ๊ฐ๊ฐ 2000์›, 2300์›, 2500์›์ด๋‹ค. ํ•˜๋ฃจ์— 20000์› ์ด์ƒ ๋ฒŒ๊ฒŒ ๋˜๋ฉด ์นดํŽ˜๋ฅผ ๋‹ซ๋Š”๋‹ค. Execution Result์™€ ๊ฐ™์ด ์ž‘๋™ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. Objective & Hints: C++ ํ”„๋กœ๊ทธ๋žจ ๊ตฌ์„ฑ. cin, strcmp() ํ™œ์šฉ ์ข…ํ•ฉ ์—ฐ์Šต char coffee[100]; int num; cin >> coffee >> num; ์œผ๋กœ ์ปคํ”ผ ์ด๋ฆ„๊ณผ ์ž” ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์œผ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ปคํ”ผ๋Š” if(strcmp(coffee, "์—์Šคํ”„๋ ˆ์†Œ") == 0 )๊ณผ ๊ฐ™์ด ๋น„๊ตํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. Execution Result: ...

February 28, 2020 ยท 1 min ยท Sobamemil

C++ Programming Ch.2 Exercise 13 Solution

Problem: ์ค‘์‹๋‹น์˜ ์ฃผ๋ฌธ ๊ณผ์ •์„ C++ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ž‘์„ฑํ•ด๋ณด์ž. ๋‹ค์Œ Execution Result์™€ ๊ฐ™์ด ๋ฉ”๋‰ด์™€ ์‚ฌ๋žŒ ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›๊ณ  ์ด๋ฅผ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค. ์ž˜๋ชป๋œ ์ž…๋ ฅ์„ ๊ฐ€๋ ค๋‚ด๋Š” ๋ถ€๋ถ„๋„ ์ฝ”๋“œ์— ์ถ”๊ฐ€ํ•˜๋ผ. Objective & Hints: C++ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ๊ตฌ์„ฑ, ํ‚ค ์ž…๋ ฅ ๋“ฑ ์ข…ํ•ฉ ์—ฐ์Šต 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 #include using namespace std; int main() { int num,tot; cout << "***** ์Šน๋ฆฌ์žฅ์— ์˜ค์‹  ๊ฒƒ์„ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ***** \n"; while(true){ cout << "์งฌ๋ฝ•:1, ์งœ์žฅ:2, ๊ตฐ๋งŒ๋‘:3, ์ข…๋ฃŒ:4>> "; cin >> num; if(num == 4) { cout << "์˜ค๋Š˜ ์˜์—…์€ ๋๋‚ฌ์Šต๋‹ˆ๋‹ค."; break; } if(num > 4) { cout << "๋‹ค์‹œ ์ฃผ๋ฌธํ•˜์„ธ์š”!!\n"; continue; } cout << "๋ช‡์ธ๋ถ„?"; cin >> tot; if(num==1) cout << "์งฌ๋ฝ• " << tot << "์ธ๋ถ„ ๋‚˜์™”์Šต๋‹ˆ๋‹ค\n"; else if(num==2) cout << "์งœ์žฅ " << tot << "์ธ๋ถ„ ๋‚˜์™”์Šต๋‹ˆ๋‹ค\n"; else if(num==3) cout << "๊ตฐ๋งŒ๋‘ " << tot << "์ธ๋ถ„ ๋‚˜์™”์Šต๋‹ˆ๋‹ค\n"; } return 0; } Explanation: ...

February 28, 2020 ยท 1 min ยท Sobamemil

C++ Programming Ch.2 Exercise 12 Solution

Problem: ๋‹ค์Œ C ํ”„๋กœ๊ทธ๋žจ์„ C++ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ˆ˜์ •ํ•˜์—ฌ ์‹คํ–‰ํ•˜๋ผ. ์ด ํ”„๋กœ๊ทธ๋žจ์˜ Execution Result๋Š” Exercise Problem 11๊ณผ ๊ฐ™๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include <stdio.h> int sum(); int main() { int n=0; printf("๋ ์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”>>"); scanf("%d", &n); printf("1์—์„œ %d๊นŒ์ง€์˜ ํ•ฉ์€ %d ์ž…๋‹ˆ๋‹ค.\n", n, sum(1,n)); return 0; } int sum(int a, int b) { int k, res=0; for(k=a; k<=b; k++){ res += k; } return res; } 2020/02/28 - [C++/๋ช…ํ’ˆ C++ programming] - ๋ช…ํ’ˆ C++ programming Exercise Problem 2์žฅ 11๋ฒˆ ...

February 28, 2020 ยท 2 min ยท Sobamemil

C++ Programming Ch.2 Exercise 11 Solution

Problem: ๋‹ค์Œ C ํ”„๋กœ๊ทธ๋žจ์„ C++ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ˆ˜์ •ํ•˜์—ฌ ์‹คํ–‰ํ•˜๋ผ. 1 2 3 4 5 6 7 8 9 10 11 12 #include <stdio.h> int main() { int k, n=0; int sum=0; printf("๋ ์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”>>"); scanf("%d", &n); for(k=1; k<=n; k++) { sum += k; } printf("1์—์„œ %d๊นŒ์ง€์˜ ํ•ฉ์€ %d ์ž…๋‹ˆ๋‹ค.\n", n, sum); return 0; } Objective & Hints: C++ Programming์— ๋Œ€ํ•œ ์ „๋ฐ˜์ ์ธ ์ดํ•ด Execution Result: Code: 1 2 3 4 5 6 7 8 9 10 11 12 #include using namespace std; int main() { int n=0; int sum=0; cout << "๋ ์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”>>"; cin >> n; for(int k=1; k<=n; k++) sum += k; cout << "1์—์„œ " << n << "๊นŒ์ง€์˜ ํ•ฉ์€ " << sum << "์ž…๋‹ˆ๋‹ค." << endl; } Explanation: ...

February 28, 2020 ยท 1 min ยท Sobamemil

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

C++ Programming Ch.2 Exercise 9 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() { char name[100]; char addr[100]; int age; cout << "์ด๋ฆ„์€?"; cin.getline(name,100); cout << "์ฃผ์†Œ๋Š”?"; cin.getline(addr,100); cout << "๋‚˜์ด๋Š”?"; cin >> age; cout << name << ", " << addr << ", " << age << "์„ธ"; return 0; }

February 28, 2020 ยท 1 min ยท Sobamemil

C++ Programming Ch.2 Exercise 8 Solution

Problem: ํ•œ ๋ผ์ธ์— ';' ์œผ๋กœ 5๊ฐœ์˜ ์ด๋ฆ„์„ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ž…๋ ฅ๋ฐ›์•„, ๊ฐ ์ด๋ฆ„์„ ๋Š์–ด๋‚ด์–ด ํ™”๋ฉด์— ์ถœ๋ ฅํ•˜๊ณ  ๊ฐ€์žฅ ๊ธด ์ด๋ฆ„์„ ํŒ๋ณ„ํ•˜๋ผ. Objective & Hints: cin.getline()์œผ๋กœ ๋ฌธ์ž์—ด ์ฝ๊ธฐ ';'๊นŒ์ง€ ๋ฌธ์ž์—ด์„ ์ฝ๊ณ ์ž ํ•˜๋ฉด ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  1 2 char name[100]; cin.getline(name, 100, ';'); 5๊ฐœ ์ฝ์–ด์•ผ ํ•˜๋‹ˆ 5๋ฒˆ ๋ฃจํ”„๋ฅผ ๋ˆ๋‹ค. 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 #include #include using namespace std; int main() { int A=0; int i; char name[100]; char longName[100]; cout << "5 ๋ช…์˜ ์ด๋ฆ„์„ ';' ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ž…๋ ฅํ•˜์„ธ์š” \n>>"; for(i=1;i<6;i++){ cin.getline(name,100,';'); cout << i << " : " << name << endl; if(A < strlen(name)) { A = strlen(name); strcpy(longName,name); } } cout << "๊ฐ€์žฅ ๊ธด ์ด๋ฆ„์€ " << longName; return 0; } Explanation: ...

February 28, 2020 ยท 1 min ยท Sobamemil