Посчитать диагональ и поворот учебного отрезка

Учебные задачи

Считаем длину вектора 3×4 и координаты отрезка длиной 5 после поворота на 90 градусов.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Все значения учебные и создаются в памяти; документы, регистры и рабочие данные не изменяются.

  2. Выполняйте на сервере учебной базы. Представление десятичного разделителя в сообщениях зависит от локали.

  3. У ширины, высоты и координат одна и та же единица длины. Sin и Cos получают радианы, не градусы.


Ширина = 3;
Высота = 4;
Диагональ = Sqrt(Pow(Ширина, 2) + Pow(Высота, 2));
Сообщить(Диагональ);
Пи = 3.141592653589793;
УголВГрадусах = 90;
УголВРадианах = УголВГрадусах * Пи / 180;
X = 5 * Cos(УголВРадианах);
Y = 5 * Sin(УголВРадианах);
Сообщить(Формат(X, "ЧДЦ=6; ЧН=0"));
Сообщить(Формат(Y, "ЧДЦ=6; ЧН=0"));
Если X < -0.000001 Или X > 0.000001 Или Y < 4.999999 Или Y > 5.000001 Тогда
    ВызватьИсключение "Результат поворота вне учебного допуска";
КонецЕсли;

Разбор по шагам

  1. Pow возводит размеры в квадрат, Sqrt получает корень из суммы — диагональ по теореме Пифагора.

  2. Переводим угол из градусов в радианы до вызова тригонометрических функций.

  3. Формат задаёт вид сообщения, а не вычислительную точность самих координат.

  4. Вместо точного сравнения X=0 применяем малый допуск, учитывающий численное вычисление синуса и косинуса.

Как проверить результат

  1. Диагональ равна 5; X близок к 0, Y близок к 5.

  2. Замените угол на 0 и соответствующую проверку: координаты должны быть около X=5, Y=0.

  3. Передайте 90 напрямую в Sin без перевода — результат не будет синусом 90 градусов.

Ожидаемый результат

Известная геометрическая задача решена с корректной единицей угла и контрольным допуском.

На что обратить внимание

  1. Sqrt требует неотрицательного аргумента; в данном примере сумма квадратов это обеспечивает.

  2. Численные тригонометрические результаты сравнивайте с допуском, а не как идеально точные десятичные значения.

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

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.