Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
mazahaler
4 / 4 / 0
Регистрация: 01.10.2015
Сообщений: 297
#1

Определить существуют ли слова X Y Z которые являются повторением слова V - C#

27.01.2017, 13:03. Просмотров 148. Ответов 3
Метки нет (Все метки)

Здравствуйте.
Условие: Даны три слова X,Y,Z. Определить, существует ли слово V такое, что X,Y,Z являются повторениями слова V. Если V существует, то напечатать его. Слова имеют длину не более 1000 символов. Символ "пробел" является разделителем слов.
Я сделал так:
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
38
39
40
41
42
43
44
45
46
47
48
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string word;
            string sw;
            Console.WriteLine("Введите слова X Y Z через пробел");
            word = Console.ReadLine();
            Console.WriteLine("Введите слово V");
            sw = Console.ReadLine();
            bool flag = false;
            int count = 0;
            int countw = 0;
 
            for (int i = 0; i < word.Length; i++) {
                if (word[i] == ' ') {
                    countw++;
                }           
            }
 
 
            for (int i = 0; i < sw.Length; i++)
            {
                if (sw[i] == word[i])
                {
                   flag=true;
                   count++;
                }
            }
 
 
            if ((flag == true) && (count==countw+1)) {
                Console.WriteLine("{0}", sw);
            }
            
 
            Console.ReadKey();
        }
    }
}
Но получается так что программа считает повторением только слова, в которых слово V находится в начале каждого из них. Пример: В качестве слов X Y Z ввожу слова "этода этонет этовозможно". В качестве слова V ввожу "это". Тогда программа работает правильно и выводит слово "это". В случае же, если слова X Y Z будут такими "даэто нетэто возможноэто", а слово V также будет "это", то программа ничего не выведет. Надеюсь пример понятный.
Нужна помощь с этой проблемой.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.01.2017, 13:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить существуют ли слова X Y Z которые являются повторением слова V (C#):

Найти слова, которые отличны от последнего слова и являются симметричными - C#
Дана строка. Словом текста считается любая последовательность букв алфавита; между соседними словами - не менее одного пробела, за...

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

Вывести слова, которые являются анаграммами, палиндромами - C#
Помогите пожалуйста с анаграммами и палиндромами, полное задание: Пользователь вводит предложение Создайте меню и методы для...

Найти и сохранить в строке те слова последовательности, которые отличны от первого слова - C#
Дана строка. Словом текста считается любая последовательность букв латинского алфавита; между соседними словами - не менее одного пробела,...

Найти и сохранить в строке те слова последовательности, которые отличны от первого слова - C#
помогите плиз, никак не получается Дана строка. Словом текста считается любая последовательность букв латинского алфавита; между...

Напечатать те слова строки, которые отличны от последнего слова с условием - C#
Здравствуйте дорогие товарищи. Сегодня решал задачи по программированию и наткнулся на довольно таки интересную. Раньше я не имел дело...

3
Pikemaster
297 / 297 / 120
Регистрация: 24.09.2013
Сообщений: 769
Завершенные тесты: 4
27.01.2017, 13:23 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
mazahaler, такое решение подойдёт?
C#
1
2
3
4
5
6
7
8
9
10
11
static void Main(string[] args)
{
    Console.WriteLine("Введите слова X Y Z через пробел");
    string[] words = Console.ReadLine().Split(' ');
    Console.WriteLine("Введите слово V");
    string sw = Console.ReadLine();
 
    if (words[0].Contains(sw) && words[1].Contains(sw) && words[2].Contains(sw))
        Console.WriteLine(sw);
    Console.ReadKey();
}
1
mazahaler
4 / 4 / 0
Регистрация: 01.10.2015
Сообщений: 297
27.01.2017, 13:35  [ТС] #3
Pikemaster, думаю что да, спасибо большое. Пойду почитаю про эти новые для меня методы).
0
ata
268 / 240 / 53
Регистрация: 28.10.2015
Сообщений: 709
27.01.2017, 14:04 #4
C#
1
2
3
4
5
6
7
8
9
10
11
12
using System;
using System.Linq;
 
public class Program
{
    public static void Main()
    {
        string[] words = Console.ReadLine().Split();
        string syllable = Console.ReadLine();
        Console.WriteLine(words.All(word => word.IndexOf(syllable) != -1));
    }
}
2
27.01.2017, 14:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.01.2017, 14:04
Привет! Вот еще темы с ответами:

Найти и сохранить в строке слова последовательности, которые отличны от первого слова и удовлетворяют условию - C#
Дана строка. Словом текста считается любая последовательность букв латинского алфавита; между соседними словами - не менее одного пробела,...

Вывести на экран те слова, которые отличны от последнего слова первой строки текста и симметричны - C#
Вывести на экран те слова, которые отличны от последнего слова первой строки текста и симметричны.

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

Напечатать все слова предложения, которые являются частью других слов предложения - C#
Доброго времени суток! Суть вопроса в следующем: дан массив строк, в нём нужно найти слова, которые являются подсловами других слов....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru