0 / 0 / 0
Регистрация: 11.01.2014
Сообщений: 18
1

Вывести на экран все возможные перестановки введенных символов. Где ошибка?

11.01.2014, 18:23. Показов 3389. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
С клавиатуры задается последовательность символов. Написать программу, которая выводит на экран все возможные перестановки введенных символов.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <cstdio>
#include <cstring>
 
void f(char*a);
int main()
{
char str[]="vi na";
f(str);
puts(str);
}
void f(char*a)
{
int l=strlen(a); 
for(int i=0;i<l;i+=2)
{
int t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.01.2014, 18:23
Ответы с готовыми решениями:

Вывести на экран все возможные перестановки введенных ползователем символов
С клавиатуры задается последовательность символов. Написать программу, которая выводит на экран все...

Выдать все возможные перестановки введенных символов
Проблема с типами. Программа должна выдавать все возможные перестановки введенных символов. Но...

Вывести все возможные перестановки символов в строке
Вводится строка, на вывод вывести все возможные перестановки этой строки. Например: вводим abc на...

Все возможные варианты перестановки символов строки
Дана строка s, состоящая из n символ (n меньше 6) составить все возможные варианты перестановки...

7
26 / 26 / 4
Регистрация: 05.08.2013
Сообщений: 20
11.01.2014, 18:37 2
Цитата Сообщение от tolkin Посмотреть сообщение
которая выводит на экран
По-моему, ваша программа ничего не выводит
1
0 / 0 / 0
Регистрация: 11.01.2014
Сообщений: 18
11.01.2014, 18:44  [ТС] 3
в курсе)
0
Неэпический
17869 / 10634 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
11.01.2014, 18:45 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
#include <algorithm>
 
int main () {
  std::string str ;
  std::cin >> str ;
  std::cout << "START:\n";
  std::sort ( str.begin() , str.end() ) ;
  do {
    std::cout << str << '\n';
  } while ( std::next_permutation( str.begin() , str.end() ) );
  std::cout << "END" << std::endl ;
}
1
0 / 0 / 0
Регистрация: 11.01.2014
Сообщений: 18
11.01.2014, 18:50  [ТС] 5
Croessmah, а есть проще способ, поттому шо ишо не учил std:: ?
0
50 / 31 / 11
Регистрация: 10.06.2012
Сообщений: 395
11.01.2014, 22:37 6
tolkin, вы не могли не проходить std:: Это тема о пространстве имен,и если вы проходили iostream то должны знать ,что когда вы ее используете ,то необходимо использовать следующую директиву пространства имен,чтобы определения в iostream были доступны в программе: using namespace std; Это называется директивой using. Так вот ,директиву using можно опустить и записать код например следующим образом: std::cout<< ,std::>>cin , std:: endl;
Директива using namespace std; означает,что ты можешь применять имена,определнные в пространстве имен std ,без префикса std:: Эта директива using делает доступными все имена в пространстве имен std.
using std::cout; // делает доступным cout
using std::endl ; //делает доступным endl
using std::cin; //делает доступным cin
Я почему так подробно пытаюсь разжевать . Ты две темы открыл одинаковые. эту и эту Вывести на экран все возможные перестановки введенных ползователем символов кажется так не следует делать. Начал в одной теме вопрос ,там его и доведи до конца Я в своем коде поленился сделать ввод символьной строки ,а Croessmah предоставил краткий ,предельно простой код. с использованием библиотеки #include <algorithm>
и строчка } while ( std::next_permutation( str.begin() , str.end() ) ); говорит о использовании функции next_permutation всего лишь из этой библиотеки.
1
0 / 0 / 0
Регистрация: 11.01.2014
Сообщений: 18
11.01.2014, 22:42  [ТС] 7
спосибо) извени, што открил две одинаковие теми..

Добавлено через 2 минуты
я тепер, понял.
0
50 / 31 / 11
Регистрация: 10.06.2012
Сообщений: 395
11.01.2014, 22:45 8
Вывести на экран все возможные перестановки введенных ползователем символов Я сам учусь ,ты тоже извини.
0
11.01.2014, 22:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.01.2014, 22:45
Помогаю со студенческими работами здесь

Рекурсивная функция: все возможные перестановки символов строки
Дана строка с n элементами. Например abs. Надо выводить все возможные варианты например abs asb...

Определить все возможные перестановки символов в данной строке
Добрый день, имеется рекурсивный код, задача которого определить все возможные перестановки...

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

Необходимо вывести все возможные перестановки
Дана коллекция неповторяющихся чисел. Необходимо вывести все возможные перестановки. Пример:...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru