Пример: Как используется Функции и процедуры в 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С их обычно пишут в общих модулях.
Так их можно использовать в разных местах программы.
Домашка 💡
- Напиши функцию
МеньшееИзДвух(А, B), которая возвращает меньшее число.Сообщить(МеньшееИзДвух(7, 12)); // 7 - Сделай процедуру
Приветствие(Имя), которая выводит сообщение «Привет, [Имя]».Приветствие("Андрей"); // Привет, Андрей - Напиши функцию, которая принимает число и возвращает его квадрат.
Итоги
- Функция возвращает результат.
- Процедура выполняет действие, но ничего не возвращает.
- Всё это помогает писать аккуратный, переиспользуемый код.









