Предмет: Информатика,
автор: vladon914
Капитан Флинт зарыл клад на Острове сокровищ. Он оставил описание, как найти клад. Описание состоит из строк вида: "North 5", где слово – одно из "North", "South", "East", "West", – задает направление движения, а число – количество шагов, которое необходимо пройти в этом направлении.
Напишите программу, которая по описанию пути к кладу определяет точные координаты клада, считая, что начало координат находится в начале пути, ось OX направлена на восток, ось OY – на север.
Входные данные
На вход подается последовательность строк указанного формата. Гарантируется, что числа не превосходят 108.
Выходные данные
Необходимо вывести координаты клада – два целых числа через пробел. Гарантируется, что эти числа не превосходят 108.
Ответы
Автор ответа:
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
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
Похожие вопросы
Предмет: Қазақ тiлi,
автор: miras302019
Предмет: Химия,
автор: sivenkovakseniya
Предмет: Английский язык,
автор: Tomi123tomi123
Предмет: Химия,
автор: гайдар5443
Предмет: Алгебра,
автор: 2705200