Не могу исправить ошибку (всегда выводит 0) - C#
Формулировка задачи:
По рисунку ниже, нужно определить попадает ли точка в закрашенную область.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace практ_задание__4_2
{
class Popadanie
{
public float Y;
public float Tochka()
{
bool b1;
Console.WriteLine("Введите радиус окружности: ");
float R = float.Parse(Console.ReadLine());
Console.WriteLine("Введите координаты точки");
Console.Write("По X: ");
float X = float.Parse(Console.ReadLine());
Console.Write("По Y: ");
float Y = float.Parse(Console.ReadLine());
b1 = (Y <= 0) && (Y >= 0) && (Math.Sqrt(X) < 0); // внутри и на границе окружности
if (b1) return 1;
else return 0;
}
public float Zavicim()
{
Console.WriteLine("Введите X: ");
float X = float.Parse(Console.ReadLine());
if ((X < -9) && (X > 9))
{
Console.WriteLine("Х не входит в диапозон возможных значений!");
Console.WriteLine("Введите X: ");
X = float.Parse(Console.ReadLine());
}
if ((X >= -9) && (X <= -3))
{
Y = (float)Math.Sqrt(9 - Math.Pow((X + 6), 2));
}
if ((X >= -6) && (X < -3))
{
Y = 3;
}
if ((X >= -4) && (X <= 0))
{
Y = ((2 / -4) * X) + 2;
}
if ((X >= 0) && (X <= Math.PI))
{
Y = (float)Math.Sin(X);
}
if (X >= Math.PI)
{
Y = (float)(X - Math.PI); return Y;
}
return Y;
}
}
class Program
{
static void Main(string[] args)
{
Popadanie s = new Popadanie();
Console.WriteLine("Если результат равен 1, то заданная точка попадает в закрашенную область, 0-не попадает!");
Console.WriteLine(s.Tochka());
Console.WriteLine("Описание математического объекта");
Console.WriteLine(s.Zavicim());
Console.ReadKey();
}
}
}Решение задачи: «Не могу исправить ошибку (всегда выводит 0)»
textual
Листинг программы
if (y >= 0 && x * x + y * y <= R * R || y < 0 && y >= -R && x <= 0 && y - x <= 0)