82 lines
3.5 KiB
Plaintext
82 lines
3.5 KiB
Plaintext
// 1С Хибер-Оболочка
|
||
// Copyright (C) 2026 kiskosTwoKSix
|
||
|
||
// This program is free software: you can redistribute it and/or modify
|
||
// it under the terms of the GNU General Public License as published by
|
||
// the Free Software Foundation, either version 3 of the License, or
|
||
// (at your option) any later version.
|
||
|
||
// This program is distributed in the hope that it will be useful,
|
||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
// GNU General Public License for more details.
|
||
|
||
// You should have received a copy of the GNU General Public License
|
||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||
|
||
Процедура УгадайЧисло()
|
||
Сообщить("Угадай число от нуля до четырёх");
|
||
Сообщить("Выйти: выйти");
|
||
Пока Истина Цикл
|
||
ГСЧ = Новый ГенераторСлучайныхЧисел();
|
||
ЧислоЗагад = ГСЧ.СлучайноеЧисло(0, 4);
|
||
Ввод = "";
|
||
|
||
Угад = ВвестиСтроку(Ввод, "> ");
|
||
Если Угад = Истина Тогда
|
||
Попытка
|
||
Если ЧислоЗагад = Число(Ввод) Тогда
|
||
Сообщить("Правильно!");
|
||
Иначе
|
||
Сообщить("Неправильно, число было " + ЧислоЗагад);
|
||
КонецЕсли;
|
||
Исключение
|
||
Если НРег(Ввод) = "выйти" Тогда
|
||
Сообщить("!! Выход из УгадайЧисло");
|
||
Прервать
|
||
КонецЕсли;
|
||
КонецПопытки;
|
||
Иначе
|
||
Сообщить("Ошибка ввода");
|
||
Прервать
|
||
КонецЕсли;
|
||
КонецЦикла;
|
||
КонецПроцедуры
|
||
|
||
Версия = "0.1";
|
||
|
||
Пока Истина Цикл
|
||
Команда = "";
|
||
Ввод = ВвестиСтроку(Команда, "> ");
|
||
Если Ввод = Истина Тогда
|
||
Команда = НРег(Команда);
|
||
Если Команда = "выйти" Тогда
|
||
Сообщить("!! Выход из 1С Хибер-Оболочка");
|
||
Прервать
|
||
ИначеЕсли Команда = "версия" Тогда
|
||
Сообщить(Версия);
|
||
ИначеЕсли Команда = "монетка" Тогда
|
||
ГСЧ = Новый ГенераторСлучайныхЧисел();
|
||
Монетка = ГСЧ.СлучайноеЧисло(0, 1);
|
||
Если Монетка = 0 Тогда
|
||
Сообщить("Орёл");
|
||
Иначе
|
||
Сообщить("Решка");
|
||
КонецЕсли;
|
||
ИначеЕсли Команда = "угадатьчисло" Тогда
|
||
УгадайЧисло();
|
||
ИначеЕсли Команда = "помощь" Тогда
|
||
Сообщить("1С Хибер-Оболочка, версия " + Версия);
|
||
Сообщить("Авторские права (с) 2026 kiskosTwoKSix");
|
||
Сообщить("Распространяется на условиях лицензии GNU GPL 3.0 or later");
|
||
ИначеЕсли Команда = "команды" Тогда
|
||
Сообщить("Доступные команды: версия, выйти, монетка, угадатьчисло, помощь, команды");
|
||
Иначе
|
||
Сообщить("Неизвестная команда. Введите 'команды' для получения списка команд");
|
||
КонецЕсли;
|
||
Иначе
|
||
Сообщить("Ошибка ввода");
|
||
Прервать
|
||
КонецЕсли;
|
||
КонецЦикла;
|