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

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

Войти
Регистрация
Восстановить пароль
 
Petar07
2 / 2 / 0
Регистрация: 11.10.2012
Сообщений: 99
#1

Вывод слов из предложения в обратном порядке - C++

13.04.2013, 00:14. Просмотров 757. Ответов 5
Метки нет (Все метки)

Есть некоторое предложение в файле, оно записывается в массив, показывается на экране, а затем нужно вывести слова в обратном порядке, не получается что то
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.04.2013, 00:14     Вывод слов из предложения в обратном порядке
Посмотрите здесь:

Вывод последовательности слов предложения в обратном порядке - C++
Суть задания - вывести на экран последовательность слов в предложении в обратном порядке. К примеру: вместо "Good day" вывести "day Good"....

Вывод предложения в обратном порядке С++ - C++
Надо сделать так что бы программа выводила слова из предложения в обратном порядке

Вывод слов в обратном порядке - C++
Всем привет. Мне нужно вывести слова в обратном порядке. У меня есть строка "cannot load data". нужно сделать так, что бы выводило "data...

Вывод слов из текста в обратном порядке - C++
Здраствуйте. Нужна помощь. Дали задание: есть текстовый файл, из него нужно вывести все слова в обратном порядке, причем за минимальное...

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

Печать предложения в обратном порядке - C++
Дано предложение в файле. Нужно вывести его в обратном порядке. Ребят, тут много тем с похожими вопросами, но того что надо не нашел,...

Вывести предложения в обратном порядке - C++
Файлы. Помогите, пожалуйста. Нужно написать программу, которая считывает текст из файла и выводит на экран все его предложения в...

Вывести предложения в обратном порядке - C++
Ребят помогите, как написать программу, чтобы при вводе предложений он выводил их в обратном порядке. Без текстового файла. Пример:...

Считать три предложения и вывести их в обратном порядке - C++
Программа , которая считывает три предложения и выводит их в обратном порядке. ребят помогите очень надо..

Считать из текстового файла 3 предложения и вывести их в обратном порядке - C++
Проблемка в проге, помогите разобраться)) написать программу, которая считывает из текстового файла 3 предложения и выводит их в обратном...

как выделить 3 первых предложения 1,2,3 и вывести их в обратном порядке 3,2,1 ? - C++
Ребят, нужно написать программу, которая считывает текст из файла и обрабатывает его. Обработку текстовой информации нужно организовать...

Считать в строку три предложения и вывести их в обратном порядке - C++
Считать в строку три предложения и вывести их в обратном порядке #include <conio.h> #include <stdio.h> #include <stdlib.h> #include...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
abit
260 / 259 / 33
Регистрация: 03.02.2013
Сообщений: 709
13.04.2013, 00:43     Вывод слов из предложения в обратном порядке #2
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
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
 
int main ()
{
            std::vector<std::string> words;
            
            std::ifstream filestr;
            filestr.open("myfile.txt");
            
            char c;
            std::string word;
            while (filestr.good())
            {
              c = filestr.get();
              if (!isspace(c))
                 word+=c;
              else
                  {
                     words.push_back(word);
                     word="";
                  }
            }
            
            for (std::vector<std::string>::iterator it = words.begin();
                 it != words.end(); ++it)
                 std::cout << *it << " ";
                 
            std::cout<<std::endl<<std::endl<<std::endl;
            
             for (std::vector<std::string>::reverse_iterator it = words.rbegin();
                 it != words.rend(); ++it)
                 std::cout << *it << " ";
                 
            std::cout<<std::endl;
            system("pause");
            return 0;
}
Petar07
2 / 2 / 0
Регистрация: 11.10.2012
Сообщений: 99
13.04.2013, 01:18  [ТС]     Вывод слов из предложения в обратном порядке #3
Я создал данный файл в каталоге программы но она не работает, выводит пустое окно, в файле запись сделал

Добавлено через 26 минут
Цитата Сообщение от abit Посмотреть сообщение
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
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
 
int main ()
{
            std::vector<std::string> words;
            
            std::ifstream filestr;
            filestr.open("myfile.txt");
            
            char c;
            std::string word;
            while (filestr.good())
            {
              c = filestr.get();
              if (!isspace(c))
                 word+=c;
              else
                  {
                     words.push_back(word);
                     word="";
                  }
            }
            
            for (std::vector<std::string>::iterator it = words.begin();
                 it != words.end(); ++it)
                 std::cout << *it << " ";
                 
            std::cout<<std::endl<<std::endl<<std::endl;
            
             for (std::vector<std::string>::reverse_iterator it = words.rbegin();
                 it != words.rend(); ++it)
                 std::cout << *it << " ";
                 
            std::cout<<std::endl;
            system("pause");
            return 0;
}
выводится пустое окно и все
yutr777
4 / 4 / 0
Регистрация: 07.04.2013
Сообщений: 85
13.04.2013, 01:18     Вывод слов из предложения в обратном порядке #4
Как-то раз Поликарп захотел узнать, кто из секретарей разговаривает по Spyke, а кто — нет. Он выписал для каждого секретаря номер сессии его разговора, или 0, если этот секретарь сейчас не разговаривает по Spyke.

Помогите Поликарпу по этим данным определить, сколько пар секретарей сейчас ведут разговор. Если в данные Поликарпа закралась ошибка, и описанная ситуация никак не могла произойти, требуется сообщить об этом.

Обратите внимание, секретари могут разговаривать по Spyke не только друг с другом — возможны разговоры с внешними собеседниками. Также не разрешены конференции Spyke — то есть в каждом разговоре должны участвовать ровно два собеседника.

Входные данные
В первой строке записано целое число n (1 ≤ n ≤ 103) — количество секретарей в корпорации Поликарпа. В следующей строке записаны n целых чисел через пробел: id1, id2, ..., idn (0 ≤ idi ≤ 109). Число idi равно номеру сессии разговора секретаря номер i, если он разговаривает в данный момент по Spyke, или равно нулю, в противном случае.

Считайте, что секретари пронумерованы от 1 до n некоторым образом.

Выходные данные
Выведите единственное целое число — количество пар секретарей, которые ведут разговор, или -1, если в данные Поликарпа закралась ошибка, и описанная ситуация никак не могла произойти.

Примеры тестов
входные данные
6
0 1 7 1 7 10
выходные данные
2
входные данные
3
1 1 1
выходные данные
-1
входные данные
1
0
выходные данные
0
Примечание
В первом тестовом примере есть два телефонных разговора между секретарями: секретарь номер 2 и секретарь номер 4, секретарь номер 3 и секретарь номер 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
#include <iostream>
#include <algorithm>
 
typedef long long ll;
 
using namespace std;
 
int main()
{
ll ans=0,n,dl=1,x;
cin >> n;
ll a[10000]={0};
for (int i=0;i<n;i++)
{
    cin >> a[i];
}
sort(a,a+n);
for (int i=1;i<n;i++)
{
    if (a[i]==a[i-1]){dl++;continue;}
    if (a[i]!=a[i-1]){
                      if (dl==2 && a[i-1]!=0){ans++;}
                      if (dl>2 && a[i-1]!=0) {ans=-1;break;} 
                      dl=1;
                      }
}
if (dl==2 && a[n-1]!=0){ans++;}
if (dl>2) {ans=-1;} 
cout << ans;   
return 0;
}
не пашет((
Помогите решить парни, спасибо всем заранее
abit
260 / 259 / 33
Регистрация: 03.02.2013
Сообщений: 709
13.04.2013, 01:20     Вывод слов из предложения в обратном порядке #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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
 
int main ()
{
           std::ofstream fout;
           fout.open("test.txt");
           fout << "My test words in this file";
           fout.close();
           
            std::vector<std::string> words;
            
            std::ifstream filestr;
            filestr.open("test.txt");
            
            char c;
            std::string word;
            while (filestr.good())
            {
              c = filestr.get();
              if (!isspace(c))
                 word+=c;
              else
                  {
                     words.push_back(word);
                     word="";
                  }
            }
            if (word.size()) words.push_back(word);
            
            for (std::vector<std::string>::iterator it = words.begin();
                 it != words.end(); ++it)
                 std::cout << *it << " ";
                 
            std::cout<<std::endl<<std::endl<<std::endl;
            
             for (std::vector<std::string>::reverse_iterator it = words.rbegin();
                 it != words.rend(); ++it)
                 std::cout << *it << " ";
                 
            std::cout<<std::endl;
            filestr.close();
            system("pause");
            return 0;
}

как создастся (после первого запуска)

этот кусок можно удалить:
C++
1
2
3
4
std::ofstream fout;
           fout.open("test.txt");
           fout << "My test words in this file";
           fout.close();
Petar07
2 / 2 / 0
Регистрация: 11.10.2012
Сообщений: 99
13.04.2013, 01:26  [ТС]     Вывод слов из предложения в обратном порядке #6
Цитата Сообщение от abit Посмотреть сообщение
может вы что-то напутали?

у меня всё работает


вот немного исправил алгоритм

и добавил кусок, который создаст этот файл

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
45
46
47
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
 
int main ()
{
           std::ofstream fout;
           fout.open("test.txt");
           fout << "My test words in this file";
           fout.close();
           
            std::vector<std::string> words;
            
            std::ifstream filestr;
            filestr.open("test.txt");
            
            char c;
            std::string word;
            while (filestr.good())
            {
              c = filestr.get();
              if (!isspace(c))
                 word+=c;
              else
                  {
                     words.push_back(word);
                     word="";
                  }
            }
            if (word.size()) words.push_back(word);
            
            for (std::vector<std::string>::iterator it = words.begin();
                 it != words.end(); ++it)
                 std::cout << *it << " ";
                 
            std::cout<<std::endl<<std::endl<<std::endl;
            
             for (std::vector<std::string>::reverse_iterator it = words.rbegin();
                 it != words.rend(); ++it)
                 std::cout << *it << " ";
                 
            std::cout<<std::endl;
            filestr.close();
            system("pause");
            return 0;
}

как создастся (после первого запуска)

этот кусок можно удалить:
C++
1
2
3
4
std::ofstream fout;
           fout.open("test.txt");
           fout << "My test words in this file";
           fout.close();
теперь все работаееет спасибо огромное
Yandex
Объявления
13.04.2013, 01:26     Вывод слов из предложения в обратном порядке
Ответ Создать тему
Опции темы

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