Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
maxpayn
0 / 0 / 0
Регистрация: 02.08.2011
Сообщений: 6
#1

Преобразовать строку: удалить все символы '*' - C++

24.12.2011, 21:45. Просмотров 424. Ответов 4
Метки нет (Все метки)

не могу придумать как решить задачу, помогите плз

C++
1
Преобразовать строку: удалить все символы '*'. Вывести в алфавитном порядке все согласные латинские буквы, не входящие в строку
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2011, 21:45     Преобразовать строку: удалить все символы '*'
Посмотрите здесь:

C++ Удалить из строки все повторяющиеся символы
C++ Удалить из строки s1 все символы, встречающиеся в строке s2.
C++ Преобразовать строку, удалив из неё все символы, не являющиеся буквами или цифрами
Удалить из строки все числовые символы C++
Обработка строк. Преобразовать строку, удалив из нее все символы, не являющиеся буквами или цифрами C++
Преобразовать строку символов, удалив из нее все символы, не являющиеся буквами C++
Преобразовать строку, удалив из нее все символы, не являющиеся буквами или цифрами C++
Преобразовать строку таким образом, чтобы все символы в ней были напечатаны наоборот C++
Преобразовать строку, заменив все двоеточия точками, все восклицательные знаки - вопросительными C++
Удалить символы и перезаписать строку C++
C++ Ввести строку. Создать другую строку удалив из введенной все символы "$"
C++ После символа '/' преобразовать все символы к верхнему регистру

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
24.12.2011, 22:01     Преобразовать строку: удалить все символы '*' #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <algorithm>
#include <string>
#include <iterator>
#include <set>
int main()
{
    std::string Line( "qwert** erwr8*re wer8* ** *wrwe" ), letters( "QqWwRrTtPpSsDdFfGgHhJjKkLlZzXxCcVvBbNnMm" );
    
    Line.erase( std::remove( Line.begin(), Line.end(), '*' ), Line.end() );
    std::cout << Line << std::endl;
 
    std::set < char > CharSet( letters.begin(), letters.end() );
    for ( size_t index = 0; index < Line.size(); index++ )
        if ( letters.find( Line[ index ] ) != std::string::npos )
            CharSet.erase( Line[ index ] );
 
    std::copy( CharSet.begin(), CharSet.end(), std::ostream_iterator < char >( std::cout, " " ) );
 
    return 0;    
}
maxpayn
0 / 0 / 0
Регистрация: 02.08.2011
Сообщений: 6
24.12.2011, 22:02  [ТС]     Преобразовать строку: удалить все символы '*' #3
спасибо
go
Эксперт C++
3584 / 1364 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
24.12.2011, 22:13     Преобразовать строку: удалить все символы '*' #4
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
#include <iostream>
#include <cstring>
 
#define CH '*'
 
using namespace std;
 
void del ( char *s)
{
   if ( s ) {
      char *t = s + 1;
   
      while ( *s++ = *t++ )
         ;
   }      
}      
 
int main ()
{
   char buf[]= "Hell**o * world*";
   char *p;
   char alpha[] = "wrtplkjhgfdszxcvbnm";
 
   for ( p = strchr (buf, CH) ; p ; p = strchr (buf, CH) )
      del (p);
      
   cout << buf << endl;
   
   for ( p = buf ; *p ; ++p )
      del (strchr (alpha, tolower(*p)));
   
   for ( p = alpha ; *p ; ++p )
      cout << *p;
   
   return 0;
}
Добавлено через 1 минуту
Mиxaил, а что W уже не согласный??? регистр не имеет значения.
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
24.12.2011, 22:34     Преобразовать строку: удалить все символы '*' #5
go, ну да, нужно было также опускать регистры. Ну да ладно...
Yandex
Объявления
24.12.2011, 22:34     Преобразовать строку: удалить все символы '*'
Ответ Создать тему
Опции темы

Текущее время: 11:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru