Ako je paran, prvo resenje je sa svim dvojkama, a ako je neparan, sa jednom trojkom i svim ostalim dvojkama.
Ostala resenja se dobijaju petljom u kojoj se u svakom koraku broj dvojki smanji za 3, a broj trojki poveca za 2.
Code:
#include <iostream>
#include <cstdio>
using namespace std;
int main() {
int n, d, t;
cout << "Unesi broj : " << endl;
while (true) {
cin >> n;
if (n < 2)
cout << "Greska! Broj ne sme biti manji od 2" << endl;
else
break;
}
if (n % 2 == 0) {
d = n/2;
t = 0;
} else {
d = (n-3)/2;
t = 1;
}
while (d >= 0) {
cout << n << " = " << d << "*2 + " << t << "*3" << endl;
d -= 3;
t += 2;
}
return EXIT_SUCCESS;
}