/// /// Исходный код текстовой онлайн игры "Быки и коровы 2" скачан с сайта https://apero.ru/ /// Пройти онлайн или скачать последнюю версию этой игры можно по адресу: https://apero.ru/Текстовые-игры/Быки-и-коровы-2 /// Авторы: Мастер Про /// Версия: от 2024-02-13 23:37:18 /// \запуск [color=green]Быки и коровы[/color] [color=orange]Попробуй отгадать число которое придумал противник. У тебя будет 7 попыток на это нелёгкое дело.[/color] [color=red]Автор: Мастер Про[/color] [color=#77cc99]Идея взята с игры StalkerSleem[/color] \(ст, [color=#2299bb]Начать игру "Быки и коровы"[/color]) \СТОП \ст \(АПЕРО.блок.скругление="нет") Правила просты: у вас есть 7 попыток чтобы отгадать число, состоящие из 4-х цифр от 1 до 9 включительно, цифры не повторяются. Каждый ход вы будете получать информацию о угаданных цифрах в форме: число [быки;коровы]. Быки — это количество цифр, которые присутствуют в числе и стоят на правильной позиции, коровы — количество цифр, которые присутствуют в числе, но стоят на неправильной позиции. \(н1, Отгадывать число) \СТОП \н1 //Для начала нам нужно создать число \(поос=7) \(обнул) \(ч1=АПЕРО.случайно(1;9)) \(ч2=АПЕРО.случайно(1;9)) \(ч3=АПЕРО.случайно(1;9)) \(ч4=АПЕРО.случайно(1;9)) //проверка цифр \(п1) \СТОП \н2 \(ч1=АПЕРО.случайно(1;9)) \(п1) \СТОП \н3 \(ч2=АПЕРО.случайно(1;9)) \(п1) \СТОП \н4 \(ч3=АПЕРО.случайно(1;9)) \(п1) \СТОП \п1 \ЕСЛИ(ч1=ч2 ИЛИ ч1=ч3 ИЛИ ч1=ч4) \ТО( \СТОП(н2)\) \ЕСЛИ(ч2=ч3 ИЛИ ч2=ч4) \ТО(\СТОП(н3)\) \ЕСЛИ(ч3=ч4) \ТО(\СТОП(н4)\) \(число=1000*\(ч1)+100*\(ч2)+10*\(ч3)+\(ч4)) \(и1) //основной вид/обеспечение \СТОП \и1 \ЕСЛИ(победа=0) \ТО( \ЕСЛИ(поос>0) \ТО(Попыток осталось \(поос) \) \ИНАЧЕ(Попыток не осталось, загаданное число: \(число) [br] \(по2о, Признать поражение) \)\) \ИНАЧЕ( \(по1о, Победа, число угадано! \(число)) \) \ЕСЛИ(победа=0) \ТО(\ЕСЛИ(поос>0) \ТО(\ВВОД(чвем) \(и2, Проверить)\) \ИНАЧЕ(\)\) \ИНАЧЕ(\) История ввода: \(история) \СТОП \и2 //проверка введённого на соответствие, несколько проверок чтобы убедиться что введённое - это четырёхзначное число, цифр от 1 до 9. \ЕСЛИ(чвем>1233 И чвем<10000) \ТО(\(пров\(поос)=1) \(введ\(поос)=чвем) \(в\(поос).ч1=АПЕРО.строка.часть("\(чвем)";1;1)) \(в\(поос).ч2=АПЕРО.строка.часть("\(чвем)";2;1)) \(в\(поос).ч3=АПЕРО.строка.часть("\(чвем)";3;1)) \(в\(поос).ч4=АПЕРО.строка.часть("\(чвем)";4;1)) \) \ЕСЛИ(пров\(поос)=1) \ТО( \(наход)\) \ИНАЧЕ(Ошибка \(чвем) [br] \СТОП(и1)\) \СТОП \история // так пишется история \ЕСЛИ(пров1=1) \ТО(\(введ1)\ЕСЛИ(быки1>0) \ТО([\(быки1)\)\ИНАЧЕ([0\)\ЕСЛИ(коровы1>0) \ТО(;\(коровы1)\) \ИНАЧЕ(;0\)]\) \ИНАЧЕ(\) \ЕСЛИ(пров2=1) \ТО(\(введ2)\ЕСЛИ(быки2>0) \ТО([\(быки2)\)\ИНАЧЕ([0\)\ЕСЛИ(коровы2>0) \ТО(;\(коровы2)\) \ИНАЧЕ(;0\)]\) \ИНАЧЕ(\) \ЕСЛИ(пров3=1) \ТО(\(введ3)\ЕСЛИ(быки3>0) \ТО([\(быки3)\)\ИНАЧЕ([0\)\ЕСЛИ(коровы3>0) \ТО(;\(коровы3)\) \ИНАЧЕ(;0\)]\) \ИНАЧЕ(\) \ЕСЛИ(пров4=1) \ТО(\(введ4)\ ЕСЛИ(быки4>0) \ТО([\(быки4)\)\ИНАЧЕ([0\)\ЕСЛИ(коровы4>0) \ТО(;\(коровы4)\) \ИНАЧЕ(;0\)]\) \ИНАЧЕ(\) \ЕСЛИ(пров5=1) \ТО(\(введ5)\ЕСЛИ(быки5>0) \ТО([\(быки5)\)\ИНАЧЕ([0\)\ЕСЛИ(коровы5>0) \ТО(;\(коровы5)\) \ИНАЧЕ(;0\)]\) \ИНАЧЕ(\) \ЕСЛИ(пров6=1) \ТО(\(введ6)\ЕСЛИ(быки6>0) \ТО([\(быки6)\)\ИНАЧЕ([0\)\ЕСЛИ(коровы6>0) \ТО(;\(коровы6)\) \ИНАЧЕ(;0\)]\) \ИНАЧЕ(\) \ЕСЛИ(пров7=1) \ТО(\(введ7)\ ЕСЛИ(быки7>0) \ТО([\(быки7)\)\ИНАЧЕ([0\)\ЕСЛИ(коровы7>0) \ТО(;\(коровы7)\) \ИНАЧЕ(;0\)]\) \ИНАЧЕ(\) \СТОП \наход //ищем быков и коров для ч1 \ЕСЛИ(в\(поос).ч1=ч1) \ТО(\(быки\(поос)=быки\(поос)+1)\) \ЕСЛИ(в\(поос).ч1=ч2) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(в\(поос).ч1=ч3) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(в\(поос).ч1=ч4) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) // для ч2 \ЕСЛИ(в\(поос).ч2=ч2) \ТО(\(быки\(поос)=быки\(поос)+1)\) \ЕСЛИ(в\(поос).ч2=ч1) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(в\(поос).ч2=ч3) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(в\(поос).ч2=ч4) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) // для ч3 \ЕСЛИ(в\(поос).ч3=ч3) \ТО(\(быки\(поос)=быки\(поос)+1)\) \ЕСЛИ(в\(поос).ч3=ч2) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(в\(поос).ч3=ч1) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(в\(поос).ч3=ч4) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) //для ч4 \ЕСЛИ(в\(поос).ч4=ч4) \ТО(\(быки\(поос)=быки\(поос)+1)\) \ЕСЛИ(в\(поос).ч4=ч2) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(в\(поос).ч4=ч3) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(в\(поос).ч4=ч1) \ТО(\(коровы\(поос)=коровы\(поос)+1)\) \ЕСЛИ(введ\(поос)=число) \ТО(\( победа=1)\) \(поос=поос-1) \(и1) \СТОП \по1о Молодец, ты угадал число, но сможешь ли справиться со следующим числом? \(н1, Я угадаю число, загадывай!) \(АПЕРО.очки=АПЕРО.очки+победа) \(победа=0) \(ст, Посмотреть правила) \СТОП \по2о Неповезло, попробуй ещё раз, посмотри правила и отгадай это случайное число! \(н1, Я угадаю число, загадывай!) \(ст, Посмотреть правила) \СТОП \обнул \ЦИКЛ(обнг<7) \СДЕЛАТЬ( \(обнг=обнг+1) \(пров\(обнг)=0) \(быки\(обнг)=0) \(коровы\(обнг)=0) \) \(обнг=0) \СТОП // Обновление от 13 февраля 2024 года 23:35, код игры в открытом доступе, далее обновления не планируются