Капитан Флинт зарыл клад ** Острове сокровищ. Он оставил описание, как найти клад....

0 голосов
918 просмотров

Капитан Флинт зарыл клад на Острове сокровищ. Он оставил описание, как найти клад. Описание состоит из строк вида: "North 5", где слово – одно из "North", "South", "East", "West", – задает направление движения, а число – количество шагов, которое необходимо пройти в этом направлении.

Напишите программу, которая по описанию пути к кладу определяет точные координаты клада, считая, что начало координат находится в начале пути, ось OX направлена на восток, ось OY – на север.

Входные данные
На вход подается последовательность строк указанного формата. Гарантируется, что числа не превосходят 108.

Выходные данные
Необходимо вывести координаты клада – два целых числа через пробел. Гарантируется, что эти числа не превосходят 108.


Информатика (92 баллов) | 918 просмотров
0

Весьма простая задачка. По North n надо y увеличить на n, по South n надо y уменьшить на n, по East n надо х увеличить на n, по West n надо х уменьшить на n.

0

Можешь саму программу написать?

Дан 1 ответ
0 голосов
Правильный ответ

Var
  d: string;
  i, p, s, x, y, err: integer;

begin
  x := 0; y := 0;
  for i := 1 to 5 do
  begin
    readln(d);
    p := Pos(' ', d);
    Val(Copy(d, p + 1, Length(d) - p + 1), s, err);
    d := Copy(d, 1, p - 1);
    case d of
      'North': y := y + s;
      'South': y := y - s;
      'East': x := x + s;
      'West': x := x - s
    end
  end;
  Writeln(x, ' ', y)
end.

Тестовое решение:
East 10
North 12
West 5
South 2
West 7
-2 10


(142k баллов)