본문 바로가기

언어/C++

4장 예제- 면적 조건에 따른 원의 개수 구하기

#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

class Circle{
	private :
		int radius;
	public:
		Circle();
		~Circle();
		void setRadius(int r){
			radius=r;
		}
		double getArea() {
			return 3.14*radius*radius;
		}
};


Circle:: Circle(){
	radius=1;
}

int main(int argc, char** argv) {
	
	int num;
	int radius;
	int count=0;
	cout << "생성하고자 하는 원의 개수 ? ";
	cin>> num;
	
	Circle *circle=new Circle [num];
	for(int i=0; i<num;i++){
		cout <<"원"<<i<<":";
		cin >> radius; 
		circle[i].setRadius(radius);	
	}
	
	for(int i=0; i<num; i++){
		cout << circle[i].getArea()<< " ";		
	}
	
	for(int i=0; i<num; i++){
		if(circle[i].getArea()>=100 && circle[i].getArea()<=200)
			count++;	
	} 
	
	cout <<"면적이 100에서 200 사이인 원의 개수는 " << count ;
	
	
	return 0;
}