Игра "5 букв"

09.01.24

Задачи пользователя - Игры

Игра "5 Букв", сделанная на 1С. В игре загадано слово, существительное в единственном числе. Нужно отгадать загаданное слово.

Скачать исходный код

Наименование Файл Версия Размер
Игра "5 Букв" на 1С
.epf 59,41Kb
2
.epf 59,41Kb 2 Скачать

Нужно вписать слово и нажать на кнопку "Проверить". Если буква присутствует в слове, то она будет выделена светло голубым цветом. Если буква стоит на своем месте, то она будет выделена золотым цветом. Если буквы нет в слове, то она будет выделена серым цветом.

Работает только на управляемых формах, любой конфигурации. 

Тестировал на платформах 8.3.23.1739, 8.3.20.2180.

5 букв вродли wordle

См. также

Пасьянс Паук

Игры Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Классическая игра пасьянс Паук, на платформе 1С.

15.04.2024    865    49    user1693438    1    

15

Классическая игра "Змейка" на 1С (управляемые формы)

Игры Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Бесплатно (free)

Игра "Змейка" в классическом варианте на управляемых формах в 1С. Собирайте яблоки и ставьте рекорд!

09.02.2024    2980    166    emilyabochkova    12    

24

Ключворды в 1С

Игры Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Создавайте новые ключворды или разгадывайте существующие.

1 стартмани

05.02.2024    1667    1    alexpvs    0    

6

Пятнашки

Игры Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Цель - обучение хитростям нашей всеми любимой 1С.

28.11.2023    909    35    user1834118    0    

6

Кар магедон

Игры Платформа 1С v8.3 Конфигурации 1cv8 1С:ERP Управление предприятием 2 Россия Бесплатно (free)

Держись, российский геймдев, я уже еду. Бета тест, можно оформлять предзаказы, будет донатный магазин с модельками российского автопрома (по цене реальных авто).

01.11.2023    1787    39    user1834118    7    

11

Турнир по 1С. Танки на СКД

Игры Платформа 1С v8.3 Абонемент ($m)

Предлагаю свою версию турнира. Особенность этого турнира в том, что тут нет правильных или неправильных решений. Есть твое решение и решение твоих соперников. У кого решение лучше тот и победит.

1 стартмани

09.10.2023    1875    1    opx    1    

13

Плоский "Кубик Рубика"

Игры Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Вы можете собрать кубик Рубика? Я - только с помощью инструкции:). Попробуйте справиться с его плоским аналогом.

1 стартмани

29.05.2023    2116    7    Alxby    3    

13

Пасьянс Марии Стюарт (пасьянс Медичи) - попробуй изменить свою судьбу

Игры Платформа 1С v8.3 Россия Абонемент ($m)

Игра - пасьянс Марии Стюарт. Есть возможность создавать свои расклады, обмениваться раскладами и менять картинки карт.

1 стартмани

05.05.2023    2795    1    sandr13    0    

13
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Obertone 74 29.12.23 18:19 Сейчас в теме
Красиво оформленная реализация. Есть ещё пятикратная версия этой игры: https://infostart.ru/public/1603974/
2. premierex 204 30.12.23 10:59 Сейчас в теме
Прикольно! И оформление красивое, согласен с (1).
Только вот слов мало. У меня есть скачанный где-то словарь существительных из 51301 слова. Из них слов из пяти букв - 3483! Если хотите, могу скинуть.
5. APTEM_SLV 164 01.01.24 19:09 Сейчас в теме
(2) спасибо! может быть полезным! хотя я с этим словарем в 9000 слов замучился слова отбирать )
3. SerVer1C 764 31.12.23 17:45 Сейчас в теме
Зацените мой вариант для отгадывания слов в игре от жёлтого банка. https://github.com/SerVer1C/Nwords
4. o.kovalev 114 31.12.23 20:42 Сейчас в теме
Тоже написал и "загадку" и "разгадку" и приложение для Андроид.
6. premierex 204 02.01.24 05:32 Сейчас в теме
(5) А я словарь в простенькую базу закачал. На 1С. И количество букв в словах рассчитал. Теперь есть БД со словами и описанием, а также отбором по количеству букв простеньким запросом. Хотя для этого в общем-то и не надо было рассчитывать количество букв. Всё можно запросом сделать.
7. RustIG 1619 08.01.24 16:09 Сейчас в теме
мы в семье играем на бумаге, как морской бой, только в "5 букв" - загадываем друг другу слова.
Одно подчеркивание буквы - когда буква есть, но не на своем месте.
Два подчеркивания буквы - когда буква на своем месте.
Пишем алфавит - зачеркиваем буквы, выбывающие в процессе игры.
8. premierex 204 16.02.24 03:14 Сейчас в теме
(0) Решил немного отвлечься и поиграть :) Хотел для проверки ввести слово "съезд", а буквы "ъ" нет на игровом поле. Хотя в макете есть слово "въезд", которое содержит эту букву.
Буквы "ё" тоже нет, но поскольку в макете нет слов с этой буквой, будем считать, что с имеющимся набором слов это не критично.
А вот слов, конечно, маловато.
Это так, на заметку.
9. premierex 204 16.02.24 15:20 Сейчас в теме
(5) У меня словарь содержит ~51 000 слов. И я вот не замучился.
Там так-то все просто довольно. Собираешь из словаря все слова в таблицу значений, где колонки такие:
"Наименование", "КоличествоСимволов". Впрочем, количество символов можно и в запросе вычислить.

А сам текст запроса вот такой:

/////////////////////////////////////////////////////////////////////////////
// Помещаем данные, переданные в таблице значений, во временную таблицу запроса
ВЫБРАТЬ 
	ДанныеСловарей.Наименование, 
	ДанныеСловарей.КоличествоСимволов
	// Если версия платформа 1С позволяет,
	// можно использовать функцию, редализованную в версии 8.3.20.1549 
	// ДЛИНАСТРОКИ(ДанныеСловарей.Наименование) КАК КоличествоСимволов
ПОМЕСТИТЬ ВТ_ДанныеСловарей
ИЗ &ИсходнаяТаблица КАК ДанныеСловарей
;
////////////////////////////////////////////////////////////­/////////////////
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 1, 1) КАК Буква
ПОМЕСТИТЬ ВТ_ДанныеСловарейБуквы
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ	
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 2, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ	
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 3, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ	
ВЫБРАТЬ	ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 4, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 5, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 6, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 7, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 8, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 9, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 10, 1)
ИЗ  Справочник.ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 11, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 12, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 13, 1)
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ ДанныеСловарей.Наименование, ПОДСТРОКА(ДанныеСловарей.Наименование, 14, 1)
// Если 14-ти символов недостаточно, потребутся дополнить запрос до необходимого количества объединений
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
;
////////////////////////////////////////////////////////////­/////////////////
// Формирование временной таблицы, в котрую будут помещаться тройки: Наименование-Буква-КоличествоБукв
// Результат получается примерно такой:
// Это слово в следующем запросе будет исключено из результатов, букв "а" потому что больше одной
// абака-а-3 
// абака-б-1 
// абака-к-1 
// А это слово - нет. Всех букв по 1-й
// абвер-а-1 
// .........
// абвер-р-1 
ВЫБРАТЬ
	ДанныеСловарей.Наименование, ДанныеСловарейБуквы.Буква, ДанныеСловарей.КоличествоСимволов, КОЛИЧЕСТВО(ДанныеСловарейБуквы.Буква) КАК КоличествоБукв
ПОМЕСТИТЬ ВТ_БуквыИСлова
ИЗ ВТ_ДанныеСловарей КАК ДанныеСловарей
	ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_ДанныеСловарейБуквы КАК ДанныеСловарейБуквы 
	ПО ДанныеСловарей.Наименование = ДанныеСловарейБуквы.Наименование	
	И НЕ ДанныеСловарейБуквы.Буква = "" 
	// Наименования фильтруем по вхождению символов в диапазоне от "!" до "я",
	// поиск в запросе - регистронезависимый, поэтому "я" - прописная
	И НЕ ДанныеСловарей.Наименование ПОДОБНО "%[^!-я]%"
ГДЕ
// Включаем фильтр по длине слова, если задан
ВЫБОР 
	КОГДА НЕ &КоличествоСимволов = 0 
	ТОГДА ДанныеСловарей.КоличествоСимволов = &КоличествоСимволов
	ИНАЧЕ ИСТИНА	
КОНЕЦ	
СГРУППИРОВАТЬ ПО ДанныеСловарей.Наименование, ДанныеСловарей.КоличествоСимволов, ДанныеСловарейБуквы.Буква
;
////////////////////////////////////////////////////////////­/////////////////
ВЫБРАТЬ
	БуквыИСлова.Наименование, БуквыИСлова.КоличествоСимволов
ИЗ ВТ_БуквыИСлова КАК БуквыИСлова
СГРУППИРОВАТЬ ПО БуквыИСлова.Наименование, БуквыИСлова.КоличествоСимволов
// Фрагмент ниже исключает все слова, где буква(ы) встречается в слове больше одного раза
ИМЕЮЩИЕ МАКСИМУМ(БуквыИСлова.КоличествоБукв) = 1
АВТОУПОРЯДОЧИВАНИЕ	
Показать


Что-то не получилось спойлер вставить. Думаю, и так читабельно будет.
На всякий случай прикреплю файлы словарей. Может, пригодятся.
Прикрепленные файлы:
russian_nouns_with_definition.rar
UNISLOV_cp_1251.rar
Оставьте свое сообщение