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

Вывести строку, содержащую слова исходной строки, но в обратном порядке

17.05.2017, 21:38. Просмотров 679. Ответов 12
Метки нет (Все метки)

Помогите доработать задачу, пожалуйста.
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
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string word = "Privet mirrr";
    string word1;
    string word2;
    int n, i, j;
    for (i = 0; i < word.size(); i++)
    {
        n = word.find(" ");
        word1 = word.substr(0, i);
    }
    for (j = word.size(); j < word1.size(); j--)
    {
        n=word.find(" ");
        word2 = word.substr(j, i);
    }
    cout << word2 << "  " << word1;
    system("pause");
    return 0;
}
Вот у меня вот так получилось, но компелятор ругается. Срочно, заранее спасибо

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

Вывести строку, содержащую эти же слова, но расположенные в обратном порядке. Записать полученную строку в другой файл
Доброго времени суток! Крайне необходима помощь экспертов в С++! Кто может -...

Вывести строку, содержащую эти же слова, разделенные одним пробелом и расположенные в обратном порядке
Здравствуйте. можете прокомментировать эту программу? #include &quot;stdafx.h&quot;...

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

Сформировать новую строку, в которой слова исходной будут следовать в обратном порядке
Нужна срочно ваша помощь...Не могу написать код для следующей задачи: &quot;Задан...

Вывести строку, содержащую те же символы, но расположенные в обратном порядке.
Ввод и вывод строк осуществлять, используя функции gets и puts. При...

12
SaynorPRO
10 / 10 / 5
Регистрация: 05.10.2016
Сообщений: 119
17.05.2017, 21:43 #2
w0rst1337, нужно именно доработать? Ты либо идею свою объясняй, либо я просто своим способом её решу тебе.
1
повар1
170 / 148 / 133
Регистрация: 24.02.2017
Сообщений: 588
Завершенные тесты: 1
17.05.2017, 21:49 #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
#include <iostream.h>
#include <string>
 
int main()
{
string stroka="Privet    mirrr    inoi";
char *p,s[80];
 
strcpy(s,stroka.c_str());
stroka.clear();
strcpy(s,strrev(s));
p = strtok(s," ");
stroka+=strrev(p);
 
do{
    p = strtok('\0'," ");
    if(p)
     {
       stroka+=" ";
       stroka+=strrev(p);
      }
  
} while(p);
cout<<stroka;
 
system("pause>NUL");
    return 0;
}
0
w0rst1337
0 / 0 / 0
Регистрация: 17.05.2017
Сообщений: 10
17.05.2017, 22:10  [ТС] #4
Спасибо за помощь!!!!!!!!!!!!!!!!!!! <3

Добавлено через 4 минуты
Компелятор ошибку выдает Не мог бы своим решение скинуть?
0
w0rst1337
0 / 0 / 0
Регистрация: 17.05.2017
Сообщений: 10
17.05.2017, 22:22  [ТС] #5
Дана строка, состоящая из русских слов разделенных пробелами(одним или несколькими). Вывести строку, содержащую эти же слова, разделенные 1-им пробелом, в обратном порядке
Задача. Мне пытались помочь. Но задача не работает.

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
#include <iostream.h>
#include <string>
 
int main()
{
string stroka="Privet    mirrr    inoi";
char *p,s[80];
 
strcpy(s,stroka.c_str());
stroka.clear();
strcpy(s,strrev(s));
p = strtok(s," ");
stroka+=strrev(p);
 
do{
    p = strtok('\0'," ");
    if(p)
     {
       stroka+=" ";
       stroka+=strrev(p);
      }
  
} while(p);
cout<<stroka;
 
system("pause>NUL");
    return 0;
}
0
повар1
170 / 148 / 133
Регистрация: 24.02.2017
Сообщений: 588
Завершенные тесты: 1
17.05.2017, 22:48 #6
попробуй так:

C++
1
2
3
#include <iostream>
#include <string>
using namespace std;
1
w0rst1337
0 / 0 / 0
Регистрация: 17.05.2017
Сообщений: 10
17.05.2017, 22:49  [ТС] #7
Я так и изменил сразу. Ругается на strcpy(s,stroka.c_str());
0
повар1
170 / 148 / 133
Регистрация: 24.02.2017
Сообщений: 588
Завершенные тесты: 1
17.05.2017, 22:54 #8
попробуй набрать
C++
1
stroka.
и найти перевод стринг в чар
0
w0rst1337
0 / 0 / 0
Регистрация: 17.05.2017
Сообщений: 10
17.05.2017, 22:55  [ТС] #9
Извини, не совсем тебя понял, не мог бы уточнить, пожалуйста?
0
SaynorPRO
10 / 10 / 5
Регистрация: 05.10.2016
Сообщений: 119
17.05.2017, 22:58 #10
Лучший ответ Сообщение было отмечено w0rst1337 как решение

Решение

w0rst1337, вот полностью рабочая версия, если надо.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <string>
#include <cstdlib>
 
using namespace std;
 
int main() {
  setlocale(LC_ALL,"ru-RU");
  string str, ans;
  getline(cin, str);
  str.insert(0, " ");
  int start = str.length() - 1;
  for (int i = str.length() - 1; i >= 0; i--) {
    if (str[i] == ' ') {
      ans += str.substr(i + 1, start - i) + ' ';
      start = i - 1;
    }
  }
  cout << ans << endl;
  system("pause");
  return 0;
}
1
повар1
170 / 148 / 133
Регистрация: 24.02.2017
Сообщений: 588
Завершенные тесты: 1
17.05.2017, 23:00 #11
набери
C++
1
strcpy(s,stroka.
и в выпавшем окошке найди что-то типа
C++
1
 c_str()
0
w0rst1337
0 / 0 / 0
Регистрация: 17.05.2017
Сообщений: 10
17.05.2017, 23:00  [ТС] #12
Спасибо
0
nmcf
6265 / 5575 / 2534
Регистрация: 14.04.2014
Сообщений: 23,468
17.05.2017, 23:15 #13
Замени.
C++
1
2
//strcpy(s,strrev(s));
strrev(s);
0
17.05.2017, 23:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2017, 23:15

Вывести строку, содержащую слова, разделенные одним пробелом и расположенные в алфавитном порядке
Дана строка, состоящая из русских слов, набранных заглавными бук-вами и...

Вывести строку, содержащую слова, разделенные одним пробелом и расположенные в алфавитном порядке
Дана строка, состоящая из русских слов, набранных заглавными буквами и...

Вывести строку, содержащую слова, разделенные одним пробелом и расположенные в алфавитном порядке
Дана строка, набранная из слов, набранных заглавными буквами и разделенных...


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

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

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