С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 24.03.2024
Сообщений: 4
1

Удаление из строки слов, где менее 3-х букв

24.03.2024, 14:47. Показов 520. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужен максимально простой код, который будет из строки удалять слова, где менее 3-х букв, если возможно. Я написала вот это, но выводит таким образом только первое слово, дальше после пробела не проверяет...

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
#include <iostream>
#include <cstring>
#include <string>
using namespace std;
 
int main()
{
   int i;
   string str = " ";
   string str_slovo= " ";
   string str_itog = " ";
   cout<< "Введите строку(только буквы и пробелы): ";
   cin>>str;
   for (i=0; i<=str[i]; i++)
   {
      if (str[i] != ' ')
        str_slovo.push_back(str[i]);
      else
        continue;
   }
   if (str_slovo.length() >= 3) 
       str_itog += str_slovo;
   cout << "Результат: " << str_itog;
   return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.03.2024, 14:47
Ответы с готовыми решениями:

Удалить из строки с наибольшим количеством слов все слова, состоящие менее чем 3 букв
Удалить из строки с наибольшим количеством слов удалить все слова состоящие менее чем 3 букв, во...

Даны 6 слов нужно чтоб из этих 6 слов были распечатаны слова с менее 5 букв
Помогите пожалуйста вот такая проблемка Даны 6 слов нужно чтоб из этих 6 слов были распечатаны...

Файлы (копирование содержимого, файла; инвертирование строки, подсчет количеств чисел; удаление слов, начинающиеся с гласных букв)
Нужно написать программу, которая копирует содержимое входного файла в выходной; инвертирует...

Определить количество слов состоящих из менее 5 букв
Написать программу, которая считывает текст из файла и определяет, сколько в нем слов состоящих из...

Определить количество слов состоящих из менее 5 букв
Написать программу, которая считывает текст из файла и определяет, сколько в нем слов состоящих из...

6
Модератор
Эксперт С++
13710 / 10910 / 6476
Регистрация: 18.12.2011
Сообщений: 29,133
24.03.2024, 14:57 2
Лучший ответ Сообщение было отмечено Annsti как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
#include <clocale>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Rus");
    string str,str_slovo,str_itog;
    cout<< "Введите строку:\n";
    while( cin>>str_slovo)
    {
        str += (str_slovo + ' ');
        if (str_slovo.length() >= 3) 
            str_itog +=  (str_slovo + ' ');
        if(cin.get()=='\n')
            break;
    }
    cout << "Введено: " << str<<'\n';
    cout << "Результат: " << str_itog;
    cin.get();
    return 0;
}
1
1053 / 647 / 96
Регистрация: 10.03.2012
Сообщений: 4,336
24.03.2024, 15:09 3
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
#include <iostream>
#include <string>
#include <sstream>
 
int main() {
    std::string input;
    std::cout << "Введите строку: ";
    std::getline(std::cin, input);
 
    std::istringstream iss(input);
    std::string word;
    std::string result;
 
    while (iss >> word) {
        if (word.length() >= 3) {
            result += word + " ";
        }
    }
 
    if (!result.empty()) {
        result.pop_back(); 
    }
 
    std::cout << result << std::endl;
 
    return 0;
}
1
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
24.03.2024, 16:15 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <ranges>
#include <string>
#include <string_view>
int main()
{
    std::string line;
    std::cout << "Введите строку: ";
    std::getline(std::cin, line);
    for (auto word : std::views::split(line, std::string_view(" ")) |
                           std::views::filter([](auto const &word)
                                              { return word.size() > 2; }))
        std::cout << std::string_view(word) << ' ';
    std::cout << std::endl;
}
1
3718 / 2647 / 761
Регистрация: 29.06.2020
Сообщений: 9,800
24.03.2024, 16:33 5
Цитата Сообщение от zayats80888 Посмотреть сообщение
C++
1
std::views::split
Мммм, сахарок от С++ 20
1
1507 / 917 / 257
Регистрация: 30.06.2015
Сообщений: 4,819
Записей в блоге: 54
25.03.2024, 13:03 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
#include <iostream>
#include <string> 
#include <cstddef> 
 
int main ()
{
  std::string str (" n bb the globe in this by m");
  str.append(" ");
  std::size_t bg =0, en=0, n=0;
   std::cout << str << '\n';
  while (1)
  {
    bg=str.find_first_not_of(" ,.", bg);
    if(bg==std::string::npos)break; bg+=1;
    en=str.find_first_of(" ,.", bg);
    if(en==std::string::npos){break; }
    en-=1;
    n=en-bg-1+3;
    if(n<3){ str.erase(bg-1,n); continue;}
    bg=en+1;
  }
  str.erase(str.length()-1);
  std::cout << str;
  return 0;
}
1
844 / 647 / 323
Регистрация: 24.02.2017
Сообщений: 2,288
25.03.2024, 18:46 7
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
#include <iostream>
#include <sstream>
 
int main(){
    std::string s = " n bb the globe in this by m",w;
    std::stringstream t,str;
    size_t i = 0,l= s.length();
 
    t << s;
    while (i<l) {
        if (s[i] == ' ') {
            str << ' '; 
            i++; 
        }
        if (s[i] != ' ') {
            t >> w;
            if (w.length() < 3)i += w.length();
            if (w.length() > 2) {
        
                str << w; i += w.length();
            } 
        }  
    }
    s=str.str();
    std::cout <<s;
}
1
25.03.2024, 18:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.03.2024, 18:46
Помогаю со студенческими работами здесь

Определить слова с 5 или менее букв в массиве с 6 слов
Помогите пожалуйста. Определить слова с 5 или менее букв в массиве с 6 слов Вот Пример типо из...

Дан текст, состоящий не менее чем из пяти слов. Определить процентное соотношение в нем коротких слов (длиной менее четы
Дан текст, состоящий не менее чем из пяти слов. Определить процентное соотношение в нем коротких...

Удаление из строки одинаковых парных букв и сложение всех оставшихся букв из строки
Добрый день уважаемые программисты! Помогите составить код, который из строки состоящей из...

Подсчитать количество слов которые содержат не менее двух букв с
Заданная строка, которая состоит из слов, разделенным одним или несколькими пропусками. Подсчитать...

Подсчитать количество слов которые содержат не менее двух букв с
Заданная строка , состоящая из слов , разделенным одним или несколькими пробелами. Подсчитать...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru