Выводит не то, что нужно - C#

Узнай цену своей работы

Формулировка задачи:

Задача:

Нарисуйте в отчете три простых фигуры: два квадрата со сторонами 1 и с центром в точках (1.5,0) и (-1.5,0) и дугу с центром в начале координат радиуса 1, соединяющую эти квадраты. Попадет ли точка с координатами Х, У в дедушкины очки. Написал код, но когда я ввожу данные для проверки вместо того, чтобы показывать 1 квадрат он выдает это:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Прога
{
    class Program
    {
        static double Tochka(double X, double Y)
        {
            double p;
            if (X >= (-2.5) && X <= (-0.5) && Y >= (-1) && Y <= 1)
            {
 
                Console.WriteLine("Точка попадает в 1 квадрат.");
                p = 1;
            }
            if (X <= (2.5) && X >= (0.5) && Y >= (-1) && Y <= 1)
            {
 
                Console.WriteLine("Точка попадает во 2 квадрат");
                p = 2;
            }
            if (X < (0.5) && X > (-0.5) && Y >= (0.866) && Y <= 1)
                {
 
                    Console.WriteLine("Попадает в дугу.");
                    p = 3;
                }
                else
                {
 
                    Console.WriteLine("Точка не попадает в (Дедушкины очки).");
                    p = 4;
                }
            return p;
        }
 
        static void Main(string[] args)
        {
            double X, Y, p;
            Console.WriteLine("Введите X и Y.");
            X = Convert.ToDouble(Console.ReadLine());
            Y = Convert.ToDouble(Console.ReadLine());
            p = Tochka(X, Y);
            Console.WriteLine("Ветка = " + p);
            Console.ReadLine();
        }
    }
}
Помогите пожалуйста, буду благодарен)

Решение задачи: «Выводит не то, что нужно»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
 
 
namespace Прога
{
    class Program
    {
        static double Tochka(double X, double Y)
        {
//            double p; нет необходимости
            if (X >= (-2.5) && X <= (-0.5) && Y >= (-1) && Y <= 1)
            {
 
                Console.WriteLine("Точка попадает в 1 квадрат.");
                return 1;
            }
            if (X <= (2.5) && X >= (0.5) && Y >= (-1) && Y <= 1)
            {
 
                Console.WriteLine("Точка попадает во 2 квадрат");
                return 2;
            }
            if (X < (0.5) && X > (-0.5) && Y >= (0.866) && Y <= 1)
                {
 
                    Console.WriteLine("Попадает в дугу.");
                    return 3;
                }
                else
                {
 
                    Console.WriteLine("Точка не попадает в (Дедушкины очки).");
                    return 4;
                }
//            return p;
        }
 
        static void Main(string[] args)
        {
            double X, Y, p;
            Console.WriteLine("Введите X и Y.");
            X = Convert.ToDouble(Console.ReadLine());
            Y = Convert.ToDouble(Console.ReadLine());
            p = Tochka(X, Y);
            Console.WriteLine("Ветка = " + p);
            Console.ReadLine();
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5
Похожие ответы