#include #include int main(void) { int rc, v; char znak; int x,y; int dx,dy; double vx,vy; rc = scanf("%d", &v); while (rc != 0) { x = y = 0; dx = dy = 0; while (1) { scanf("%c", &znak); switch(znak) { case 'N': scanf("%c", &znak); switch (znak) { case 'E': dx += v; scanf("%c", &znak); break; case 'W': dy -= v; scanf("%c", &znak); break; default: y += v; break; } break; case 'E': x += v; scanf("%c", &znak); break; case 'S': scanf("%c", &znak); switch (znak) { case 'E': dy += v; scanf("%c", &znak); break; case 'W': dx -= v; scanf("%c", &znak); break; default: y -= v; break; } break; case 'W': scanf("%c", &znak); x -= v; break; } if (znak == '.') { vx = x + (dx + dy) / M_SQRT2; vy = y + (dx - dy) / M_SQRT2; printf("You can go to (%.3f,%.3f), ", vx, vy); vx = sqrt(vx*vx + vy*vy); printf("the distance is %.3f steps.\n", vx); break; } scanf("%d", &v); } rc = scanf("%d", &v); // printf("%d %d\n", rc,v); } // printf("KONEC"); // for (v = 0; v < 3; v++) scanf("%c", &znak); return(0); }