Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Nasty zzz
0 / 0 / 1
Регистрация: 08.12.2011
Сообщений: 44
#1

Вычеркнуть из слова все гласные буквы

09.12.2011, 22:32. Просмотров 1640. Ответов 16
Метки нет (Все метки)

помогите решить задачу со строками
"Вычеркнуть из слова все гласные буквы."

(желательно масивом и без функции.
плохо то что нет как на ТП delet или cut)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2011, 22:32
Ответы с готовыми решениями:

Вычеркнуть из данного текста все гласные буквы
13. Составьте алгоритм (программу), вычеркивающий из данного текста все гласные...

Вычеркнуть из слова все буквы "я",стоящие на честных местах
Вычеркнуть из слова все буквы "я",стоящие на честных местах

Вычеркнуть из слова буквы ж, ч, ш, щ
вычеркнуть из слова буквы ж, ч, ш, щ

Дана строка. Вычеркнуть из нее все русские заглавные буквы
Помогите составить код задачи: дана строка. Вычеркнуть из нее все русские...

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

16
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
09.12.2011, 22:40 #2
Цитата Сообщение от Nasty zzz Посмотреть сообщение
плохо то что нет как на ТП delet или cut)
http://cplusplus.com/reference/clibrary/cstring/memmove/
http://cplusplus.com/reference/string/string/erase/

Ну еще вариант, простой для понимания, но, говорят, есть опасность использования
C
1
strcpy (&s[1],&s[2]); // Udalyaem vtory simvol
0
fasked
Эксперт С++
4981 / 2560 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
09.12.2011, 22:42 #3
Не проще ли второй массив использовать?
0
easybudda
Модератор
Эксперт CЭксперт С++
10051 / 5971 / 1491
Регистрация: 25.07.2009
Сообщений: 11,303
10.12.2011, 02:25 #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <string.h>
 
#define isvowel(ch) ( strchr("AaEeIiOoUuYy", (ch)) )
 
int main(void){
    char buf[BUFSIZ];
    
    while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' ){
        char * pIn, * pOut;
        
        for ( pIn = pOut = buf; *pIn; ++pIn )
            if ( ! isvowel(*pIn) )
                *pOut++ = *pIn;
        *pOut = '\0';
        
        printf("Result: %s", buf);
    }
    
    return 0;
}
1
Nasty zzz
0 / 0 / 1
Регистрация: 08.12.2011
Сообщений: 44
10.12.2011, 23:33  [ТС] #5
а возможно без функции
0
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
10.12.2011, 23:47 #6
Цитата Сообщение от Nasty zzz Посмотреть сообщение
а возможно без функции
Ага, но много писать

easybudda, а Вы, как обычно, только новичек 100% не поймет Ваш код, раз сам не сумел сделать
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
11.12.2011, 10:23 #7
Опять же замечу, что можно прописать алгоритм сложностью m+n, где m - количество гласных букв, n - длина строки
0
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
11.12.2011, 11:16 #8
Thinker, можете рассказать, хотелось бы узнать (гласных ведь не 1 штука, а целая строка, и по-любому на каждом шаге итерации мы будем проходить n раз по строке с гласными, что и делает strchr)...
0
alkagolik
Заблокирован
11.12.2011, 12:14 #9
сделаю за n
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
11.12.2011, 12:26 #10
Цитата Сообщение от go Посмотреть сообщение
Thinker, можете рассказать, хотелось бы узнать (гласных ведь не 1 штука, а целая строка, и по-любому на каждом шаге итерации мы будем проходить n раз по строке с гласными, что и делает strchr)...
Технология такая же, как и здесь
http://www.cyberforum.ru/showthread.php?p=2231215

Добавлено через 46 секунд
Цитата Сообщение от alkagolik Посмотреть сообщение
сделаю за n

Не по теме:

Не верю!!!;D Мой алгоритм имеет минимальную сложность:cofee2:

0
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
11.12.2011, 12:33 #11
Thinker,
Цитата Сообщение от go Посмотреть сообщение
гласных ведь не 1 штука, а целая строка, и по-любому на каждом шаге итерации мы будем проходить n раз по строке с гласными, что и делает strchr)...
Все равно не верю
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
11.12.2011, 12:35 #12
Цитата Сообщение от go Посмотреть сообщение
Все равно не верю
А вы разобрали ту задачу?
1
alkagolik
Заблокирован
11.12.2011, 12:41 #13

Не по теме:

Не верю!!!;D Мой алгоритм имеет минимальную сложность:cofee2:

правильно делаете

Добавлено через 1 минуту
n + m можно в вариантах
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
11.12.2011, 12:43 #14
Цитата Сообщение от alkagolik Посмотреть сообщение
n + m можно в вариантах
Это да, но сложность минимальная, меньше уже нельзя
0
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
11.12.2011, 12:45 #15
Thinker, а ну да, просто забыл, что одинаковых символов в строке не будет Спасибо.
0
alkagolik
Заблокирован
11.12.2011, 12:48 #16
Цитата Сообщение от go Посмотреть сообщение
а ну да, просто забыл, что одинаковых символов в строке не буде
даже если и будет. сложность n + m
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
11.12.2011, 12:50 #17
Цитата Сообщение от alkagolik Посмотреть сообщение
даже если и будет. сложность n + m
Это правда. Алгоритм это игнорирует, просто m будет содержать лишнее число шагов, не более того
0
11.12.2011, 12:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2011, 12:50

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

В тексте найти слова, начинающиеся и оканчивающиеся на гласные буквы. dev c++
ввод текса в самой программе, а не в текстовом документе. помогите пожалуйста

Массив строки. Удалить с масива слова которые заканчиваються на гласные буквы
Нужно удалить с масива слова которые заканчиваються на гласные буквы.....


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

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

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