Найти в Дзене

Основные правила ПРОФТ-5

ПРОФТ-программа это простой текст в однобайтовой кодировке (ANSI). Текст состоит из предложений. Каждое предложение заканчивается точкой. Файлы ПРОФТ-программ имеют расширение про или v Программа выполняется строчка за строчкой, с переходами по условию или по параметрам цикла. Программа разбивается на подпрограммы, которые начинаются со слова Действие и названия подпрограммы. Подпрограмма заканчивается ключевым словом КонецДействия. Программа начинается с Начала и завершается Концом. Начало – это Действие Начало, с которого начинает выполнятся программа. Конец – это специальная инструкция, которая может быть в любом месте программы. Работа с данными идёт с помощью переменных. Переменная это слово, которое начинается с буквы и не является служебным словом языка программирования. Например, А Б КоличествоРаз Переменной можно задать какое-то значение, которое оно будет в себе хранить. Это называется присваивание и делается с помощью знака =. Например, А = 1. После того, как переменной прис
Оглавление
Абстракция №689. Исходник в конце статьи
Абстракция №689. Исходник в конце статьи

Текст программы

ПРОФТ-программа это простой текст в однобайтовой кодировке (ANSI).

Текст состоит из предложений. Каждое предложение заканчивается точкой.

Файлы ПРОФТ-программ имеют расширение про или v

Начало и Конец

Программа выполняется строчка за строчкой, с переходами по условию или по параметрам цикла.

Программа разбивается на подпрограммы, которые начинаются со слова Действие и названия подпрограммы. Подпрограмма заканчивается ключевым словом КонецДействия.

Программа начинается с Начала и завершается Концом.

Начало – это Действие Начало, с которого начинает выполнятся программа.

Конец – это специальная инструкция, которая может быть в любом месте программы.

Переменные

Работа с данными идёт с помощью переменных. Переменная это слово, которое начинается с буквы и не является служебным словом языка программирования. Например,

А
Б
КоличествоРаз

Переменной можно задать какое-то значение, которое оно будет в себе хранить. Это называется присваивание и делается с помощью знака =. Например,

А = 1.

После того, как переменной присвоено некоторое значение, с ней можно работать, как с самим числом. На самом деле, переменная это просто ячейки оперативной памяти. Точнее их адрес.

Когда мы присвоили переменной А единицу, то где-то в ОЗУ компьютера было выделено место, где эта единица хранится.

Теперь, с помощью стандартных действий языка мы можем оперировать данными, которые стоят за переменными.

А = 1.
Б = 1.
В = А + Б.

Как нетрудно догадаться, переменная В получит значение 2.

Но значение переменной можно менять прямо на месте.

А = А + 1.

А было равно единице, а стало равно двум.

Стандартные действия

Стандартные действия это операторы (+,-,/,* и т.д.), математические функции, функции работы со строками и датами, файлами. Это ядро языка. Вот их список.

Корень Остаток Целое Знак Абс Логарифм Логарифм10 Экспонента ДСЧ Синус Косинус Тангенс Арктангенс Длина Символ КодСимвола ВРегистр НРегистр Подстрока СтрСправа СтрСлева БезПробелов БезПробеловСлева БезПробеловСправа Найти ДобавитьСутки ДобавитьМесяц ДобавитьГод РазницаВСутках РазницаВМесяцах РазницаВГодах ЭтоДата ДеньНедели Год МесяцГода Сегодня Таймер НачМесяца КонМесяца НачКвартала КонКвартала НачГода КонГода ПериодСтр Ввести Сообщить Сигнал Запустить Выбор
КЗС Строка Число Дата Булево ИзменитьПапку ИзменитьДиск ТекущийПуть Копировать ДлинаФайла Удалить УдалитьПапку СоздатьПапку ОткрытьФайл ЗакрытьФайл Записать Прочитать УказательФайла УстановитьУказатель ДатьПризнак ВзятьПризнак Папки СледПапка ДатаФайла МойКаталог МойДиск

Как видно, за небольшим исключением, это просто прямое указание что необходимо сделать программе, причем глагол пишется без сокращений: Сообщить, ОткрытьФайл и т.п.

Стандартные действия могут иметь параметры, тогда они записываются в скобках

Б = Корень(А).

Если параметров несколько, они записываются через точку с запятой

КтоЭто = СтрСправа(«Распутин»; 5).

Посмотрим, как работают эти стандартные действия.

Скопируйте этот код в старт.про из предыдущей статьи.

Действие Начало().
Окно1 Это Модуль ("Окно").
Окно1:Заголовок("Круги, круги, круги...").
Окно1:Ширина(800).
Окно1:Высота(600).
Окно1:ЦветФона(КЗС(255;255;255)).
Окно1:Показать.
КонецДействия.
//======================================
Действие Окно1_ДвижениеМыши(Кн;Рег;Х;У).
Если Кн = 1.
Окно1:Очистить.
нКруг = 1.
Пока нКруг <= 200.
СлучайноеЧисло1 = ДСЧ(Х).
СлучайноеЧисло2 = ДСЧ(У).
СлучайныйДиаметр = СлучайноеЧисло1 * 300.
СлучайныйЦвет = КЗС(СлучайноеЧисло1 * 255;СлучайноеЧисло2 * 255; ДСЧ(СлучайноеЧисло1) * 255).
КоординатаХ = ДСЧ(СлучайноеЧисло1) * 800-100.
КоординатаУ = ДСЧ(СлучайноеЧисло2) * 1000-100.
Окно1:Круг(КоординатаХ;КоординатаУ;КоординатаХ + СлучайныйДиаметр;КоординатаУ + СлучайныйДиаметр; СлучайныйЦвет).
нКруг = нКруг + 1.
КонецПока.
Окно1:Обновить.
КонецЕсли.
КонецДействия.
//==================================================
Действие Окно1_ПриЗакрытии().
Конец.
КонецДействия.

В этом примере стандартное действие ДСЧ(число) генерирует случайные числа, и с их помощью мы рисуем круги случайного цвета и диаметра в случайном месте.

В этом примере видно, что программа начинается с начала, а Конец приходит, когда закрывается окно. Но если эту инструкцию туда не добавить, то програма будет висеть в памяти и ждать выспитка.

Еще одна картина из миллиардов возможных
Еще одна картина из миллиардов возможных

Картину можно сменить, просто щелкнув мышью. Но не спешите листать картины. Если вам понравится какая-то композиция, а вы щелкните мышью, то больше вы её не увидите никогда. Вообще никогда. В примере используется условие и цикл, но об этом в следующий раз.