// test_max.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include <math.h>
#include <iostream>
using namespace std;
void calIndex(int n)
{
int min=0;
int d=0;
min=sqrt((float)n);
int indx=0;
int indy=0;
if(min*min==n && min%2==1)
{
indx=min/2;
indy=-min/2;
}
else if(min%2==0 && min*min!=n)
{
d=(min+1)*(min+1)-n;
indx=(min+1)/2;
indy=-(min+1)/2;
if(d<min+1)
{
indx=indx-d;
}
else
{
indx=indx-min;
indy=indy+d-min;
}
}
else
{
d=(min+1)*(min+1)-n;
indx=-(min+1)/2+1;
indy=(min+1)/2;
if(min*min==n)
{
indx=-min/2+1;
indy=min/2;
}
else if(d<=min)
{
indx=indx+d;
}
else
{
indx=indx+min;
indy=indy-(d-min);
}
}
printf("The Coordinate is (%d ,%d).\n",indx,indy);
}
int main()
{
int n=0;
while(true)
{
printf("Please enter the a number:");
scanf("%d",&n);
if(n!=-1)
{
calIndex(n);
}
else
{
break;
}
}
system("pause");
return 0;
}