Przejście z wariacji bez powtórzeń na kombinacje

0

Witam, mam takie zadanie : Wypisać wszystkie kombinacje 3 elementowe ze zbioru 5 elementowgo Z{1, 2 ,3 ,4 ,5}.
Wariacje bez powtórzeń wypiszę, ale nie wiem jak przekształcić je na kombinacje... A może po prostu da się od razu kombinacje wypisać?

#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>

using namespace std;

int main()
{
    for (int p1 = 1; p1 < 6; p1++) {
        for (int p2 = 1; p2 < 6; p2++) {
            if (p2 == p1) {
                continue;
            }
            for (int p3 = 1; p3 < 6; p3++) {
                if (p3 == p1 || p3 == p2) {
                    continue;
                }
                cout << p1 << p2 << p3 << endl;
            }
        }
    }

    return 0;
}
1
#include <iostream>
using namespace std;

int main()
{
    for(int i = 1; i <= 5; ++i){
        for(int j = i + 1; j <= 5; ++j){
            for(int k = j + 1; k <= 5; ++k){
                cout << i << ' ' << j << ' ' << k << '\n';
            }
        }
    }
} 

1 użytkowników online, w tym zalogowanych: 0, gości: 1