- 1С — математические операторы и функции
- Арифметические операторы 1С 8.2 — 8.3
- Математические функции 1С 8.2 — 8.3
- Тригонометрические функции 1С 8.2 — 8.3
- Программирование 1с степень числа
- Дополнение
- Числа в 1С
- Тип число в 1С
- Случайное число в 1С
- Округлить число в 1С
- Целое число в 1С
- Степень числа в 1С
- Функции чисел в 1С
1С — математические операторы и функции
Во встроенном языке 1С доступно выполнение простых арифметических операций (сложить, вычесть, умножить, разделить), а также тригонометрических и других математических операций. Для этого предназначено множество операторов и функций.
Арифметические операторы 1С 8.2 — 8.3
//Сложение
Сумма = 10 + 5;
//Сумма = 15;
//Вычитание
Разность = 10 - 5;
//Разность = 5;
//Умножение
Произведение = 10 * 5;
//Произведение = 50;
//Деление
Частное = 10 / 5;
//Частное = 2;
//Остаток от деления
Остаток = 10 % 4;
//Остаток = 2;
Математические функции 1С 8.2 — 8.3
//Округление числа
РезультатОкругления = Окр(10.333, 2);
//РезультатОкругления = 10.33;
РезультатОкругления = Окр(1.5, 0, РежимОкругления.Окр15как10);
//РезультатОкругления = 1;
РезультатОкругления = Окр(1.5, 0, РежимОкругления.Окр15как20);
//РезультатОкругления = 2;
//Получить целую часть числа
ЦелаяЧасть = Цел(123.123);
//ЦелаяЧасть = 123;
//Возвести число X в степень Y
Число = Pow(2, 3);
//Число = 8;
//Вычислить квадратный корень числа
Число = Sqrt(4);
//Число = 2;
//Найти максимальное значение
МаксЧисло = Макс(1, 5, 10);
//МаксЧисло = 10;
//Найти минимальное значение
МинЧисло = Мин(1, 5, 10);
//МинЧисло = 1;
Тригонометрические функции 1С 8.2 — 8.3
//Косинус угла
Косинус = Cos(45);
//Косинус = 0.5253219888177297;
//Синус угла
Синус = Sin(45);
//Синус = 0.8509035245341184;
//Тангенс угла
Тагенс = Tan(45);
//Тагенс = 1.619775190543862;
//Арктангенс числа
АркТагенс = ATan(1);
//АркТагенс = 0.7853981633974483;
//Арксинус числа
Арксинус = ASin(1);
//Арксинус = 1.570796326794897;
//Арккосинус числа
Арккосинус = ACos(1);
//Арккосинус = 0;
//Натуральный логарифм числа
Логарифм = Log(3);
//Логарифм = 1.09861228866811;
//Десятичный логарифм числа
Логарифм = Log10(3);
//Логарифм = 0.4771212547196624;
Для того чтобы добавить сообщение, необходимо Войти или Зарегистрироваться
О сайте | Обратная связь | Правила | Новости 1С | Copyright © 2023 Цитирование материалов (тексты, изображения, программный код) допускается только с размещением активной ссылки на сайт 1CLenta.ru |
Программирование 1с степень числа
Напишите программу, которая генерирует три случайные числа в диапазоне от 1 до 1000. Генератор случайных чисел инициализируете числом 2014 (об этом ниже). Затем каждое число возводится в 5 степень. Затем из каждого числа извлекается квадратный корень. Затем каждое число делится на 3. Затем каждое число округляется до второго знака (режим округления Окр15как10). Затем каждое число умножается на 0.25. Затем от каждого числа отбрасывается дробная часть. И, наконец, находится сумма всех получившихся чисел, которая и выводится пользователю. Получившееся значение будет равно 849442 (обратите внимание, что если вы вместо учебной версии платформы из урока используется свою версию платформы 8.3.22 и выше, то там ответ будет другой, 1602528, из-за того что начиная с этой версии изменили алгоритм для формирования случайных чисел).
Чтобы инициализировать генератор определённым числом (например, 2014) напишем:
ГСЧ = Новый ГенераторСлучайныхЧисел(2014);
Инициализация определённым числом позволит вам получить на своём компьютере ту же самую последовательность случайных чисел, что получил я. Это нужно, чтобы вы в конце выполнения программы получили тот же самый ответ, что и я — 849442 (или 1602528 для версии платформы 1с 8.3.22 и выше).
Эталонное решение. Сначала пишем код сами, проверяем на компьютере (как и все примеры программ из уроков), только потом сверяемся
Войдите на сайт как ученик
Авторизуйтесь, чтобы получить доступ ко всем материалам школы
Дополнение
Данный материал рассчитан на начинающих разработчиков. Если он показался вам слишком лёгким — рассмотрите другие примеры использования математики в 1С (ссылка).
Уровень сложности уроков идёт снизу вверх. Поэтому старайтесь заниматься последовательно, ничего не пропуская и не откладывая на потом.
Обязательно выполняйте все тесты и домашние задания, старайтесь улучшить свои результаты. Сверяйтесь с эталонными решениями только после самостоятельного выполнения задач.
На вопросы учеников — отвечаю по почте, но прежде загляните в ЧАВО (ссылка) .
Числа в 1С
Рассмотрим один из примитивных типов, с которым приходится сталкиваться разработчикам на платформе 1С 8.3, – Число. В этой статье мы научимся задавать числа в коде, создавать реквизиты с типом число , получать случайное число, округлять числа и получать из числа с дробью целое число.
Тип число в 1С
Задать число в коде просто: нужно какой-то переменной просто присвоить определенное число.
А так задаются дробные числа:
Над числами в коде можно выполнять простые арифметические операции: сложение, вычитание, умножение и деление.
Причем, как непосредственно над числами:
Число1 = 10 + 20; Число2 = 15 - 19; Число3 = 3 * 5.7; Число4 = 1.5/23.1;
Так и над переменными с типом число:
Число1 = 10.34; Число2 = 15; п_Сложение = Число1 + Число2; п_Вычитание = Число1 - Число2; п_Умножение = Число1 * Число2; п_Деление = Число1 / Число2;
Если нужно инвертировать число, т.е. поставить какому-то уже заданному числу обратный знак (например, было 5, стало -5), то его нужно умножить на -1.
Сделать это можно несколькими способами:
Число1 = - 10.34; Число2 = Число1*-1; Число2 = Число1*(-1); Число2 = -1*Число1; Число2 = (-1)*Число1; Число2 = -Число1;
Если нам нужно создать реквизит какого-то объекта, с типом число, то в свойстве Тип реквизита нужно выбрать тип Число. На картинке ниже у справочника создан реквизит с типом Число.
А также задать его точность и длину.
Остановимся на точности и длине подробнее.
Точность – это максимальное количество знаков после запятой.
Длина – это максимальное количество разрядов в числе (включая знаки после запятой).
Например, если длина 5, а точность 3, то максимальное число будет 99,999.
Если длина 5, а точность 0, то – 99999.
А если длинна 3, а точность 3, то – 0,999. Т.е когда длинна равна точности мы не сможем задать число равное 1.
Когда мы в коде задаем переменную с типом Число, то мы не ограничиваем эту переменную по длине и точности, в тоже время для реквизита объекта с типом Число нужно это делать заранее. При разработке вы должны заранее предусмотреть, какие у реквизита числового типа будет длинна и точность.
Точно также, реквизит с типом число нужной длинны и точности можно создать на управляемой форме.
Случайное число в 1С
В платформе 1С 8.3 имеется возможность сгенерировать случайное целое число при помощи генератора случайных чисел, который так и называется ГенераторСлучайныхЧисел. Для генерации случайного числа нужно воспользоваться методом этого объекта СлучайноеЧисло.
Рассмотрим, простой пример генерации случайного числа.
Генератор = Новый ГенераторСлучайныхЧисел; Число1 = Генератор.СлучайноеЧисло();
В этом случае Число1 будет сгенерировано от 0 до 4294967295 (2^32 -1).
В примере выше метод СлучайноеЧисло без параметров, но у этого метода есть два параметра:
Оба параметра являются необязательных и с их помощью можно задать верхнюю и нижнюю границу генерации случайных чисел. Причем параметр НижняяГраница не может быть меньше нуля, а параметр ВерхняяГраница не может быть больше 4294967295.
Например, в этом случае будет сгенерировано случайное число от 1 до 100.
Генератор = Новый ГенераторСлучайныхЧисел; Число1 = Генератор.СлучайноеЧисло(1,100);
Округлить число в 1С
В платформе 1С имеется возможность округления чисел по определенному правилу. Для этих целей существует метод Окр. Этот метод является функцией, которая принимает число, нужное для округления, и возвращает округленное число. Данный метод имеет следующий синтаксис:
Число – число, которое будет округляться;
Разрядность – до какого количества знаков после запятой нужно округлить число (если разрядность равна 0, то число будет округлено до целого числа).
РежимОкругления – системное перечисление, которое имеет два значения: РежимОкругления.Окр15как10 – в этом случае 1.5 округляется до 1, РежимОкругления.Окр15как20 – 1.5 округляется до 2. Если этот параметр не задан, то по умолчанию 1.5 округляется до 2
ЧислоОкрБ = Окр(3/2,0,РежимОкругления.Окр15как20); ЧислоОкрМ = Окр(3/2,0,РежимОкругления.Окр15как10); Сообщить("ЧислоОкрБ color: red;">+ ЧислоОкрБ); Сообщить("ЧислоОкрМ color: red;">+ ЧислоОкрМ);
В этом случае будет следующий результат:
Целое число в 1С
Если предыдущий метод округляет число, то также имеется возможность получать целое число, т.е. просто отбросить дробную часть числа. Делает это метод Цел. Данный метод является функцией, принимающей единственный параметр – число, у которого нужно отбросить дробную часть, и возвращающей полученное целое число.
Рассмотрим работу этого метод в сравнении с методом округления числа.
Число1 = 10; Число2 = 6; Число3 = Число1 / Число2; ЧислоОкр2 = Окр(Число3,2); ЧислоОкр0 = Окр(Число3,0); ЧислоЦел = Цел(Число3); Сообщить("Окр (" + Число1 + "/" + Число2 + ",2) color: red;">+ ЧислоОкр2); Сообщить("Окр (" + Число1 + "/" + Число2 + ",0) color: red;">+ ЧислоОкр0); Сообщить("Цел (" + Число1 + "/" + Число2 + ") color: red;">+ ЧислоЦел);
Должен получиться следующий результат:
Из результата вы видите, что нельзя использовать метод Окр для получения целого числа, он именно округляет и не всегда может дать требуемый результат. Для получения целого числа используйте метод Цел.
Степень числа в 1С
В платформе 1С имеется возможность возвести нужное число в степень. Делается это при помощи метода Pow, который является функцией со следующим синтаксисом.
Число1 = 10; Число2 = Pow(Число1,3); Число3 = Pow(Число1,-3); Число4 = Pow(Число1,2.5); Число5 = Pow(Число1,-3.5); Сообщить("10^3 color: red;">+ Число2); Сообщить("10^-3 color: red;">+ Число3); Сообщить("10^2.5 color: red;">+ Число4); Сообщить("10^-3.5 color: red;">+ Число5);
Из примеров видно, что мы можем возводить в положительную и отрицательную степень, а также степень может быть дробной.
Функции чисел в 1С
В платформе 1С 8.3 имеется другие функции пот работе с числами , познакомится с ними можно в синтаксис-помощнике. В подразделе Функции работы со значениями типа Число.
Другие статьи о примитивных типах:
Более подробно и основательно начальные вопросы программирования в 1С есть вы можете изучить в
Книга «Программировать в 1С за 11 шагов»
Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»
Книга написана понятным и простым языком — для новичка.
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника.
О том как разрабатывать под управляемым приложением 1С, читайте в книге Книга «Основы разработки в 1С: Такси»
Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.
- Очень доступный и понятный язык изложения
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Поймете идеологию управляемого приложения 1С
- Узнаете, как разрабатывать управляемое приложение;
- Научитесь разрабатывать управляемые формы 1С;
- Сможете работать с основными и нужными элементами управляемых форм
- Программирование под управляемым приложением станет понятным
Промо-код на скидку в 15% — 48PVXHeYu
Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму.
Яндекс.Деньги — 410012882996301
Web Money — R955262494655