Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 27.10.2016
Сообщений: 12

Найти и сохранить слова последовательности, отличные от последнего слова, предварительно преобразовав их

04.11.2016, 17:03. Показов 1796. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
нужно помощь, есть такое задание: Дана строка. Словом текста считается любая последовательность букв алфавита; между соседними словами - не менее одного пробела, за последним словом - точка. Найти и сохранить в строке те слова последовательности, которые отличны от последнего слова, предварительно преобразовав каждое из них по следующему правилу: если слово нечетной длины, то удалить его среднюю букву. Все остальные слова удалить.
начало как бы есть, но тяжело доделать дальше:
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.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication3
{
    class Program
    {
        static string func(ref string stroka)
        {
            string prob = stroka.Trim();
            prob = prob.ToLower();
            return prob;
        }
 
        static string POINT(ref string stroka)
        {
            char[] charsToTrim = { ',', '.' };
            stroka = stroka.TrimEnd(charsToTrim);
            return stroka;
        }
 
        static void Main(string[] args)
        {
            bool flag;
            Console.WriteLine("Введите строку");
            int i = 0;
            string stroka = Console.ReadLine(); //вводим строку
            stroka = POINT(ref stroka); //убираем точку в конце
            string[] Words = stroka.Split(' '); //разбиваем на слова 
            Console.WriteLine(wor);
            Console.ReadKey();
        }
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.11.2016, 17:03
Ответы с готовыми решениями:

Напечатать все слова последовательности, отличные от последнего слова, предварительно преобразовав по правилу
последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 строчных русских букв; между соседними словами - запятая,...

Напечатать все слова, отличные от последнего слова, предварительно преобразовав их по правилу
ТЕМА: Обработка данных литерного типа. Необходимо написать 2 программы: 2)Дана последовательность, содержащая от 2 до 10 слов, в...

Напечатать все слова, отличные от последнего слова, предварительно преобразовав каждое из них
Здравствуйте. Помогите пожалуйста написать прогу. Требуется написать функцию обработки строки и прогу, тестирующую эту функцию. В проге...

6
 Аватар для TuM0xA
212 / 210 / 137
Регистрация: 21.12.2015
Сообщений: 545
04.11.2016, 17:33
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
using System;
    class Program
    {
        static string func(ref string stroka)
        {
            string prob = stroka.Trim();
            prob = prob.ToLower();
            return prob;
        }
 
        static string POINT(ref string stroka)
        {
            char[] charsToTrim = { ',', '.' };
            stroka = stroka.TrimEnd(charsToTrim);
            return stroka;
        }
 
        static void Main(string[] args)
        {
            Console.WriteLine("Введите строку");
            string stroka = Console.ReadLine(); //вводим строку
            stroka = POINT(ref stroka); //убираем точку в конце
            string[] Words = stroka.Split(' '); //разбиваем на слова 
            foreach (string str in Words) 
            {
                if(str.Length%2!=0&&str != Words[Words.Length-1])Console.Write(str.Remove((str.Length/2),1)+" ");
                else if (str != Words[Words.Length - 1])Console.Write(str+" ");
            }
            Console.WriteLine(Words[Words.Length-1]);
            Console.ReadKey();
        }
}
Добавлено через 6 минут
последнее слово должно выводиться и модифицироваться?
0
0 / 0 / 0
Регистрация: 27.10.2016
Сообщений: 12
04.11.2016, 19:55  [ТС]
последнее слово должно удалится вместе с совпадающими с ним, а отличные слова от последнего изменить: если в слове нечетное количество букв, то удалить среднюю, а если четное количество букв, то вообще удалить слово

Добавлено через 4 минуты
Цитата Сообщение от TuM0xA Посмотреть сообщение
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
using System;
    class Program
    {
        static string func(ref string stroka)
        {
            string prob = stroka.Trim();
            prob = prob.ToLower();
            return prob;
        }
 
        static string POINT(ref string stroka)
        {
            char[] charsToTrim = { ',', '.' };
            stroka = stroka.TrimEnd(charsToTrim);
            return stroka;
        }
 
        static void Main(string[] args)
        {
            Console.WriteLine("Введите строку");
            string stroka = Console.ReadLine(); //вводим строку
            stroka = POINT(ref stroka); //убираем точку в конце
            string[] Words = stroka.Split(' '); //разбиваем на слова 
            foreach (string str in Words) 
            {
                if(str.Length%2!=0&&str != Words[Words.Length-1])Console.Write(str.Remove((str.Length/2),1)+" ");
                else if (str != Words[Words.Length - 1])Console.Write(str+" ");
            }
            Console.WriteLine(Words[Words.Length-1]);
            Console.ReadKey();
        }
}
Добавлено через 6 минут
последнее слово должно выводиться и модифицироваться?
последнее слово должно удалится вместе с совпадающими с ним, а отличные слова от последнего изменить: если в слове нечетное количество букв, то удалить среднюю, а если четное количество букв, то вообще удалить слово
0
 Аватар для TuM0xA
212 / 210 / 137
Регистрация: 21.12.2015
Сообщений: 545
04.11.2016, 20:14
все
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
using System;
class Program
{
    static string func(ref string stroka)
    {
        string prob = stroka.Trim();
        prob = prob.ToLower();
        return prob;
    }
 
    static string POINT(ref string stroka)
    {
        char[] charsToTrim = { ',', '.' };
        stroka = stroka.TrimEnd(charsToTrim);
        return stroka;
    }
 
    static void Main(string[] args)
    {
        Console.WriteLine("Введите строку");
        string stroka = Console.ReadLine(); //вводим строку
        stroka = POINT(ref stroka); //убираем точку в конце
        string[] Words = stroka.Split(' '); //разбиваем на слова 
        foreach (string str in Words)
        {
            if (str.Length % 2 != 0 && str != Words[Words.Length - 1]) Console.Write(str.Remove((str.Length / 2), 1) + " ");
            else if (str != Words[Words.Length - 1]) Console.Write(str + " ");
        }
        Console.WriteLine();
        Console.ReadKey();
    }
}
Добавлено через 21 секунду
все теперь работает как надо?

Добавлено через 1 минуту
вот это нужно было изменить
C#
1
Console.WriteLine(Words[Words.Length-1]);
0
0 / 0 / 0
Регистрация: 27.10.2016
Сообщений: 12
06.11.2016, 07:04  [ТС]
не совсем, надо чтобы слова, в которых четное количество букв удалялись полностью
0
 Аватар для TuM0xA
212 / 210 / 137
Регистрация: 21.12.2015
Сообщений: 545
06.11.2016, 11:37
Лучший ответ Сообщение было отмечено VPanda17 как решение

Решение

четные слова теперь удаляются


Кликните здесь для просмотра всего текста
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
using System;
class Program
{
    static string func(ref string stroka)
    {
        string prob = stroka.Trim();
        prob = prob.ToLower();
        return prob;
    }
 
    static string POINT(ref string stroka)
    {
        char[] charsToTrim = { ',', '.' };
        stroka = stroka.TrimEnd(charsToTrim);
        return stroka;
    }
 
    static void Main(string[] args)
    {
        Console.WriteLine("Введите строку");
        string stroka = Console.ReadLine(); //вводим строку
        stroka = POINT(ref stroka); //убираем точку в конце
        string[] Words = stroka.Split(' '); //разбиваем на слова 
        foreach (string str in Words)
            if (str.Length % 2 != 0 && str != Words[Words.Length - 1]) Console.Write(str.Remove((str.Length / 2), 1) + " ");
        Console.WriteLine();
        Console.ReadKey();
    }
}


Добавлено через 2 минуты
а теперь?
0
0 / 0 / 0
Регистрация: 27.10.2016
Сообщений: 12
06.11.2016, 11:50  [ТС]
большое спасибо)теперь то что надо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.11.2016, 11:50
Помогаю со студенческими работами здесь

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

Напечатать все слова, отличные от последнего слова, предварительно преобразовав каждое из них
Доброго времени суток!) помогите пожалуйста, в голову не приходит никаких идей(((( Дан текст. Между соседними словами – не менее ...

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

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

Напечатать все слова, отличные от последнего слова, предварительно преобразовав каждое из них
не понимаю код программы const word_count = 100; type type_string_array = array of string; var source_string, first_char:...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru