Дискуссионный математический форумМатематический форум
Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 3 часа [ Летнее время ]
новый онлайн-сервис
число, сумма и дата прописью

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: С++ удалить из строки слова, оканчивающиеся на гласную букву
СообщениеДобавлено: 24 май 2014, 17:19 
Не в сети
Начинающий
Зарегистрирован:
24 май 2014, 17:11
Сообщений: 5
Cпасибо сказано: 0
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Всем привет!!!! Ребята, помогите прогу написать пожалуйста:

Удалить из строки все слова, заканчивающиеся на гласную букву! ( в int maine прописать только объявление переменных).

Пожалуйста!!

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: Массивы в С++
СообщениеДобавлено: 24 май 2014, 23:13 
Не в сети
Администратор
Аватара пользователя
Зарегистрирован:
23 фев 2010, 22:52
Сообщений: 6003
Cпасибо сказано: 3247
Спасибо получено:
3150 раз в 2273 сообщениях
Очков репутации: 652

Добавить очки репутацииУменьшить очки репутации
Так нужно?

#include <iostream>
#include <cstring>
using namespace std;

bool isDelimiter(const char s)
{
const char Delimiters[10] = " ,.;:?!\n\0";
for (int i = 0; i < 10; i++){ if (s == Delimiters[i]) return true; }
return false;
}

bool isVowel(const char s)
{
const char Vowels[13] = "aeiouyAEIOUY";
for (int i = 0; i < 13; i++){ if (s == Vowels[i]) return true; }
return false;
}

void Stroka(char *str)
{
setlocale(0,"");
cout << "Введите строку на английском:\n\n";

cin.getline(str, 255);
const int len = strlen(str);

for (int i = 0, d = 0; i < len-d; i++)
{ if ( isDelimiter(str[i+1]) && isVowel(str[i]) )
{ int j = i;
while ( !isDelimiter(str[j]) && j != -1 ) j--;
d = i-j;
for (int k = j; k < len-d; k++) str[k+1] = str[k+d+1];
i -= d;
}
}

cout << "\n\nРезультат:\n\n" << str;
}

int main()
{
char str[256];

Stroka(str);

system("pause > null");
return 0;
}

Навскидку, без извращений с оптимизацией.

Вернуться к началу
 Профиль  
Cпасибо сказано 
 Заголовок сообщения: Re: С++ удалить из строки слова, оканчивающиеся на гласную букву
СообщениеДобавлено: 29 май 2014, 17:12 
Не в сети
Начинающий
Зарегистрирован:
24 май 2014, 17:11
Сообщений: 5
Cпасибо сказано: 0
Спасибо получено:
0 раз в 0 сообщении
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
А можно откомментировать код? :sorry:

Вернуться к началу
 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему      Страница 1 из 1 [ Сообщений: 3 ]

 Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Сумма на букву Д

в форуме Задачи со школьных и студенческих олимпиад

Xenia1996

3

364

02 авг 2017, 10:40

Как внести функцию и букву в двойной дифференциал

в форуме Химия и Биология

MBIZEPS

0

318

04 апр 2020, 02:46

Строки и столбцы

в форуме Начала анализа и Другие разделы школьной математики

Ramanujan

1

321

26 апр 2018, 22:21

Обращение к элементу строки в C#

в форуме Информатика и Компьютерные науки

vulpes

2

629

26 фев 2018, 22:11

Одновременно преобразовывать строки и столбцы

в форуме Аналитическая геометрия и Векторная алгебра

Kriteriy Silvestra

10

480

05 янв 2021, 14:35

Как удалить столбец в Екселе

в форуме Microsoft Excel

Ashoka

0

528

15 сен 2021, 16:20

Спам в теме - удалить

в форуме Предложения, Замечания, Обратная связь

Nataly-Mak

3

419

06 окт 2022, 07:45

Как адрес номера строки взять из ячейки?

в форуме Microsoft Excel

Talanov

10

1290

20 окт 2015, 16:12

Как заставить сайт удалить оскорбительные мемы?

в форуме Размышления по поводу и без

Xenia1996

11

620

27 сен 2020, 00:14

Задача: Найти длину строки. Нормальный алгоритм Маркова

в форуме Информатика и Компьютерные науки

Faserty]

2

80

25 окт 2023, 12:16


Часовой пояс: UTC + 3 часа [ Летнее время ]



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2023 MathHelpPlanet.com. All rights reserved