Informatică, întrebare adresată de pmarian98, 8 ani în urmă

#2811 Triplete

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
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.

Răspunsuri la întrebare

Răspuns de Dilau420
3

void triplete(int a, int b, int c)

{

   bool afisat = false;

   int limita = c / 3 + 1;

   for (int ia = a; ia <= limita; ++ia)

       for (int ib = ia; ib <= (c - ia) / 2 + 1 && ib <= b; ++ib)

       {

           int ic = c - ia - ib;

           if (ia <= ib && ib <= ic && ic <= b)

             afisat = true, cout << '{' << ia << ',' << ib << ',' << c - ia - ib << "}\n";

   }

   if (!afisat)

       cout << "nu exista";

}

/// ia boss

Alte întrebări interesante