Функции и процедуры в 1С. Эпизод 1.


Пример: Как используется Функции и процедуры в 1С


Пример 01.

Функция КвадратЧисла(А)
    Возврат А * А;
КонецФункции

Сообщить(КвадратЧисла(5)); 

Пример 02.

Функция МеньшееИзДвух(А, B)
    Если А < B Тогда
        Возврат А;
    Иначе
        Возврат B;
    КонецЕсли;
КонецФункции

Сообщить(МеньшееИзДвух(7, 12)); 

Пример 03.

Процедура Приветствие(Имя)
    Сообщить("Привет, " + Имя + "!");
КонецПроцедуры

Приветствие("Андрей"); 

Пример 04.

Функция Четное(А)
    Возврат (А % 2 = 0);
КонецФункции

Сообщить(Четное(10)); // Истина
Сообщить(Четное(7));  // Ложь

Пример 05.

Процедура ВывестиЧисла(ДоСколько)
    Для Шаг = 1 По ДоСколько Цикл
        Сообщить(Шаг);
    КонецЦикла;
КонецПроцедуры

ВывестиЧисла(5); // 1 2 3 4 5

Зачем нужны функции и процедуры?

Представь, что у тебя есть формула, которую приходится использовать в программе много раз. Если каждый раз писать её заново, код будет длинным, неудобным и появится риск ошибок.

Решение простое: запихнуть формулу в отдельный блок с именем и вызывать его по необходимости.
Таким блоком и является функция.


Пример без функции

Пусть мы хотим вычислить произведение суммы и разности двух чисел:

А = 0;
ВвестиЧисло(А);

B = 0;
ВвестиЧисло(B);

Результат = (А + B) * (А - B);
ОткрытьЗначение(Результат);

Всё работает, но что если этот расчёт нужен в нескольких местах программы? Каждый раз придётся копировать одну и ту же строчку (А + B) * (А - B).


Решение: функция

Функция позволяет «спрятать» вычисление за коротким именем:

Функция ПроизведениеСуммыИРазности(А, B)
    Результат = (А + B) * (А - B);
    Возврат Результат;
КонецФункции

Теперь, когда нужно посчитать, достаточно написать:

X = ПроизведениеСуммыИРазности(5, 2);
Сообщить(X);

👉 Код становится чище и удобнее.


Как устроена функция в 1С

  1. Функция Имя(параметры) — начало.
  2. Внутри — команды, которые выполняются при вызове.
  3. Возврат — обязательная часть, возвращает результат.
  4. КонецФункции — завершение.

Процедуры

Процедура похожа на функцию, но не возвращает результат. Она просто выполняет действия.

Процедура Привет()
    Сообщить("Привет, программист!");
КонецПроцедуры

Вызов:

Привет();

Где хранить функции и процедуры?

Чтобы код был организован, в 1С их обычно пишут в общих модулях.
Так их можно использовать в разных местах программы.


Домашка 💡

  1. Напиши функцию МеньшееИзДвух(А, B), которая возвращает меньшее число. Сообщить(МеньшееИзДвух(7, 12)); // 7
  2. Сделай процедуру Приветствие(Имя), которая выводит сообщение «Привет, [Имя]». Приветствие("Андрей"); // Привет, Андрей
  3. Напиши функцию, которая принимает число и возвращает его квадрат.

Итоги

  • Функция возвращает результат.
  • Процедура выполняет действие, но ничего не возвращает.
  • Всё это помогает писать аккуратный, переиспользуемый код.

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *