Cerința
Subprogramul triplete are trei parametri, a, b și c, în această ordine, prin care primește câte un număr natural din intervalul [0,104] (a<b). Subprogramul afișează pe ecran în ordine lexicografică toate tripletele de numere naturale, x, y și z, soluții ale ecuației x+y+z=c, cu proprietatea că a≤ x≤ y≤ z≤ b.
Fiecare triplet afișat pe câte o linie și este încadrat între acolade, iar numerele x, y și z sunt afișate în această ordine, separate prin câte o virgulă. Dacă nu există niciun triplet cu proprietatea cerută, se afişează mesajul nu exista.
Scrieți definiția completă a subprogramului.
Exemplu
Dacă a=2, b=4 și c=8, se afișează pe ecran tripletele:
{2,2,4}
{2,3,3}
Dacă a=5, b=8, c=8 se afișează pe ecran mesajul nu exista.
Important
Soluția propusă va conține definiția subprogramului cerut. Prezența în soluție a altor instrucțiuni poate duce erori de compilare sau de execuție care vor avea ca efect depunctarea soluției.
void triplete(int a , int b , int c)
{
int cnt = 0;
for(int i = a ; i <= b ; ++i)
for(int j = i ; j <= b ; ++j)
if(c - (i + j) >= j && c - (i + j) <= b)
cout << '{' << i << ',' << j << ',' << c - (i + j) << '}' << endl, cnt++;
if(cnt==0)
cout << "nu exista";
}