1. 문제
5. 다음과 같이 원을 추상화한 Circle 클래스가 있다. Circle 클래스와 main() 함수를 작성하고 3개의 Circle 객체를 가진 배열을 선언하고, 반지름 값을 입력받고 면적이 100보다 큰 원의 개수를 출력하는 프로그램을 완성하라. Circle 클래스도 완성하라.
2. 결과
3. 코드
#include <iostream>
using namespace std;
class Circle {
int radius;
public :
void setRadius(int radius);
double getArea();
};
void Circle::setRadius(int radius) {
this->radius = radius;
}
double Circle::getArea() {
return radius * radius * 3.14;
}
int main() {
Circle c[3]; int r; int count=0;
for(int i=0; i<3; i++) {
cout << "원 " << i+1 << "의 반지름 >> ";
cin >> r;
c[i].setRadius(r);
}
for(int i=0; i<3; i++)
if( c[i].getArea() > 100 ) count++;
cout << "면적이 100보다 큰 원은 " << count << "개 입니다" << endl;
}
4. 설명
반지름을 설정하는 setRadius(int radios);와 면적을 구하여 return하는 getArea(); 멤버 함수들을 구현 합니다.
main()에서 크기가 3인 Circle배열을 선언한 후 for문을 사용하여서 각 원의 반지름을 입력 받은 후 setRadius함수로 반지름을 저장합니다.
그 다음 for문과 getArea() 멤버 함수를 사용하여서 return 받은 값이 100이 넘으면 count++;을 하여서 면적이 100보다 큰 원의 개수를 구하여 총 몇개인지 출력합니다.
'명품 C++ programming' 카테고리의 다른 글
명품 C++ programming 실습문제 4장 7번 (0) | 2019.04.06 |
---|---|
명품 C++ programming 실습문제 4장 6번 (0) | 2019.04.06 |
명품 C++ programming 실습문제 4장 4번 (0) | 2019.04.06 |
명품 C++ programming 실습문제 4장 3번 (0) | 2019.04.06 |
명품 C++ programming 실습문제 4장 2번 (0) | 2019.04.06 |