using System;
namespace ConcoleApplication
{
class Program
enum CardinalPoints //Стороны света
North,
West,
South,
East
}
public static int Convert(int a)//Перевод команды(сделал для удобства)
if (a == -1)
return 3;
if (a == 1)
return 1;
return 2;
public static void Main()
var n1 = int.Parse(Console.ReadLine());
var n2 = int.Parse(Console.ReadLine());
n1 = Convert(n1);
n2 = Convert(n2);
var point = (n1 + n2) % 4;
switch ((CardinalPoints) point)//Вывод ответа
case CardinalPoints.East:
Console.WriteLine("Восток");
break;
case CardinalPoints.South:
Console.WriteLine("Юг");
case CardinalPoints.West:
Console.WriteLine("Запад");
case CardinalPoints.North:
Console.WriteLine("Север");
Объяснение:
Советую потестировать. Если что исправлю, самому просто лень было тестировать)
Смотри картинки
3.
Пусть Чертёжник в точке с начальными координатами (x, y).
Чтобы узнать где после всех команд сместиться на вектор оказался Чертёжник надо сложить все указанные команды, отдельно по каждой оси.
x = 3 + 1 + (-1) + 0 = 3 + 1 - 1 + 0 = 3
y = 3 + 0 + (-1) + 1 = 3 + 0 - 1 + 1 = 3
Чертежник оказался в точке с координатами (x +3, y +3).
Чтобы вернуться в исходную точку надо заменить узнанные векторы противоположными:
сместиться на вектор (-3, -3)
4.
После выполнения команды сместиться на вектор (a, b), Чертёжник оказывается в точке (x + a, y + b), относительно начальных координат (x, y).
начальные координаты (1, 1)
Т.к. цикл должен повториться 3 раза, то выполним указанные в нём команды 3 раза.
сместиться на вектор (2, 0) - Чертёжник оказывается в точке (3, 1)
начальные координаты (3, 1)
сместиться на вектор (0, 1) - Чертёжник оказывается в точке (3, 2)
начальные координаты (3, 2)
сместиться на вектор (2, 0) - Чертёжник оказывается в точке (5, 2)
начальные координаты (5, 2)
сместиться на вектор (0, 1) - Чертёжник оказывается в точке (5, 3)
начальные координаты (5, 3)
сместиться на вектор (2, 0) - Чертёжник оказывается в точке (7, 3)
начальные координаты (7, 3)
сместиться на вектор (0, 1) - Чертёжник оказывается в точке (7, 4)
Смещения по оси x вправо и по оси y вверх - положительные.
Смещения по оси x влево и по оси y вниз - отрицательные.
using System;
namespace ConcoleApplication
{
class Program
{
enum CardinalPoints //Стороны света
{
North,
West,
South,
East
}
public static int Convert(int a)//Перевод команды(сделал для удобства)
{
if (a == -1)
return 3;
if (a == 1)
return 1;
return 2;
}
public static void Main()
{
var n1 = int.Parse(Console.ReadLine());
var n2 = int.Parse(Console.ReadLine());
n1 = Convert(n1);
n2 = Convert(n2);
var point = (n1 + n2) % 4;
switch ((CardinalPoints) point)//Вывод ответа
{
case CardinalPoints.East:
Console.WriteLine("Восток");
break;
case CardinalPoints.South:
Console.WriteLine("Юг");
break;
case CardinalPoints.West:
Console.WriteLine("Запад");
break;
case CardinalPoints.North:
Console.WriteLine("Север");
break;
}
}
}
}
Объяснение:
Советую потестировать. Если что исправлю, самому просто лень было тестировать)
Смотри картинки
Объяснение:
3.
Пусть Чертёжник в точке с начальными координатами (x, y).
Чтобы узнать где после всех команд сместиться на вектор оказался Чертёжник надо сложить все указанные команды, отдельно по каждой оси.
x = 3 + 1 + (-1) + 0 = 3 + 1 - 1 + 0 = 3
y = 3 + 0 + (-1) + 1 = 3 + 0 - 1 + 1 = 3
Чертежник оказался в точке с координатами (x +3, y +3).
Чтобы вернуться в исходную точку надо заменить узнанные векторы противоположными:
сместиться на вектор (-3, -3)
4.
После выполнения команды сместиться на вектор (a, b), Чертёжник оказывается в точке (x + a, y + b), относительно начальных координат (x, y).
начальные координаты (1, 1)
Т.к. цикл должен повториться 3 раза, то выполним указанные в нём команды 3 раза.
начальные координаты (1, 1)
сместиться на вектор (2, 0) - Чертёжник оказывается в точке (3, 1)
начальные координаты (3, 1)
сместиться на вектор (0, 1) - Чертёжник оказывается в точке (3, 2)
начальные координаты (3, 2)
сместиться на вектор (2, 0) - Чертёжник оказывается в точке (5, 2)
начальные координаты (5, 2)
сместиться на вектор (0, 1) - Чертёжник оказывается в точке (5, 3)
начальные координаты (5, 3)
сместиться на вектор (2, 0) - Чертёжник оказывается в точке (7, 3)
начальные координаты (7, 3)
сместиться на вектор (0, 1) - Чертёжник оказывается в точке (7, 4)
Смещения по оси x вправо и по оси y вверх - положительные.
Смещения по оси x влево и по оси y вниз - отрицательные.