Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
СергейАС
1 / 1 / 3
Регистрация: 02.02.2012
Сообщений: 73
1

Реверсирование строк

03.10.2012, 15:12. Просмотров 604. Ответов 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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include "stdafx.h"
#include <fstream>
#include <iterator>
#include <vector>
#include <string>
#include <algorithm>
 
using namespace std;
 
bool Mycompare ( string elem1, string elem2 )
{
    return elem1 > elem2;
}
 
 
int main(int argc, char* argv[])
{
  ifstream c("input.txt");
  ofstream d("output1.txt");
  vector<string> aa;
  char ee[255];
 
//input
  if (c.is_open()) {
    while(!c.eof()) {
      c.getline(ee, 254);
      aa.push_back(ee);
    }
//    sort
    sort(aa.begin(), aa.end(), Mycompare);
    
//output
//  for (unsigned int j=0; j<aa.size(); j++) dd<<aa[j].c_str()<<endl;
    for (vector<string>::iterator j=aa.begin(); j!=aa.end(); j++) 
        d<<(*j).c_str()<<endl;
  }
  c.close();
  d.close();
 
    return 0;
}
Сортировка работает нормально, а вот как реверсировать строки не знаю. Помогите пожалуйста!!!
Нужно использовать vector.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2012, 15:12
Ответы с готовыми решениями:

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

Реверсирование
Помогите пожалуйста! Задача Реверсировать число и увеличить его в 2 раза.

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

Объединение и реверсирование
Всем привет! Помогите пожалуйста с программой. Необходимо написать реверсирование строки, используя...

Реверсирование строки
может ошибки где есть? .data stroka db 'stroka',0 len equ $-stroka stdout DWORD ? cWritten...

7
ForEveR
В астрале
Эксперт С++
8007 / 4764 / 654
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
03.10.2012, 15:13 2
СергейАС, std::reverse.
0
СергейАС
1 / 1 / 3
Регистрация: 02.02.2012
Сообщений: 73
03.10.2012, 15:14  [ТС] 3
А как она работает?
0
ForEveR
В астрале
Эксперт С++
8007 / 4764 / 654
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
03.10.2012, 15:14 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
38
39
40
41
42
43
44
#include "stdafx.h"
#include <fstream>
#include <iterator>
#include <vector>
#include <string>
#include <algorithm>
 
using namespace std;
 
bool Mycompare ( string elem1, string elem2 )
{
    return elem1 > elem2;
}
 
 
int main(int argc, char* argv[])
{
  ifstream c("input.txt");
  ofstream d("output1.txt");
  vector<string> aa;
  char ee[255];
 
//input
  if (c.is_open()) {
    while(!c.eof()) {
      c.getline(ee, 254);
      aa.push_back(ee);
    }
//    sort
    sort(aa.begin(), aa.end(), Mycompare);
    
//output
//  for (unsigned int j=0; j<aa.size(); j++) dd<<aa[j].c_str()<<endl;
    for (vector<string>::iterator j=aa.begin(); j!=aa.end(); j++)
    {
        std::reverse(j->begin(), j->end());
        d<< *j <<endl;
    }
  }
  c.close();
  d.close();
 
    return 0;
}
1
03.10.2012, 15:14
СергейАС
1 / 1 / 3
Регистрация: 02.02.2012
Сообщений: 73
03.10.2012, 15:15  [ТС] 5
Круто!!! Спасибо большое!!!
0
Кот Ангенс
318 / 268 / 128
Регистрация: 24.05.2012
Сообщений: 629
03.10.2012, 15:17 6
Цитата Сообщение от ForEveR Посмотреть сообщение
C++
1
bool Mycompare ( string elem1, string elem2 )
Так ведь строки копироваться будут, разве нет?
0
СергейАС
1 / 1 / 3
Регистрация: 02.02.2012
Сообщений: 73
03.10.2012, 15:19  [ТС] 7
Ну вроде работает нормально
0
ForEveR
В астрале
Эксперт С++
8007 / 4764 / 654
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
03.10.2012, 15:19 8
Кот Ангенс, В С++03 будут, в С++11 - смотря как передавать (ну это не учитывая copy-elision и прочие плюхи). Я просто не стал править код автора.)
0
03.10.2012, 15:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.10.2012, 15:19

реверсирование строки
Помогите написать программу реверсирования строки, т.е. замены прядка следования символов в строке...

Реверсирование каждой буквы
Здравствуйте! Как мне реверсировать каждую букву в Windows Form? Имеется два textBox'а, моя задача...

Проверка и реверсирование списка
Проверяем подсписок на элементы с d по k, если таковые имеются, то выводим реверсированный список,...


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

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

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