#include <stdio.h>
#include<iostream>
#include<math.h>
#include<iomanip>
using namespace std;
double xs(int L, int W, int x, int y, int R, int a, int v, int s)
{
double m,a2;
a2 = a*asin(1) * 2 / 180;
m = x + v*s*cos(a2);
while (1)
{
if (m > L - R)
m = 2 * (L - R) - m;
else if (m < R)
m = 2 * R - m;
else break;
}
return m;
}
double ys(int L, int W, int x, int y, int R, int a, int v, int s)
{
double n, a2;
a2 = a*asin(1) * 2 / 180;
n = y + v*s*sin(a2);
while (1)
{
if (n > W - R)
n = 2 * (W - R) - n;
else if (n < R)
n = 2 * R - n;
else break;
}
return n;
}
int main()
{
int i=0, j,L, W, x, y, R, a, v, s;
double m[25],n[25],X,Y;
while (cin >> L >> W >> x >> y>> R >> a >> v >> s)
{
if (L == 0 && W == 0 && x== 0 && y == 0 && R == 0 && a == 0 && v == 0 && s == 0)
break;
m[i] = xs(L, W, x, y, R, a, v, s);
n[i] = ys(L, W, x, y, R, a, v, s);
i++;
}
for (j = 0; j < i; j++)
{
X = m[j];
Y = n[j];
cout <<setprecision(2)<<fixed<< X << " " <<setprecision(2)<<fixed<< Y << endl;
}
return 0;
}
0.0分
1 人评分
C语言训练-最大数问题 (C语言代码)浏览:633 |
数列排序 (C语言代码)浏览:836 |
回文串 (C语言代码)浏览:2859 |
printf基础练习2 (C语言代码)浏览:305 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:572 |
WU-蓝桥杯算法提高VIP-勾股数 (C++代码)浏览:1607 |
【明明的随机数】 (C语言代码)浏览:787 |
循环入门练习5 (C语言代码)浏览:839 |
Tom数 (C语言代码)浏览:495 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:616 |