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

문제 : 통계를 내는 Statistics 클래스를 만들려고 한다. 데이터는 Statistics 클래스 내부에 int 배열을 동적으로 할당받아 유지한다. 다음과 같은 연산이 잘 이루어지도록 Statistics 클래스와 !, », «, ~ 연산자 함수를 작성하라. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 int main() { Statistics stat; if(!stat) cout « “현재 통계 데이타가 없습니다.” « endl; int x[5]; cout « “5 개의 정수를 입력하라»”; for(int i=0; i<5; i++) cin » x[i]; // x[i]에 정수 입력 for(int i=0; i<5; i++) stat « x[i]; // x[i] 값을 통계 객체에 삽입한다. stat « 100 « 200; // 100, 200을 통계 객체에 삽입한다. ~stat; // 통계 데이터를 모두 출력한다. int avg; stat » avg; // 통계 객체로부터 평균을 받는다. cout « “avg=” « avg « endl; // 평균을 출력한다. } 실행 결과 : ...

March 6, 2020 · 3 min · Sobamemil

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

문제 : 다음은 학과를 나타내는 Dept 클래스와 이를 활용하는 main()을 보여 준다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 class Dept { int size; // scores 배열의 크기 int* scores; // 동적 할당 받을 정수 배열의 주소 public: Dept(int size) { // 생성자 this->size = size; scores = new int[size]; } Dept(const Dept& dept); // 복사 생성자 ~Dept(); // 소멸자 int getSize() { return size; } void read(); // size 만큼 키보드에서 정수를 읽어 scores 배열에 저장 bool isOver60(int index); // index의 학생의 성적이 60보다 크면 true 리턴 }; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 int countPass(Dept dept) { // dept 학과에 60점 이상으로 통과하는 학생의 수 리턴 int count = 0; for (int i = 0; i < dept.getSize(); i++) { if (dept.isOver60(i)) count++; } return count; } int main() { Dept com(10); // 총 10명이 있는 학과 com com.read(); // 총 10명의 학생들의 성적을 키보드로부터 읽어 scores 배열에 저장 int n = countPass(com); // com 학과에 60점 이상으로 통과한 학생의 수를 리턴 cout « “60점 이상은 " « n « “명”; } (1) main()의 실행 결과가 다음과 같이 되도록 Dept 클래스에 멤버들을 모두 구현하고, 전체 프로그램을 완성하라. ...

March 5, 2020 · 5 min · Sobamemil

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

문제 : 다음 main() 함수와 실행 결과를 참고하여 half() 함수를 작성하라. 1 2 3 4 5 int main() { double n = 20; half(n); // n의 반값을 구해 n을 바꾼다. cout « n; // 10이 출력된다. } 실행 결과 : 목적 및 힌트 : 참조 연습 코드 : 1 2 3 4 5 6 7 8 9 10 11 12 #include using namespace std; half(double &num){ // 참조에 의한 호출 num /= 2; // num으로 넘어온 본래의 값이 바뀜 } int main() { double n = 20; half(n); // n의 반값을 구해 n을 바꾼다. cout « n; // 10이 출력된다. } 설명 : ...

March 5, 2020 · 1 min · Sobamemil