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

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

Войти
Регистрация
Восстановить пароль
 
vadiprog
2 / 2 / 0
Регистрация: 06.11.2011
Сообщений: 108
#1

Удалить из строки слова, которые оканчиваются на гласную - C++

07.04.2012, 22:14. Просмотров 816. Ответов 3
Метки нет (Все метки)

Удалить из заданой строки все слова оканчивающиеся на гласную букву. Напишите пожалуйста!

Добавлено через 1 час 56 минут
Вот программа которая удаляет слова у которых в конце ан... может ктото переделать её на то чтобы удаляло слова которые оканчиваются на гласную, или же просто переделайте на то чтобы вводилась с консоли строка


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
#include <iostream>
#include <string>
#include <iomanip>
 #include <cstdlib>
using namespace std;
 
int main(){
    char str[]="history of American people ";
    int i,k;
    i=k=0;  
    for(; i!=sizeof(str); i++){
        if(str[i]=='a' && str[i+1]=='n'){ 
            break;
        }
    }
        if(str[i]=='a'){
            for(;str[i]!=32 && i!=-1; i--);
            k = i+1;    
            for(i++;str[i]!='\0' && str[i]!=32;i++);        
            //cout<<"str[i]="<<str[i]<<i<<"\n";
            if(str[i]!='\0'){
                for(;str[i]!='\0';i++,k++){     
                    str[k]=str[i];
                }
            }str[k]='\0';
             
            cout<<str<<"\n\n";
        }   
        system("PAUSE");
        return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2012, 22:14     Удалить из строки слова, которые оканчиваются на гласную
Посмотрите здесь:

Вывести все слова входного потока, которые оканчиваются заданным символом C++
C++ Удалить из строки все слова, которые начинаются на заглавную букву
Вывести слова, которые начинаются и оканчиваются одной и той же буквой C++
C++ Вывести из файла все слова, которые начинаются на гласную букву
Из строки распечатать только те слова, которые начинаются и оканчиваются одной и тоже буквой C++
Найти в строке те слова, которые начинаются и оканчиваются одной и той же буквой C++
Удалить из строки все слова, которые не являются идентификаторами C++
Вывести только те слова сообщения, которые начинаются и оканчиваются на заданную букву C++
Найти в строке слова, которые начинаются и оканчиваются одной и той же буквой C++
Вывести только те слова из строки, которые начинаются и оканчиваются на заданную букву C++
C++ Удалить из строки все слова, начинающиеся на гласную букву
C++ Удалить из текста все слова заканчивающиеся на гласную букву

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sergey-K
233 / 224 / 13
Регистрация: 27.10.2011
Сообщений: 249
08.04.2012, 00:03     Удалить из строки слова, которые оканчиваются на гласную #2
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 <string>
#include <iomanip>
#include <cstdlib>
using namespace std;
 
int main()
{
  string str = "Remove from the given string all words ending in a vowel letter";
  str += " ";
  char mas[] = "aeiouyAEIOUY";
  string tmp;
  string res;
  int length = str.length();
  for(int i = 0; i < length; i++)
    {
      if(str[i] != ' ')
        tmp += str[i];
      else
        {
          for(int j = 0; j < sizeof(mas); j++)
            if(tmp[tmp.length() - 1] == mas[j])
              {
                tmp = "";
                break;
              }
          res += tmp;
          if(tmp != "" && i != length - 1)
            res += " ";
          tmp = "";
        }
    }
  cout << res << "\n";
  system("pause");
  return 0;
}
vadiprog
2 / 2 / 0
Регистрация: 06.11.2011
Сообщений: 108
08.04.2012, 01:07  [ТС]     Удалить из строки слова, которые оканчиваются на гласную #3
Цитата Сообщение от Sergey-K Посмотреть сообщение
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 <string>
#include <iomanip>
#include <cstdlib>
using namespace std;
 
int main()
{
  string str = "Remove from the given string all words ending in a vowel letter";
  str += " ";
  char mas[] = "aeiouyAEIOUY";
  string tmp;
  string res;
  int length = str.length();
  for(int i = 0; i < length; i++)
    {
      if(str[i] != ' ')
        tmp += str[i];
      else
        {
          for(int j = 0; j < sizeof(mas); j++)
            if(tmp[tmp.length() - 1] == mas[j])
              {
                tmp = "";
                break;
              }
          res += tmp;
          if(tmp != "" && i != length - 1)
            res += " ";
          tmp = "";
        }
    }
  cout << res << "\n";
  system("pause");
  return 0;
}
Поменял начало на
string str;
cin>>str;

и когда ввожу строку то выводит только слова те что были до первого слова с последней гласной буквой...
Sergey-K
233 / 224 / 13
Регистрация: 27.10.2011
Сообщений: 249
08.04.2012, 01:50     Удалить из строки слова, которые оканчиваются на гласную #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
37
#include <iostream>
#include <string>
#include <iomanip>
#include <cstdlib>
using namespace std;
 
int main()
{
  string str;
  getline(cin, str);
  str += " ";
  char mas[] = "aeiouyAEIOUY";
  string tmp;
  string res;
  int length = str.length();
  for(int i = 0; i < length; i++)
    {
      if(str[i] != ' ')
        tmp += str[i];
      else
        {
          for(int j = 0; j < sizeof(mas); j++)
            if(tmp[tmp.length() - 1] == mas[j])
              {
                tmp = "";
                break;
              }
          res += tmp;
          if(tmp != "" && i != length - 1)
            res += " ";
          tmp = "";
        }
    }
  cout << res << "\n";
  system("pause");
  return 0;
}
Yandex
Объявления
08.04.2012, 01:50     Удалить из строки слова, которые оканчиваются на гласную
Ответ Создать тему
Опции темы

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