#include #include int main(void) { int i; float a, x, y, sqrt2; // char s[200]; int c1, c2; x = y = 0; sqrt2 = sqrt(2) / 2; scanf("%d", &i); while (i>0) { //printf("%d",i); c1 = getchar(); c2 = getchar(); //printf("'%c' '%c'\n",c1,c2); switch (c1) { case 'N': { if (c2=='E') { a = i * sqrt2; x += a; y += a; c2=getchar(); } else if (c2=='W') { a = i * sqrt2; x -= a; y +=a; c2=getchar(); } else y += i; break; } case 'E': { x += i; break; } case 'S': { if (c2=='E') { a = i * sqrt2; x += a; y -= a; c2=getchar(); } else if (c2=='W') { a = i * sqrt2; x -= a; y -=a; c2=getchar(); } else y -= i; break; } case 'W': { x -= i; break; } } // endswitch if (c2=='.') { if ((x<0.001) && (x>-0.001)) x = 0; if ((y<0.001) && (y>-0.001)) y = 0; printf("You can go to (%.3f,%.3f), the distance is %.3f steps.\n", x, y, sqrt(x*x + y*y)); x = y = 0; getchar(); //scanf("%s\n", s); } i = 0; scanf("%d", &i); } printf("%d",i); return 0; }