<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=2811_-_Triplete</id>
	<title>2811 - Triplete - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=2811_-_Triplete"/>
	<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=2811_-_Triplete&amp;action=history"/>
	<updated>2026-05-01T06:28:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.universitas.ro/index.php?title=2811_-_Triplete&amp;diff=7768&amp;oldid=prev</id>
		<title>Miawinator: Pagină nouă: = Cerința = Subprogramul &lt;code&gt;triplete&lt;/code&gt; are trei parametri, &lt;code&gt;a&lt;/code&gt;, &lt;code&gt;b&lt;/code&gt; și &lt;code&gt;c&lt;/code&gt;, în această ordine, prin care primește câte un număr natural din intervalul &lt;code&gt;[0,10000]&lt;/code&gt; (&lt;code&gt;a&lt;b&lt;/code&gt;). Subprogramul afișează pe ecran în ordine lexicografică toate tripletele de numere naturale, &lt;code&gt;x&lt;/code&gt;, &lt;code&gt;y&lt;/code&gt; și &lt;code&gt;z&lt;/code&gt;, soluții ale ecuației &lt;code&gt;x+y+z=c&lt;/code&gt;, cu proprietatea că &lt;code&gt;a≤ x≤ y≤ z≤...</title>
		<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=2811_-_Triplete&amp;diff=7768&amp;oldid=prev"/>
		<updated>2023-12-11T07:09:19Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: = Cerința = Subprogramul &amp;lt;code&amp;gt;triplete&amp;lt;/code&amp;gt; are trei parametri, &amp;lt;code&amp;gt;a&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;b&amp;lt;/code&amp;gt; și &amp;lt;code&amp;gt;c&amp;lt;/code&amp;gt;, în această ordine, prin care primește câte un număr natural din intervalul &amp;lt;code&amp;gt;[0,10000]&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;a&amp;lt;b&amp;lt;/code&amp;gt;). Subprogramul afișează pe ecran în ordine lexicografică toate tripletele de numere naturale, &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt; și &amp;lt;code&amp;gt;z&amp;lt;/code&amp;gt;, soluții ale ecuației &amp;lt;code&amp;gt;x+y+z=c&amp;lt;/code&amp;gt;, cu proprietatea că &amp;lt;code&amp;gt;a≤ x≤ y≤ z≤...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Cerința =&lt;br /&gt;
Subprogramul &amp;lt;code&amp;gt;triplete&amp;lt;/code&amp;gt; are trei parametri, &amp;lt;code&amp;gt;a&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;b&amp;lt;/code&amp;gt; și &amp;lt;code&amp;gt;c&amp;lt;/code&amp;gt;, în această ordine, prin care primește câte un număr natural din intervalul &amp;lt;code&amp;gt;[0,10000]&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;a&amp;lt;b&amp;lt;/code&amp;gt;). Subprogramul afișează pe ecran în ordine lexicografică toate tripletele de numere naturale, &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt; și &amp;lt;code&amp;gt;z&amp;lt;/code&amp;gt;, soluții ale ecuației &amp;lt;code&amp;gt;x+y+z=c&amp;lt;/code&amp;gt;, cu proprietatea că &amp;lt;code&amp;gt;a≤ x≤ y≤ z≤ b&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Fiecare triplet afișat pe câte o linie și este încadrat între acolade, iar numerele &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt; și &amp;lt;code&amp;gt;z&amp;lt;/code&amp;gt; sunt afișate în această ordine, separate prin câte o virgulă. Dacă nu există niciun triplet cu proprietatea cerută, se afişează mesajul &amp;lt;code&amp;gt;nu exista&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Scrieți definiția completă a subprogramului.&lt;br /&gt;
&lt;br /&gt;
Important:&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Exemplul 1 ==&lt;br /&gt;
Input:&lt;br /&gt;
&lt;br /&gt;
a=2, b=4, c=8&lt;br /&gt;
&lt;br /&gt;
Output:&lt;br /&gt;
&lt;br /&gt;
{2,2,4}&lt;br /&gt;
&lt;br /&gt;
{2,3,3}&lt;br /&gt;
&lt;br /&gt;
== Exemplul 2 ==&lt;br /&gt;
Input:&lt;br /&gt;
&lt;br /&gt;
a=-1, b=0, c=4&lt;br /&gt;
&lt;br /&gt;
Output:&lt;br /&gt;
&lt;br /&gt;
Parametrii a, b, sau c nu respectă condițiile specificate.&lt;br /&gt;
&lt;br /&gt;
== Rezolvare ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python3&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
def is_valid_interval(a, b, c):&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
    Verifică dacă a, b și c se află în intervalul [0, 10000] și respectă relația a &amp;lt; b &amp;lt; c.&lt;br /&gt;
&lt;br /&gt;
    :param a: Număr natural de verificat.&lt;br /&gt;
    :param b: Număr natural de verificat.&lt;br /&gt;
    :param c: Număr natural de verificat.&lt;br /&gt;
    :return: True dacă toți parametrii sunt în interval și respectă relația specificată, False în caz contrar.&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
    return 0 &amp;lt;= a &amp;lt;= 10000 and 0 &amp;lt;= b &amp;lt;= 10000 and 0 &amp;lt;= c &amp;lt;= 10000 and a &amp;lt; b &amp;lt; c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def triplete(a, b, c):&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
    Afișează în ordine lexicografică toate tripletele de numere naturale (x, y, z) soluții ale ecuației x+y+z=c,&lt;br /&gt;
    cu proprietatea că a ≤ x ≤ y ≤ z ≤ b.&lt;br /&gt;
&lt;br /&gt;
    :param a: Număr natural din intervalul [0, 10000].&lt;br /&gt;
    :param b: Număr natural din intervalul [0, 10000], a &amp;lt; b.&lt;br /&gt;
    :param c: Număr natural din intervalul [0, 10000].&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
    # Verificăm condițiile privind a, b, c și relația a &amp;lt; b &amp;lt; c&lt;br /&gt;
    if is_valid_interval(a, b, c):&lt;br /&gt;
        found_triplet = False&lt;br /&gt;
        # Iterăm prin posibilele valori pentru x, y, z&lt;br /&gt;
        for x in range(a, b + 1):&lt;br /&gt;
            for y in range(x, b + 1):&lt;br /&gt;
                z = c - x - y&lt;br /&gt;
                # Verificăm condiția x ≤ y ≤ z&lt;br /&gt;
                if x &amp;lt;= y &amp;lt;= z &amp;lt;= b:&lt;br /&gt;
                    # Afișăm tripletul pe ecran&lt;br /&gt;
                    print(f&amp;#039;{{{x},{y},{z}}}&amp;#039;)&lt;br /&gt;
                    found_triplet = True&lt;br /&gt;
&lt;br /&gt;
        # Afisăm mesajul dacă nu există niciun triplet&lt;br /&gt;
        if not found_triplet:&lt;br /&gt;
            print(&amp;quot;nu exista&amp;quot;)&lt;br /&gt;
    else:&lt;br /&gt;
        print(&amp;quot;Parametrii a, b, sau c nu respectă condițiile specificate.&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
# Exemplu de utilizare:&lt;br /&gt;
triplete(int(input()), int(input()), int(input()))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Miawinator</name></author>
	</entry>
</feed>