1 / 1 / 1
Регистрация: 23.10.2014
Сообщений: 21
1

Удалить в каждом слове строки последнюю гласную букву

26.11.2014, 21:41. Показов 2690. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно разработать функцию, выполняющую заданную операцию над данными типа string. Удалить в каждом слове строки последнюю гласную букву.
Помогите пожалуйста, а то я совсем не понимаю. И объясните.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2014, 21:41
Ответы с готовыми решениями:

Строка: в слове удалить последнюю букву.
Помогите пожалуйста решить задачу. Дан массив (вводится с клавиатуры) состоящий от 2 до 10 слов,...

Удалить из строки русские слова, которые начинаются на гласную букву
Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются...

Удалить из сообщения только те русские слова, которые начинаются на гласную букву
Используя регулярное выражение, удалите из сообщения только те русские слова, которые начинаются на...

В каждом слове k-ю букву заменить заданным символом
В каждом слове k-ю букву заменить заданным символом. Если k больше длины слова, корректировку не...

1
Life Builder
532 / 496 / 374
Регистрация: 12.01.2011
Сообщений: 1,754
27.11.2014, 00:22 2
Лучший ответ Сообщение было отмечено Mikan как решение

Решение

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
        static int Max(List<int> list)
        {
            int max = int.MinValue;
 
            for (int i = 0; i < list.Count; i++)
                if (list[i]> max)
                    max = list[i];
 
            return max;
        }
 
        static void Main(string[] args)
        {
            string text = "This is apple. This is not tomate.";
            string[] slova = text.Split(' ');
            string glass = "euioa";
            
 
            for (int i = 0; i < slova.Length; i++)
            {
                List<int> list = new List<int>();
                for (int j = 0; j < glass.Length; j++)
                    list.Add(slova[i].LastIndexOf(glass[j]));
 
                int max = Max(list);
 
                if(max >-1) slova[i] = slova[i].Remove(max, 1);
            }
 
            text = string.Join(" ", slova);
 
            Console.WriteLine(text);
            Console.ReadKey();
        }
Добавлено через 9 минут
Еще один вариант
C#
1
using System.Linq;
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
            string text = "This is apple. This is not tomate.";
            string glass = "euioa";
 
            var slova = text.Split(' ').Select(x =>
                {
                    List<int> list = new List<int>();
 
                    for (int j = 0; j < glass.Length; j++)
                        list.Add(x.LastIndexOf(glass[j]));
                    int max = list.Max();
 
                    return max >-1?x.Remove(max, 1):x;
                });
 
            text = string.Join(" ", slova);
 
            Console.WriteLine(text);
            Console.ReadKey();
0
27.11.2014, 00:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2014, 00:22
Помогаю со студенческими работами здесь

Вывести все слова, поменяв местами первую и последнюю буквы в каждом слове в строках
вообще не могу разобраться...

В слове удалить первую и последнюю буквы
Ребята помогите, пожалуйста. У меня есть набор слов, нужно в каждом слове удалить первую и...

Удалить последнюю букву(символ) в строке
Всех с Наступающим Новым Годом! :) Подскажите пожалуйста, вот у меня копируется текст в текстбокс,...

Из строки удалить среднюю букву , если длина строки нечетная , если четная - удалить две средние буквы
Из строки удалить среднюю букву , если длина строки нечетная , если четная - удалить две средние...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru