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

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

Текущая версия на 20:15, 17 ноября 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) пс)
//проверим цикл ДляКаждого
(ДляКаждого (Сим "лорлрлр") (Вывод Сим "-"))
(Вывод  ПС)  
(ДляКаждого (Д МасД) (Вывод Д "; "))
(Вывод  ПС)  


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