<?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=1001_-_Rotund</id>
	<title>1001 - Rotund - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=1001_-_Rotund"/>
	<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=1001_-_Rotund&amp;action=history"/>
	<updated>2026-05-01T04:46:09Z</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=1001_-_Rotund&amp;diff=7572&amp;oldid=prev</id>
		<title>Miawinator: Pagină nouă: = Cerinţa = Spunem că un număr natural &lt;code&gt;x&lt;/code&gt; este rotund dacă există un număr natural nenul &lt;code&gt;k&lt;/code&gt;, mai mic strict decât numărul de cifre ale lui &lt;code&gt;x&lt;/code&gt;, astfel încât prin permutarea circulară a cifrelor numărului cu &lt;code&gt;k&lt;/code&gt; poziţii la dreapta, să se obţină numărul iniţial &lt;code&gt;x&lt;/code&gt;.  Se dă un şir cu &lt;code&gt;n&lt;/code&gt; elemente, numere naturale. câte elemente din șir sunt rotunde, și care sunt acestea.  Se va defini şi...</title>
		<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=1001_-_Rotund&amp;diff=7572&amp;oldid=prev"/>
		<updated>2023-12-03T13:01:30Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: = Cerinţa = Spunem că un număr natural &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; este rotund dacă există un număr natural nenul &amp;lt;code&amp;gt;k&amp;lt;/code&amp;gt;, mai mic strict decât numărul de cifre ale lui &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;, astfel încât prin permutarea circulară a cifrelor numărului cu &amp;lt;code&amp;gt;k&amp;lt;/code&amp;gt; poziţii la dreapta, să se obţină numărul iniţial &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;.  Se dă un şir cu &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; elemente, numere naturale. câte elemente din șir sunt rotunde, și care sunt acestea.  Se va defini şi...&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;
Spunem că un număr natural &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; este rotund dacă există un număr natural nenul &amp;lt;code&amp;gt;k&amp;lt;/code&amp;gt;, mai mic strict decât numărul de cifre ale lui &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;, astfel încât prin permutarea circulară a cifrelor numărului cu &amp;lt;code&amp;gt;k&amp;lt;/code&amp;gt; poziţii la dreapta, să se obţină numărul iniţial &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Se dă un şir cu &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; elemente, numere naturale. câte elemente din șir sunt rotunde, și care sunt acestea.&lt;br /&gt;
&lt;br /&gt;
Se va defini şi apela subprogramul &amp;lt;code&amp;gt;rotund&amp;lt;/code&amp;gt; care verifică dacă un număr natural, transmis ca parametru, este rotund.&lt;br /&gt;
&lt;br /&gt;
= Date de intrare =&lt;br /&gt;
Pe prima linie a fişierului &amp;lt;code&amp;gt;rotundIN.txt&amp;lt;/code&amp;gt; se află numărul &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt;, iar pe a doua linie &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; numere naturale.&lt;br /&gt;
&lt;br /&gt;
= Date de ieşire =&lt;br /&gt;
Prima linie a fişierului &amp;lt;code&amp;gt;rotundOUT.txt&amp;lt;/code&amp;gt; va conține numărul de elemente rotunde din șirul dat, iar linia a doua aceste elemente, în ordinea din șirul dat, separate prin exact un spațiu. Dacă în șirul dat nu se află numere rotunde, în fișierul de ieșire se va numai scrie valoarea &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Restricţii şi precizări =&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;1 ≤ n ≤ 50&amp;lt;/code&amp;gt;&lt;br /&gt;
* elementele şirului vor avea cel mult &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; cifre&lt;br /&gt;
&lt;br /&gt;
== Exemplul 1 ==&lt;br /&gt;
rotundIN.txt:&lt;br /&gt;
&lt;br /&gt;
5&lt;br /&gt;
&lt;br /&gt;
12 3232 123 144144 77&lt;br /&gt;
&lt;br /&gt;
rotundOUT.txt:&lt;br /&gt;
&lt;br /&gt;
3&lt;br /&gt;
&lt;br /&gt;
3232 144144 77&lt;br /&gt;
&lt;br /&gt;
== Exemplul 2 ==&lt;br /&gt;
rotundIN.txt:&lt;br /&gt;
&lt;br /&gt;
0&lt;br /&gt;
&lt;br /&gt;
12 3232 123 144144 77&lt;br /&gt;
&lt;br /&gt;
Output consola: Numărul n trebuie să fie între 1 și 50.&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 validate_input(n, sir):&lt;br /&gt;
    # Verificare pentru n&lt;br /&gt;
    if not (1 &amp;lt;= n &amp;lt;= 50):&lt;br /&gt;
        print(&amp;quot;Numărul n trebuie să fie între 1 și 50.&amp;quot;)&lt;br /&gt;
        return False&lt;br /&gt;
&lt;br /&gt;
    # Verificare pentru fiecare element din șir&lt;br /&gt;
    for x in sir:&lt;br /&gt;
        if not (1 &amp;lt;= x &amp;lt;= 999999999):&lt;br /&gt;
            print(&amp;quot;Elementele șirului trebuie să fie numere naturale cu cel mult 10 cifre.&amp;quot;)&lt;br /&gt;
            return False&lt;br /&gt;
&lt;br /&gt;
    return True&lt;br /&gt;
&lt;br /&gt;
def rotund(numar):&lt;br /&gt;
    str_numar = str(numar)&lt;br /&gt;
    numar_cifre = len(str_numar)&lt;br /&gt;
&lt;br /&gt;
    for i in range(1, numar_cifre):&lt;br /&gt;
        permutare = int(str_numar[-i:] + str_numar[:-i])&lt;br /&gt;
        if permutare == numar:&lt;br /&gt;
            return True&lt;br /&gt;
&lt;br /&gt;
    return False&lt;br /&gt;
&lt;br /&gt;
def main():&lt;br /&gt;
    # Citire date de intrare din fisier&lt;br /&gt;
    with open(&amp;quot;rotundIN.txt&amp;quot;, &amp;quot;r&amp;quot;) as f:&lt;br /&gt;
        n = int(f.readline())&lt;br /&gt;
        sir = list(map(int, f.readline().split()))&lt;br /&gt;
&lt;br /&gt;
    # Verificare validitate input&lt;br /&gt;
    if not validate_input(n, sir):&lt;br /&gt;
        return&lt;br /&gt;
&lt;br /&gt;
    # Identificare și afișare elemente rotunde din șir&lt;br /&gt;
    rotunde = [x for x in sir if rotund(x)]&lt;br /&gt;
    numar_rotunde = len(rotunde)&lt;br /&gt;
&lt;br /&gt;
    # Scriere rezultat in fisier&lt;br /&gt;
    with open(&amp;quot;rotundOUT.txt&amp;quot;, &amp;quot;w&amp;quot;) as f:&lt;br /&gt;
        f.write(str(numar_rotunde) + &amp;quot;\n&amp;quot;)&lt;br /&gt;
        if numar_rotunde &amp;gt; 0:&lt;br /&gt;
            f.write(&amp;quot; &amp;quot;.join(map(str, rotunde)))&lt;br /&gt;
&lt;br /&gt;
if __name__ == &amp;quot;__main__&amp;quot;:&lt;br /&gt;
    main()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Miawinator</name></author>
	</entry>
</feed>