Мак Миллан
Ученик
(97),
на голосовании
3 дня назад
Разработайте приложение, которое позволяет проверить, принадлежит ли точка с заданными координатами и некоторой ограниченной области на плоскости. Область задана графическим способом. Координаты точки и дополнительные данные, определяющие геометрию области и необходимые для решения задачи, вводятся пользователем. Схема, на которой заданная область выделена штриховкой. Помогите понять правильно ли задал области, если нет то какие правильные Вот мой код: using System;
class Lab01_03 { static void Main() {
// Ввод данных Console.WriteLine("Введите радиус R:"); double R = double.Parse(Console.ReadLine());
Console.WriteLine("Введите координаты точки:"); Console.Write("X: "); double x = double.Parse(Console.ReadLine());
Console.Write("Y: "); double y = double.Parse(Console.ReadLine());
// Проверка принадлежности к полукругу в четвертой четверти (нижняя правая часть) bool isInLowerSemiCircle = (x >= 0 && y <= 0) && (Math.Pow(x, 2) + Math.Pow(y, 2) <= Math.Pow(R, 2));
// Проверка принадлежности к четверти круга во второй четверти (верхняя левая часть) bool isInUpperLeftQuarterCircle = (x <= 0 && y >= 0) && (Math.Pow(x - R, 2) + Math.Pow(y - R, 2) <= Math.Pow(R, 2));
// Результат if (isInLowerSemiCircle) { Console.WriteLine("Точка принадлежит области в четвертой четверти (нижняя правая часть)."); } else if (isInUpperLeftQuarterCircle) { Console.WriteLine("Точка принадлежит области во второй четверти (верхняя левая часть)."); } else { Console.WriteLine("Точка не принадлежит области."); }
Область задана графическим способом. Координаты точки и дополнительные данные, определяющие геометрию области и необходимые для решения задачи, вводятся пользователем.
Схема, на которой заданная область выделена штриховкой.
Помогите понять правильно ли задал области, если нет то какие правильные
Вот мой код:
using System;
class Lab01_03
{
static void Main()
{
// Ввод данных
Console.WriteLine("Введите радиус R:");
double R = double.Parse(Console.ReadLine());
Console.WriteLine("Введите координаты точки:");
Console.Write("X: ");
double x = double.Parse(Console.ReadLine());
Console.Write("Y: ");
double y = double.Parse(Console.ReadLine());
// Проверка принадлежности к полукругу в четвертой четверти (нижняя правая часть)
bool isInLowerSemiCircle = (x >= 0 && y <= 0) && (Math.Pow(x, 2) + Math.Pow(y, 2) <= Math.Pow(R, 2));
// Проверка принадлежности к четверти круга во второй четверти (верхняя левая часть)
bool isInUpperLeftQuarterCircle = (x <= 0 && y >= 0) && (Math.Pow(x - R, 2) + Math.Pow(y - R, 2) <= Math.Pow(R, 2));
// Результат
if (isInLowerSemiCircle)
{
Console.WriteLine("Точка принадлежит области в четвертой четверти (нижняя правая часть).");
}
else if (isInUpperLeftQuarterCircle)
{
Console.WriteLine("Точка принадлежит области во второй четверти (верхняя левая часть).");
}
else
{
Console.WriteLine("Точка не принадлежит области.");
}
Console.ReadLine();
}
}