Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

IsThisIntegration?/하기웅

From ZeroWiki

풀이

처음에 적분을 이용해서 볼려고 별 쑈를 다하다가 결국엔 적분이 기억이 잘안나서.. 다른 원시적인 방법으로 바꿔서 계산했음^^

일단 적분을 이용해서 구하면 인테그랄(0에서 1/2까지) 루트(a^2 - x^2) 을 구하면 되고~ x= cos t 로 치환하여 삼각 치환법을 이용해서 구한다~ (그런데 왜 잘 안될까??ㅋㅋ)

다른 풀이!! 노가다..ㅋㅋ 일단 제일 가운데 부분의 넓이를 구한다. 두 선이 만나는 부분이 (1/2 , 루트(3)/2)이라는 것을 쉽게 알 수 있으므로~ 가장 가운데 부분의 넓이 = 가운데 사각형 부분 + 나머지 부분 에서~ 가운데 사각형 부분은 쉽게 구할 수 있고 그 옆에 붙은 부분의 넒이면 구하면 된다. (0,0)에서 (1/2, 루트(3)/2) 지점과 (루트(3)/2, 1/2) 지점을 지어서 만든 원의 일부분의 넓이는 파이/12 라는 것을 알 수 있다. y=루트(3)x 라는 직선과 y=(1/루트(3))x 라는 직선이 y=1/2과 만나는 점을 이용하여 구한 두점의 차이 * (루트(3)/2) / 2 를 하면 (0,0)에서 (1/2, 루트(3)/2) 지점과 (루트(3)/2, 1/2) 지점을 지어서 만든 삼각형의 넓이는 구할 수 있다. 이렇게 가운데 부분의 넓이를 구해내면 차례로 다른 넓이고 구할 수 있다. 이런 방법으로 간단한 공식을 구한 뒤 프로그래밍~


소스

#include <iostream>
#include <cmath>
using namespace std;

#define pi 3.141592653589793238462643383279

double size;

int main()
{
	cout.setf(ios::fixed, ios::floatfield);    
    cout.setf(ios::showpoint);    
    cout.precision(3);

	while(cin>>size)
		cout << (pi/3 +1-sqrt(3.0))*size*size <<" "<< 2*(pi/6-2+sqrt(3.0))*size*size<<" "<<(4-(2.0/3)*pi-sqrt(3.0))*size*size<<endl;

	return 0;
}