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

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

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

Разбить исходную строку на две подстроки - C++

27.03.2014, 19:31. Просмотров 1046. Ответов 7
Метки нет (Все метки)

Здравствуйте форумчане, пытаюсь решить задание с использованием строк, но не выходит. Учителя временно нету, хотелось бы услышать ваш совет.
 Комментарий модератора 
Задания надо переписывать в тело сообщения!
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2014, 19:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Разбить исходную строку на две подстроки (C++):

Разбить исходную строку на две подстроки, причем первая длиной k символов - C++
Дана строка, состоящая из слов, разделенных пробелами. Разбить исходную строку на две подстроки, причем первая длиной k ...

нужно разбить исходную строку на две подстроки , причём первая длинной k - C++
Вообщем нужно разбить исходную строку на две подстроки , причём первая длинной k. Вот код который я написал: #include <iostream.h> ...

Разбить исходную строку на максимальной длины подстроки - C++
Дана строка, состоящая из слов, разделённых одним пробелом. Разработайте программу, которая разбивает исходную строку на максимальной...

Разбить строку на все "связные" подстроки. Получившиеся подстроки записать в вектор - C++
Нужно разбить минимальную строку на "связные" подстроки Например: строка Mas: "qwe" нужны подстроки: "q","w","e","qw","we","qwe"....

Разбить строку string на подстроки - C++
Имеется строка string "один два три четыре пять шесть семь восемь девять". Как ее разбить на подстроки из трех слов, чтоб получились...

Разделить строку на две подстроки. - C++
Доброго времени суток.. В задании необходимо разбить исходную строку на две подстроки, при этом первая длиной k символов (если на k-ю...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
STRj
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 32
28.03.2014, 11:19  [ТС] #2
Дана строка символов, состоящая из произвольного текста, слова разделены пробелами. Разбить исходную строку на две подстроки, причем первая длиной k символов (если k-ю позицию попадает слово, то его следует отнести ко второй строке.)
0
aLarman
642 / 563 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
28.03.2014, 11:51 #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
28
29
30
31
32
33
34
35
36
int main(int argc, char* argv[])
{
    std::string str = "asdfasdgfds dsgads gdas ghadfs hads";
    int k = 0;
    cin>>k;
    
    int pos = k;
    if(k < str.length() && str[k-1] != ' ')
    {
        for(int i = k-1; i >=0; i--)
        {
            if(str[i] == ' ')
            {
                break;
            }
            else
            {
                pos --;
            }
        }
    }
    std::string sub1, sub2;
    if(pos < str.length())
    {
        sub1 = str.substr(0, pos);
        sub2 = str.substr(pos, str.length());
    }
    else
    {
        sub1 = str;
    }
    cout<<sub1<<endl;
    cout<<sub2<<endl;
    system("pause");
    return 0;
}
1
STRj
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 32
29.03.2014, 12:42  [ТС] #4
aLarman, а возможно другое решение? Не используя length,pos.
0
aLarman
642 / 563 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
29.03.2014, 17:19 #5
ну со стрингом можно работать как с массивом, можно руками искать все и копировать из 1ой строки в другие
0
STRj
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 32
05.04.2014, 16:11  [ТС] #6
Задача актуальна.
0
IrineK
Заблокирован
05.04.2014, 16:16 #7
Дайте свое решение или хотя бы наброски, чтобы можно было понять как вам помочь.
1
-=ЮрА=-
Заблокирован
Автор FAQ
05.04.2014, 16:26 #8
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от STRj Посмотреть сообщение
а возможно другое решение? Не используя length,pos.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <string>
#include <sstream>
#include <iostream>
using namespace std;
 
int main()
{
    string str = "word1 word2 word3";
    stringstream ss(str);
    while(ss>>str)
        cout<<str<<endl;
    return 0;
}
http://codepad.org/DKSNigcH
Output:
word1
word2
word3
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.04.2014, 16:26
Привет! Вот еще темы с ответами:

Мне надо сделать поиск последнего вхождения подстроки s1 в строку s(с функцией LastPos, не strstr). В этом коде просто вхождение подстроки в строку. - C++
#include &lt;stdio.h&gt; int count_of_substrings(string s, string s1){ int start = 0; int count = 0; int pos = 0; ...

Написать функцию, которая формирует строку, состоящую только из цифр, входящих в исходную строку - C++
Нужна помощь задачу нужно написать в консольном режиме Написать и протестировать функцию, которая по заданной строке str формирует...

Разделить исходную строку на несколько строк длины K - C++
Помогите пожалуйста: Разделить исходную строку на несколько строк длины K.

Сложение строк затирает исходную строку сначала, что делать? - C++
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;cstring&gt; #include &lt;string&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
05.04.2014, 16:26
Ответ Создать тему
Опции темы

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