Загрузка данных


using System;

namespace Lab2_Task2
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Введите значение аргумента x: ");
            double x = Convert.ToDouble(Console.ReadLine());

            Console.Write("Введите параметр R: ");
            double r = Convert.ToDouble(Console.ReadLine());

            double y = 0;

            // Определяем интервал, в который попадает x
            if (x <= -8)
            {
                y = -3;
            }
            else if (x > -8 && x <= -r)
            {
                // Прямая от (-8, -3) до (-r, 0)
                y = (3.0 / (8.0 - r)) * (x + 8.0) - 3.0;
            }
            else if (x > -r && x <= r)
            {
                // Нижняя полуокружность с радиусом R
                y = -Math.Sqrt(r * r - x * x);
            }
            else if (x > r && x <= 5)
            {
                // Прямая от (r, 0) до (5, 2)
                y = (2.0 / (5.0 - r)) * (x - r);
            }
            else // x > 5
            {
                y = 3;
            }

            Console.WriteLine($"Результат: f({x}) = {y:F4}");
            Console.ReadKey();
        }
    }
}