Перфо. Пример 2 — различия между версиями

Материал из ТХАБ.РФ
Перейти к: навигация, поиск
(Новая страница: «== Перфо. Примеры == * Перфо. Пример 1 * Перфо. Пример 2 * Перфо. Пример 3 * [[Перфо - Списки]…»)
 
м
Строка 1: Строка 1:
 +
 +
// *** Тестовый скрипт на языке Перфо ***
 +
 +
//(Отладка Ложь) //выключим режим отладки скрипта, когда он будет полностью отлажен
 +
 +
(Очистить) //очищаем экран консоли
 +
(Вывод "Пример 2." ПС "Программа на языке Перфо." ПС ПС)
 +
 +
(Вывод "ОС.Версия = " (ОС.Версия) пс)
 +
 +
//работа с объектами
 +
 +
 +
//создадим новый объект
 +
(Перем МояСтруктура (Новый Структура "Имя,Отчество,Фамилия" "Василий" "Алибабаевич" "Пупкин"))
 +
//проверим
 +
(Вывод "Имя = " (МояСтруктура.Получить "Имя") пс)
 +
(Вывод "Фамилия = " (МояСтруктура.Получить "Фамилия") пс)
 +
(МояСтруктура.Вставить "Фамилия" "Васечкин")
 +
(Вывод "Фамилия = " (МояСтруктура.Получить "Фамилия") пс)
 +
(Вывод "Количество = " (МояСтруктура.Количество) пс)
 +
 +
//проверка получения и установки свойства
 +
(Уст Консоль.ЦветТекста (ЦветаКонсоли.Зеленый))
 +
 +
//проверка вызова общего для класса метода с двумя параметрами
 +
(Звук.Сигнал 1000 300)
 +
 +
//проверка вызова метода с вторым необязательным параметром
 +
(Звук.Сигнал (Звук.Сигналы.Перезвон) Истина)
 +
(Звук.Сигнал (Звук.Сигналы.Звонок)) //не указали второй параметр
 +
 +
//создадим массив с обобщенным параметром
 +
(Перем МасД (Новый Массив<ДВещ> 4.5д 6.7д 8д -9д))
 +
 +
//проверка вызова метода с массивом параметров переданных массивом
 +
(Вывод "Среднее арифметическое = " (Математика.СреднееАрифметическое (МасД.ВМассив)) пс)
 +
//проверка вызова метода с массивом параметров переданных непосредственно методу
 +
(Вывод "Среднее арифметическое = " (Математика.СреднееАрифметическое 4.5 6.7 8 -9) пс)
 +
 +
//прочитаем текст из файла
 +
(Перем Ф (+ (ФС.ТекущийКаталог) "Пример2.perfo"))
 +
(Вывод "Имя файла: " Ф пс)
 +
(Перем Чт (Новый ЧтениеТекста Ф))
 +
(Перем Т (Чт.ПрочитатьДоКонца))
 +
(Вывод "Содержимое файла: " (СтрЗаменить (СтрЗаменить (Сред Т 100 100) " " "-") (Символы.ВКПС) "-") пс)
 +
 +
//проверим вызов методов расширения
 +
(Перем МояСтрока "")
 +
(Вывод "МояСтрока.Пустая = " (МояСтрока.Пустая) " (""" МояСтрока """)" пс)
 +
(Перем МояСтрока "куку")
 +
(Вывод "МояСтрока.Пустая = " (МояСтрока.Пустая) " (""" МояСтрока """)" пс)
 +
(Вывод "МояСтрока.ПустаяСтрока = " (МояСтрока.ПустаяСтрока) " (""" МояСтрока """)" пс)
 +
(Перем МояСтрока "  ")
 +
(Вывод "МояСтрока.ПустаяСтрока = " (МояСтрока.ПустаяСтрока) " (""" МояСтрока """)" пс)
 +
 +
//вызовы методов объектов
 +
(Вывод (System.Byte.MaxValue) пс)
 +
(Вывод (@Целое.MaxValue) пс)
 +
(Вывод (. @Целое MinValue) пс) //оператор . позволяет вызывать методы общие для класса (статические)
 +
(Вывод (. ОС Версия) пс)
 +
(Вывод (. "ОС" Количество) пс)
 +
(Вывод (. (Массив 5 Целое) Количество) пс)
 +
(Перем мас100 (Массив 99 Строка))
 +
(. мас100 Установить "Строка с индексом 99" 99)
 +
(Вывод (. мас100 Получить 99) пс)
 +
(мас100.Установить "Строка с индексом 0" 0)
 +
(Вывод (мас100.Получить 0) пс)
 +
 +
//проверим цикл ДляКаждого
 +
(ДляКаждого (Сим "лорлрлр") (Вывод Сим "-"))
 +
(Вывод  ПС) 
 +
(ДляКаждого (Д МасД) (Вывод Д "; "))
 +
(Вывод  ПС) 
 +
 +
 
== Перфо. Примеры ==
 
== Перфо. Примеры ==
 
* [[Перфо. Пример 1]]
 
* [[Перфо. Пример 1]]

Версия 18:41, 27 октября 2020

// *** Тестовый скрипт на языке Перфо ***

//(Отладка Ложь) //выключим режим отладки скрипта, когда он будет полностью отлажен

(Очистить) //очищаем экран консоли (Вывод "Пример 2." ПС "Программа на языке Перфо." ПС ПС)

(Вывод "ОС.Версия = " (ОС.Версия) пс)

//работа с объектами


//создадим новый объект (Перем МояСтруктура (Новый Структура "Имя,Отчество,Фамилия" "Василий" "Алибабаевич" "Пупкин")) //проверим (Вывод "Имя = " (МояСтруктура.Получить "Имя") пс) (Вывод "Фамилия = " (МояСтруктура.Получить "Фамилия") пс) (МояСтруктура.Вставить "Фамилия" "Васечкин") (Вывод "Фамилия = " (МояСтруктура.Получить "Фамилия") пс) (Вывод "Количество = " (МояСтруктура.Количество) пс)

//проверка получения и установки свойства (Уст Консоль.ЦветТекста (ЦветаКонсоли.Зеленый))

//проверка вызова общего для класса метода с двумя параметрами (Звук.Сигнал 1000 300)

//проверка вызова метода с вторым необязательным параметром (Звук.Сигнал (Звук.Сигналы.Перезвон) Истина) (Звук.Сигнал (Звук.Сигналы.Звонок)) //не указали второй параметр

//создадим массив с обобщенным параметром (Перем МасД (Новый Массив<ДВещ> 4.5д 6.7д 8д -9д))

//проверка вызова метода с массивом параметров переданных массивом (Вывод "Среднее арифметическое = " (Математика.СреднееАрифметическое (МасД.ВМассив)) пс) //проверка вызова метода с массивом параметров переданных непосредственно методу (Вывод "Среднее арифметическое = " (Математика.СреднееАрифметическое 4.5 6.7 8 -9) пс)

//прочитаем текст из файла (Перем Ф (+ (ФС.ТекущийКаталог) "Пример2.perfo")) (Вывод "Имя файла: " Ф пс) (Перем Чт (Новый ЧтениеТекста Ф)) (Перем Т (Чт.ПрочитатьДоКонца)) (Вывод "Содержимое файла: " (СтрЗаменить (СтрЗаменить (Сред Т 100 100) " " "-") (Символы.ВКПС) "-") пс)

//проверим вызов методов расширения (Перем МояСтрока "") (Вывод "МояСтрока.Пустая = " (МояСтрока.Пустая) " (""" МояСтрока """)" пс) (Перем МояСтрока "куку") (Вывод "МояСтрока.Пустая = " (МояСтрока.Пустая) " (""" МояСтрока """)" пс) (Вывод "МояСтрока.ПустаяСтрока = " (МояСтрока.ПустаяСтрока) " (""" МояСтрока """)" пс) (Перем МояСтрока " ") (Вывод "МояСтрока.ПустаяСтрока = " (МояСтрока.ПустаяСтрока) " (""" МояСтрока """)" пс)

//вызовы методов объектов (Вывод (System.Byte.MaxValue) пс) (Вывод (@Целое.MaxValue) пс) (Вывод (. @Целое MinValue) пс) //оператор . позволяет вызывать методы общие для класса (статические) (Вывод (. ОС Версия) пс) (Вывод (. "ОС" Количество) пс) (Вывод (. (Массив 5 Целое) Количество) пс) (Перем мас100 (Массив 99 Строка)) (. мас100 Установить "Строка с индексом 99" 99) (Вывод (. мас100 Получить 99) пс) (мас100.Установить "Строка с индексом 0" 0) (Вывод (мас100.Получить 0) пс)

//проверим цикл ДляКаждого (ДляКаждого (Сим "лорлрлр") (Вывод Сим "-")) (Вывод ПС) (ДляКаждого (Д МасД) (Вывод Д "; ")) (Вывод ПС)


Перфо. Примеры