Pagini recente » Cod sursa (job #543591) | Cod sursa (job #1787957) | Cod sursa (job #1386348) | Cod sursa (job #2488222) | Cod sursa (job #1377075)
#include <fstream>
#include <algorithm>
const int MAX_N(9);
int main (void)
{
std::ifstream input("permutari.in");
int n;
input >> n;
input.close();
int i, j;
char v [MAX_N] = {0};
for (i = 0 ; i < n ; ++i)
v[i] = i + '1';
std::ofstream output("permutari.out");
while (true)
{
for (i = 0 ; i < n ; ++i)
output << v[i] << ' ';
output.put('\n');
for (i = n - 2 ; i >= 0 && v[i] > v[i + 1] ; --i)
/* do nothing */;
if (i < 0)
break;
for (j = n - 1 ; j > i && v[j] < v[i] ; --j)
/* do nothing */;
std::swap(v[i],v[j]);
for (++i, j = n - 1 ; i < j ; ++i, --j)
std::swap(v[i],v[j]);
}
output.close();
return 0;
}