-
JUNGOL 기초다지기 01 출력보관함 2019. 11. 11. 22:44
프로그래밍에서 가장 기초적인 내용을 다루는 기초 다지기입니다.
이번 포스팅은 기초 다지기 중 첫 번째인 출력 문제를 풀어보도록 하겠습니다.
기초 내용인 만큼 다른 설명없이 문제와 코드만 간단하게 작성하도록 하겠습니다.
기본적으로 다음과 같이 출력하라는 지시외에 다른 제약사항이 없으므로 단순히 동일하게 출력하는 것을 목표로 하겠습니다.
501 : 출력 - 자가진단1
#include <iostream> using namespace std; int main(void) { cout << "Fun Programming!" << endl; }
502 : 출력 - 자가진단2
#include <iostream> using namespace std; int main(void) { cout << "Programming! It's fun." << endl; }
503 : 출력 - 자가진단3
#include <iostream> using namespace std; int main(void) { cout << "My name is Hong Gil Dong." << endl << "I am 13 years old." << endl; }
504 : 출력 - 자가진단4
#include <iostream> using namespace std; int main(void) { cout << "(@) (@)" << endl << "(=^.^=)" << endl << "(-m-m-)" << endl; }
505 : 출력 - 자가진단5
#include <iostream> using namespace std; int main(void) { cout << "I can program well." << endl << "Dreams come true." << endl; }
506 : 출력 - 자가진단6
#include <iostream> using namespace std; int main(void) { cout << "My height" << endl << "170" << endl << "My weight" << endl << "68.600000" << endl; }
507 : 출력 - 자가진단7
#include <iostream> using namespace std; int main(void) { cout << "5 Dan" << endl << "5 * 2 = 10" << endl; }
508 : 출력 - 자가진단8
이 문제는 의도가 명확히 드러나 있으므로 두 가지 방법으로 코딩해보겠습니다.
1. cout.setf, cout.width 사용
#include <iostream> using namespace std; int main(void) { cout.setf(ios::right); // 우측 정렬 // 설명 시작 cout.width(10); cout << "item"; cout.width(10); cout << "count"; cout.width(10); cout << "price" << endl; // pen 시작 cout.width(10); cout << "pen"; cout.width(10); cout << 20; cout.width(10); cout << 100 << endl; // note 시작 cout.width(10); cout << "note"; cout.width(10); cout << 5; cout.width(10); cout << 95 << endl; // eraser 시작 cout.width(10); cout << "eraser"; cout.width(10); cout << 110; cout.width(10); cout << 97 << endl; }
2. <iomanip>의 setw 사용
#include <iostream> #include <iomanip> using namespace std; int main(void) { cout.setf(ios::right); // 우측 정렬 cout << setw(10) << "item" << setw(10) << "count" << setw(10) << "price" << endl; cout << setw(10) << "pen" << setw(10) << 20 << setw(10) << 100 << endl; cout << setw(10) << "note" << setw(10) << 5 << setw(10) << 95 << endl; cout << setw(10) << "eraser" << setw(10) << 110 << setw(10) << 97 << endl; }
101 : 출력 - 형성평가1
#include <iostream> using namespace std; int main(void) { cout << "My name is Hong" << endl; }
102 : 출력 - 형성평가2
#include <iostream> using namespace std; int main(void) { cout << "My hometown\nFlowering mountain" << endl; }
103 : 출력 - 형성평가3
#include <iostream> using namespace std; int main(void) { cout << "TTTTTTTTTT" << endl << "TTTTTTTTTT" << endl << " TT" << endl << " TT" << endl << " TT" << endl; }
104 : 출력 - 형성평가4
이번 문제에도 조건이 명시되었네요. 합계와 평균을 수식으로 구해서 출력하는 예제입니다.
#include <iostream> using namespace std; int main(void) { int kor = 90; int mat = 80; int eng = 100; int sum = kor + mat + eng; int avg = sum / 3; cout << "kor " << kor << endl; cout << "mat " << mat << endl; cout << "eng " << eng << endl; cout << "sum " << sum << endl; cout << "avg " << avg << endl; }
105 : 출력 - 형성평가5
이번에는 setw를 이용한 코드만 올리겠습니다. 다른 방법은 자가진단8을 참고하세요.
#include <iostream> #include <iomanip> using namespace std; int main(void) { cout.setf(ios::right); // 우측 정렬 cout << setw(15) << "Seoul" << setw(15) << "10,312,545" << setw(15) << "+91,375" << endl; cout << setw(15) << "Pusan" << setw(15) << "3,567,910" << setw(15) << "+5,868" << endl; cout << setw(15) << "Incheon" << setw(15) << "2,758,296" << setw(15) << "+64,888" << endl; cout << setw(15) << "Daegu" << setw(15) << "2,511,676" << setw(15) << "+17,230" << endl; cout << setw(15) << "Gwangju" << setw(15) << "1,454,636" << setw(15) << "+29,774" << endl; }
http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&sca=1010