问题介绍:一个机器人从O点出发,向正东方向走3米到达A1,再再向正北方向走6米到达A2,再向正西方向走9米到达A3,再向正南方向走12米到达A4,再向正东方向走15米到达A5,按如此规律走下去,并且以点O为原点,以1米为单位长度,正东方向为x轴正方向,正北方向为y轴正方向建立平面直角坐标系,当机器人走到A10时,A10的坐标为多少?
代码:
#include
void createArray(int n)
{
int x;
if(n%2!=0)
{
n=n+1;
}
if((n/2)%2==0)
{
n=n*(-1);
}
x=(n*3)/2;
cout<<x<<endl;
}
void printArray(int n )
{
int y;
int i=n;
if((n+2)%4==3)
{
n=n-3;
}
else if((n+2)%4==2)
{
n=n-2;
}
else if((n+2)%4==1)
{
n=n-1;
}
y=(n*3)/2+3;
if((i+2)%4==3||(i+2)%4==2)
{
y=y*(-1);
}
cout<<y<<endl;
}
int main(int argc, char** argv) {
int x;
int y;
int n;
cout<<"请输入想查询的第几项,如A10,则为第10项"<<endl;
cin>>n;
cout<<"该项的x值为:"<<endl;
createArray(n);
cout<<"该项的y值为:"<<endl;
printArray(n );
return 0;
}
问题结果: