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


&НаКлиенте
Процедура Рассчитать(Команда)
    РассчитатьНаСервере();
КонецПроцедуры

&НаСервере
Процедура РассчитатьНаСервере()
    // Градусы → радианы
    АльфаРад = Альфа * 3.1415926535897932 / 180;
    
    Косинус = Cos(АльфаРад);
    Синус   = Sin(АльфаРад);
    
    // Проверка: cos α = 0 (α = 90° + 180°n)
    Если Косинус < 0 Тогда
        МодульКосинуса = -Косинус;
    Иначе
        МодульКосинуса = Косинус;
    КонецЕсли;
    
    Если МодульКосинуса < 0.000001 Тогда
        Сообщить("При α = " + Альфа + "° функция не определена (cos α = 0)");
        Результат = 0;
        Возврат;
    КонецЕсли;
    
    // Проверка: 1 + sin α = 0 (α = -90° + 360°n)
    Если 1 + Синус < 0 Тогда
        МодульСин = -(1 + Синус);
    Иначе
        МодульСин = 1 + Синус;
    КонецЕсли;
    
    Если МодульСин < 0.000001 Тогда
        Сообщить("При α = " + Альфа + "° функция не определена (1 + sin α = 0)");
        Результат = 0;
        Возврат;
    КонецЕсли;
    
    // Левая часть: (1 + sin α)/cos α + cos α/(1 + sin α)
    ЛеваяЧасть = (1 + Синус) / Косинус + Косинус / (1 + Синус);
    
    // Правая часть: 2 sec α = 2 / cos α
    ПраваяЧасть = 2 / Косинус;
    
    // Результат — левая часть (должна совпасть с правой)
    Результат = ЛеваяЧасть;
    
    // Для проверки можно вывести обе части
    Сообщить("Левая часть:  " + ЛеваяЧасть);
    Сообщить("Правая часть: " + ПраваяЧасть);
КонецПроцедуры