Пример: Как используется Функции и процедуры в 1С
Пример 01.
Функция Сумма(А, B)
Возврат А + B;
КонецФункции
Сообщить(Сумма(5, 7));
Пример 02.
Функция ПлощадьКруга(Радиус)
Возврат 3.14 * Радиус * Радиус;
КонецФункции
Сообщить(ПлощадьКруга(5));
Пример 03.
Функция Минимум(А, B)
Если А < B Тогда
Возврат А;
Иначе
Возврат B;
КонецЕсли;
КонецФункции
Сообщить(Минимум(9, 3));
Пример 04.
Функция ВДиапазоне(Число, Мин, Макс)
Возврат (Число >= Мин) И (Число <= Макс);
КонецФункции
Сообщить(ВДиапазоне(7, 1, 10)); Сообщить(ВДиапазоне(15, 1, 10));
Пример 05.
Процедура ПечатьЧисел(А, B)
Для Шаг = А По B Цикл
Сообщить(Шаг);
КонецЦикла;
КонецПроцедуры
ПечатьЧисел(1, 5);
Функция в 1С — это маленькая программа внутри программы.
Она нужна, чтобы не повторять один и тот же код много раз.
Представь: у тебя есть ящик с кнопкой.
- На кнопке написано имя функции (например, «КвадратЧисла»).
- В ящик ты можешь положить какие-то значения (параметры).
- Внутри ящика спрятаны команды, которые что-то делают.
- Когда ты нажимаешь кнопку (вызываешь функцию) — из ящика всегда выходит результат (Возврат).
То есть: функция всегда возвращает что-то назад — число, строку, дату и т.д.
Пример функции: квадрат числа
Функция КвадратЧисла(Число)
Возврат Число * Число;
КонецФункции
Сообщить(КвадратЧисла(7)); // 49
Функция без входов
Функции могут работать и без параметров.
Функция Привет()
Возврат "Привет!";
КонецФункции
Сообщить(Привет()); // Привет!
Процедуры — ящики без выхода
Процедура похожа на функцию, но не возвращает результат. Она просто делает действие.
Процедура ОписаниеЧисла(Число)
Если Число >= 0 Тогда
Сообщить("Положительное число");
Иначе
Сообщить("Отрицательное число");
КонецЕсли;
КонецПроцедуры
ОписаниеЧисла(-3); // Отрицательное число
Ключевые отличия
- Функция всегда что-то возвращает (например, число или строку).
- Процедура просто выполняет команды, но результат наружу не выдаёт.
Задачи:
- Математика:
Напиши функциюПлощадьКруга(Радиус)
, которая возвращает площадь круга.
👉 Подсказка: формулаπ * Радиус^2
. - Конструктор имён:
Напиши функцию, которая принимает две строки и возвращает объединение:
Сообщить(ФИО("Иван", "Петров")); // Иван Петров
- Счётчик:
Напиши процедуру, которая принимает два числа (начало и конец) и выводит все числа между ними.
ВывестиДиапазон(1, 5); // 1 2 3 4 5
Итоги
- Функция = ящик с входами и выходом.
- Процедура = ящик только с входами.
- Оба варианта помогают сокращать код, структурировать логику и писать программы без «копипаста».
Добавить комментарий