Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/40: Рейтинг темы: голосов - 40, средняя оценка - 4.68
0 / 0 / 0
Регистрация: 15.05.2017
Сообщений: 19
1

Игра в слова

30.09.2017, 00:25. Показов 8061. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребят, помогите пожалуйста. Недавно только начала изучать этот язык и очень нужна ваша помощь.

Нужно создать игру в слова.
Суть в том, что есть список слов(только существительные в нём). Рандомно выдаётся игроку слово и из него ему нужно составить
как можно больше других слов(1 букву нельзя использовать дважды). По окончанию подсчитываются все правильные слова.

Пониманию вроде что нужно сделать, а с написанием большие проблемы.
1. проверить является ли введённое пользователем словом.
2. не повторяются ли буквы(Например, есть имя Борис и из него нельзя составить имя Боб).
3. подсчитать правильные варианты.
4. вывести сколько правильных слов.

Словарь прикрепила к посту.
Вложения
Тип файла: zip word_rus.zip (137.0 Кб, 111 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.09.2017, 00:25
Ответы с готовыми решениями:

Игра "В слова": называть слово, начинающееся на последнюю букву слова названного соперником
Разработать программу, позволяющую игроку выбрать тему игры (например, города, растения, животные,...

Игра в слова
Не могу понять в чём проблема. Помогите исправить пожалуйста. using System; using...

Угадывание слова или игра "Виселица"
Нашел хороший вариант с подобной темой за авторством Psilon class Program { static...

Напечатать те слова последовательности, которые отличны от последнего слова и буквы слова упорядочены
Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных...

9
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
30.09.2017, 01:32 2
а гидэ собссные наработки?
0
0 / 0 / 0
Регистрация: 15.05.2017
Сообщений: 19
30.09.2017, 13:08  [ТС] 3
Выше писала, что с написанием проблемы. На словах что делать нужно понимаю, а как записать это не доходит.
0
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
30.09.2017, 20:58 4
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System.Linq;
using System.Net.NetworkInformation;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.IO;
 
public class Program
{
    static Random rnd = new Random();
    public static void Main()
    {
        var allWords = File.ReadAllLines(@"c:\c#\word_rus.txt");
        var word = allWords[rnd.Next(allWords.Length)];
        var letters = word.GroupBy(c => c).ToDictionary(c => c.Key, c => c.Count());
        Console.WriteLine(word);
        var userWord = "";
        var count = 0;
        while(true)
        {
            Console.Write("->");
            userWord = Console.ReadLine();
            if(userWord == "!") break;
            if(isValid(userWord, letters)) count++;
        }
        Console.WriteLine(count);
    }
    static bool isValid(string str, Dictionary<char, int> baseString)
    {
        return Regex.IsMatch(str, @"[а-яё]") &&
            str.GroupBy(c => c).ToDictionary(c => c.Key, c => c.Count())
            .All(x => baseString.ContainsKey(x.Key) && baseString[x.Key] >= x.Value);
    }
}
0
0 / 0 / 0
Регистрация: 15.05.2017
Сообщений: 19
02.10.2017, 12:43  [ТС] 5
Можете построчно объяснить что делаете? Пожалуйста.

И как программа может подсчитать все правильные ответы? Что-то типо "Вами составлено n слов из k возможных".
0
0 / 0 / 0
Регистрация: 15.05.2017
Сообщений: 19
02.10.2017, 13:15  [ТС] 6
Если я ввела несколько слов и больше не знаю допустим. Можно сделать как-то, что если не знаешь больше, то нажимаешь например на "space" и тебе выведет "Вами составлено n слов из k возможных"?
Миниатюры
Игра в слова  
0
112 / 99 / 80
Регистрация: 30.12.2015
Сообщений: 230
02.10.2017, 13:47 7
C#
1
if(userWord == "!") break;
Тут стоп слово "!". Если хотите, меняете на
C#
1
if(userWord == " ") break;
и будет вам стоп слово - пробел)
0
0 / 0 / 0
Регистрация: 15.05.2017
Сообщений: 19
03.10.2017, 08:34  [ТС] 8
Спасибо большое, не заметила даже.

Добавлено через 15 часов 24 минуты
Вопрос про подсчитывание всех правильных ответов всё ещё остался. Помогите пожалуйста.
0
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
03.10.2017, 09:07 9
откуда я знаю сколько там
Цитата Сообщение от ВалерияЕфремова Посмотреть сообщение
из k возможных
как их подсчитать?
0
0 / 0 / 0
Регистрация: 23.12.2018
Сообщений: 11
11.10.2019, 09:49 10
Diamante, Привет.
У меня похожая задача, только слово которое мы выводим, должно разбиваться на буквы, а уже буквы выводятся в случайном порядке, и должно ставиться условие, если это слово = 5, то есть 5 букв, то выводим на экран.
Как это реализовать в WPF?
Подскажите пожалуйста
0
11.10.2019, 09:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.10.2019, 09:49
Помогаю со студенческими работами здесь

Игра в слова
Публикую исходный текст для игры в слова. Хотелось бы узнать как улучшить текст программы. ...

игра в слова...
Помогите решить.... Игра в слова.Программа выбирает слово и рисует на экране столько прочерков,...

Игра в слова
Не могу довести программу до ума Помогите разобраться :wall:...

Игра в слова
Добрый день Уважаемые программисты, начал писать программу Игра в слова. Ну знаете, на 2ух игроков,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru