2018. 12. 22. 00:05 C,C++ 코드

진자 운동 코드

#include <cmath>
//M_PI 상수 포함
using namespace std;
void printpos(const double maxangle, const int length){
	//maxangle은 진자운동의 진폭, length는 줄의 길이
	//줄의 시작점은 (0, 0)으로 가정
	//오른쪽 정점부터 시작 가정
	double Angle=-maxangle;
	double VAngle=0;
	for(int i=0;i<100;i++){
		cout<<i+1<<". 현재 각도(라디안) : "<<2*M_PI*Angle<<", 구의 좌표(x, y) : ("<<
		-sin(2*M_PI*Angle)*length<<", "<<cos(2*M_PI*Angle*length)<<")\n";
		if(abs(VAngle*2*M_PI) <= 0.01){
			cout<<"진자 운동의 정점입니다.\n";
			VAngle = 0;
		}
		cout<<"현재 각속도 : "<<VAngle*2*M_PI<<'\n';
		VAngle-=1.5/length*sin(2*M_PI*Angle);
		Angle+=VAngle;
	}
}
int main() {
	// your code goes here
	double ma;
	int len;
	cin>>ma>>len;
	printpos(ma, len);
	return 0;
}

'C,C++ 코드' 카테고리의 다른 글

single linked list  (0) 2018.12.25
하노이 탑 코드  (0) 2018.12.23
인라인 코드 테스트  (2) 2018.12.22
퀵 정렬 함수  (0) 2018.12.16
문자열 알고리즘 시간 측정 코드  (0) 2018.12.16
Posted by Semi Developer

블로그 이미지
C++ 코드 저장용도
Semi Developer

태그목록

Yesterday
Today
Total

달력

 « |  » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

최근에 올라온 글

최근에 달린 댓글

글 보관함