명품 C++ programming 실습 문제 3장 3번

문제 : 은행에서 사용하는 프로그램을 작성하기 위해, 은행 계좌 하나를 표현하는 클래스 Account가 필요하다. 계좌 정보는 계좌의 주인, 계좌 번호, 잔액을 나타내는 3 멤버 변수로 이루어진다. main() 함수의 실행과 결과가 다음과 같도록 Account 클래스를 작성하라. 1 2 3 4 5 6 7 8 9 10 #include using namespace std; int main() { Account a("Kitae", 1, 5000); // id 1번, 잔액 5000원, 이름이 Kitae인 계좌 성 a.deposit(50000); // 50000원 저금 cout << a.getOwner() << "의 잔액은 " << a.inquiry() << endl; int money = a.withdraw(20000); // 20000원 출금. withdraw()는 출금한 실제 금액 리턴 cout << a.getOwner() << "의 잔액은 " << a.inquiry() << endl; } 실행 결과 : ...

2020년 3월 2일 · 2 분 · Sobamemil

명품 C++ programming 실습 문제 3장 2번

문제 : 날짜를 다루는 Date 클래스를 작성하고자 한다. Date를 이용하는 main()과 실행 결과는 다음과 같다. 클래스 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; } 실행 결과 : 목적 및 힌트 : 2개의 생성자와 여러 멤버를 가진 클래스 만들기 ...

2020년 3월 2일 · 2 분 · Sobamemil

명품 C++ programming 실습 문제 3장 1번

문제 : 아래 main()의 실행 결과가 다음과 같도록 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; } 목적 및 힌트 : 2개의 생성자와 여러 멤버를 가진 클래스 만들기 ...

2020년 3월 2일 · 1 분 · Sobamemil

명품 C++ programming 실습 문제 2장 16번

문제 : 영문 텍스트를 입력받아 알파벳 히스토그램을 그리는 프로그램을 작성하라. 대문자는 모두 소문자로 집계하며, 텍스트 입력의 끝은 ';' 문자로 한다. 목적 및 힌트 : 문자열 읽기, C++ 프로그램 종합 응용 입력 파일 : 입력할 텍스트 파일을 첨부하였습니다. [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) 실행 결과 : 코드 : 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; } } 설명 : ...

2020년 2월 28일 · 2 분 · Sobamemil

명품 C++ programming 실습 문제 2장 15번

문제 : 덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/), 나머지(%)의 정수 5척 연산을 할 수 있는 프로그램을 작성하라. 식은 다음과 같은 형식으로 입력된다. 정수와 연산자는 하나의 빈칸으로 분리된다. 목적 및 힌트 : 공백을 포함하는 문자열 읽기, C++ 프로그램 종합 응용 한 줄을 문자열로 읽고, 공백 문자를 찾아 연산자와 두 개의 피연산자를 구분한 후, 계산하면 됩니다. 문자열을 정수로 바꿀 때 atoi() 함수를 이용하면 됩니다. 예를 들면 atoi("34") = 34 입니다. 실행 결과 : ...

2020년 2월 28일 · 2 분 · Sobamemil

명품 C++ programming 실습 문제 2장 14번

문제 : 커피를 주문하는 간단한 C++ 프로그램을 작성해보자. 커피 종류는 "에스프레소", "아메리카노", "카푸치노"의 3가지이며 가격은 각각 2000원, 2300원, 2500원이다. 하루에 20000원 이상 벌게 되면 카페를 닫는다. 실행 결과와 같이 작동하는 프로그램을 작성하라. 목적 및 힌트 : C++ 프로그램 구성. cin, strcmp() 활용 종합 연습 char coffee[100]; int num; cin >> coffee >> num; 으로 커피 이름과 잔 수를 입력받으면 됩니다. 또한 커피는 if(strcmp(coffee, "에스프레소") == 0 )과 같이 비교하면 됩니다. ...

2020년 2월 28일 · 2 분 · Sobamemil

명품 C++ programming 실습 문제 2장 13번

문제 : 중식당의 주문 과정을 C++ 프로그램으로 작성해보자. 다음 실행 결과와 같이 메뉴와 사람 수를 입력받고 이를 출력하면 된다. 잘못된 입력을 가려내는 부분도 코드에 추가하라. 목적 및 힌트 : C++ 프로그램으로 구성, 키 입력 등 종합 연습 실행 결과 : 코드 : 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; } 설명 : ...

2020년 2월 28일 · 1 분 · Sobamemil

명품 C++ programming 실습 문제 2장 12번

문제 : 다음 C 프로그램을 C++ 프로그램으로 수정하여 실행하라. 이 프로그램의 실행 결과는 실습 문제 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 실습 문제 2장 11번 ...

2020년 2월 28일 · 2 분 · Sobamemil

명품 C++ programming 실습 문제 2장 10번

문제 : 문자열을 하나 입력받고 문자열의 부분 문자열을 다음과 같이 출력하는 프로그램을 작성하라. 예시는 다음과 같다. 목적 및 힌트 : 문자열 읽기, 문자열 다루기 실행 결과 : 코드 : 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; }

2020년 2월 28일 · 1 분 · Sobamemil

명품 C++ programming 실습 문제 2장 9번

문제 : 이름, 주소, 나이를 입력받아 다시 출력하는 프로그램을 작성하라. 실행 예시는 다음과 같다. 목적 및 힌트 : 빈칸을 포함하는 문자열 읽기 실행 결과 : 코드 : 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; }

2020년 2월 28일 · 1 분 · Sobamemil