Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
ValeriaS
0 / 0 / 0
Регистрация: 08.04.2016
Сообщений: 30
#1

Дан массив слов .Добавить в конец каждого слова по k символов ,совпадающим с первым символов слова

19.02.2017, 03:42. Просмотров 878. Ответов 1

Дан массив слов .Добавить в конец каждого слова по k символов ,совпадающим с первым символом слова . Удалить из всех слов цифры . Сформировать предложения из слов , в которых 3 первых символа совпадают с 3-мя последними символами ,взятыми в обратном порядке , упорядочив слова в предложении по убыванию количества символов в слове .
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2017, 03:42
Ответы с готовыми решениями:

Копирование из строки слов без слова с указанным номером в другую строку(массив символов)
Добрый день. Нужно написать программу которая копирует из строки слова в другую строку,без слова с...

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

После 1-го символа каждого слова вставить последовательность символов
Раздвинуть заданный текст, вставив введенную с клавиатуры последовательность символов после 1-го...

дан текст состоящий из символов сформировать из него два слова
дан текст состоящий из символов сформировать из него два слова ,первое состоит из символов...

Задан текст. Вставить заданную последовательность символов после i символа каждого слова
Программа есть ,но она выводит символ после первого символа.Помогите исправить пожалуйста ....

1
Peoples
1339 / 832 / 747
Регистрация: 06.02.2016
Сообщений: 2,214
Записей в блоге: 17
Завершенные тесты: 4
19.02.2017, 11:20 #2
Лучший ответ Сообщение было отмечено ValeriaS как решение

Решение

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
38
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <iterator>
#include <set>
#include <functional>
using namespace std;
 
struct comp {
    public:
        bool    operator ()(const string &a, const string &b )const {
            return a.length()>b.length();
        }
};
 
int main() {
 
    vector<string>v {"If", "you", "w1nna", "mmmake", "enemi3s", "tttry", "to", "change", "something"};
    int k;
    cin>>k;
    transform(v.begin(),v.end(),v.begin(),[&k](const string &s) {
        return s+string(k,s.front());
    });
    copy(v.cbegin(),v.cend(),ostream_iterator<string>(cout," "));
    cout<<endl;
    for_each(v.begin(),v.end(),[](string &s) {
        s.erase(remove_if(s.begin(),s.end(),::isdigit),s.end());
    });
    copy(v.cbegin(),v.cend(),ostream_iterator<string>(cout," "));
    multiset<string,comp>sal;
    copy_if(v.cbegin(),v.cend(),inserter(sal,sal.begin()),[](const string &s) {
        return string(s.begin(),s.begin()+3)==string(s.rbegin(),s.rbegin()+3);
    });
    cout<<endl;
    copy(sal.begin(),sal.end(),ostream_iterator<string>(cout," "));
    return 0;
}
Добавлено через 5 минут
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
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <iterator>
#include <set>
#include <functional>
using namespace std;
function <bool(string,string)> fn=[](const string &a,const string &b){
    return a.length()>b.length();
};
int main() {
 
    vector<string>v {"If", "you", "w1nna", "mmmake", "enemi3s", "tttry", "to", "change", "something"};
    int k;
    cin>>k;
    transform(v.begin(),v.end(),v.begin(),[&k](const string &s) {
        return s+string(k,s.front());
    });
    copy(v.cbegin(),v.cend(),ostream_iterator<string>(cout," "));
    cout<<endl;
    for_each(v.begin(),v.end(),[](string &s) {
        s.erase(remove_if(s.begin(),s.end(),::isdigit),s.end());
    });
    copy(v.cbegin(),v.cend(),ostream_iterator<string>(cout," "));
    multiset<string,function <bool(string,string)>>sal(fn);
    copy_if(v.cbegin(),v.cend(),inserter(sal,sal.begin()),[](const string &s) {
        return string(s.begin(),s.begin()+3)==string(s.rbegin(),s.rbegin()+3);
    });
    cout<<endl;
    copy(sal.begin(),sal.end(),ostream_iterator<string>(cout," "));
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2017, 11:20

Дан текст, содержащий от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв. Напечатать все слова, отличные от последнего слова
дан текст, содержащий от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв, между...

Расположить слова в массиве символов в алфавитном порядке по первой букве слова
Введите массив символов из 14 элементов. Расположить слова в алфавитном порядке по первой букве...

Разработать функцию, которая меняет слова, содержащие заданную комбинацию символов, на соответствующее количество символов #
Разработать функцию, которая меняет в предложении все слова, содержащие заданную комбинацию...


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

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

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