본문 바로가기

언어/C++

4장 5,6번 - 동적할당으로 원 반지름, 면적 구하기

#include <iostream>
using namespace std;

/* run this program using the console pauser or add your own getch, system("pause") or input loop */


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(int argc, char** argv) {
	
//	Circle circle[3];
	int count=0;
	int r=0;
	int num;
	
	cout << "원의 개수 >> ";
	cin >> num;
	Circle *circle= new Circle[num]; 
	
	for(int i=0; i<3; i++){
		cout <<"원" << i+1 << "의 반지름 >> ";
		cin >> r;
		circle[i].setRadius(r);
	}
	
	for(int i=0; i<3; i++){
		if(circle[i].getArea() >100){
			count++;
		}	
	}
	cout << "면적이 100보다 큰 원은 " << count << "개 입니다.";
	
	delete [] circle;
	return 0;
}