<?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=0443_-_Divizori_Primi</id>
	<title>0443 - Divizori Primi - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.universitas.ro/index.php?action=history&amp;feed=atom&amp;title=0443_-_Divizori_Primi"/>
	<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=0443_-_Divizori_Primi&amp;action=history"/>
	<updated>2026-06-17T03:49:59Z</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=0443_-_Divizori_Primi&amp;diff=6235&amp;oldid=prev</id>
		<title>Diana Butuza: /* Explicație */</title>
		<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=0443_-_Divizori_Primi&amp;diff=6235&amp;oldid=prev"/>
		<updated>2023-05-09T12:01:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Explicație&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:01, 9 May 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l15&quot;&gt;Line 15:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 15:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:31&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:31&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Explicație ==  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Explicație ==  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Pentru numerele date, primul divizor prim este&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, respectiv: &lt;/del&gt;&#039;&#039;&#039;3 13 3 7 5&#039;&#039;&#039;, cu suma &#039;&#039;&#039;31&#039;&#039;&#039;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Pentru numerele date, primul divizor prim este &#039;&#039;&#039;3 13 3 7 5&#039;&#039;&#039;, cu suma &#039;&#039;&#039;31&#039;&#039;&#039;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Rezolvare ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Rezolvare ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Diana Butuza</name></author>
	</entry>
	<entry>
		<id>https://wiki.universitas.ro/index.php?title=0443_-_Divizori_Primi&amp;diff=5324&amp;oldid=prev</id>
		<title>Paul Matei: Pagină nouă: == Cerinţa == Se dau &#039;&#039;&#039;n&#039;&#039;&#039; numere naturale. Calculaţi suma obținută prin adunarea primului divizor prim al fiecărui număr citit. == Date de intrare == Programul citește de la tastatură numărul &#039;&#039;&#039;n&#039;&#039;&#039;, iar apoi &#039;&#039;&#039;n&#039;&#039;&#039; numere naturale, separate prin spaţii. == Date de ieşire == Programul afișează pe ecran numărul &#039;&#039;&#039;S&#039;&#039;&#039;, reprezentând suma cerută. == Restricții și precizări == *&#039;&#039;&#039;1 ≤ n ≤ 1000&#039;&#039;&#039; *cele &#039;&#039;&#039;n&#039;&#039;&#039; numere citite vor fi mai mari decât &#039;&#039;&#039;1...</title>
		<link rel="alternate" type="text/html" href="https://wiki.universitas.ro/index.php?title=0443_-_Divizori_Primi&amp;diff=5324&amp;oldid=prev"/>
		<updated>2023-04-29T08:36:01Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: == Cerinţa == Se dau &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039; numere naturale. Calculaţi suma obținută prin adunarea primului divizor prim al fiecărui număr citit. == Date de intrare == Programul citește de la tastatură numărul &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039;, iar apoi &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039; numere naturale, separate prin spaţii. == Date de ieşire == Programul afișează pe ecran numărul &amp;#039;&amp;#039;&amp;#039;S&amp;#039;&amp;#039;&amp;#039;, reprezentând suma cerută. == Restricții și precizări == *&amp;#039;&amp;#039;&amp;#039;1 ≤ n ≤ 1000&amp;#039;&amp;#039;&amp;#039; *cele &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039; numere citite vor fi mai mari decât &amp;#039;&amp;#039;&amp;#039;1...&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;
Se dau &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039; numere naturale. Calculaţi suma obținută prin adunarea primului divizor prim al fiecărui număr citit.&lt;br /&gt;
== Date de intrare ==&lt;br /&gt;
Programul citește de la tastatură numărul &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039;, iar apoi &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039; numere naturale, separate prin spaţii.&lt;br /&gt;
== Date de ieşire ==&lt;br /&gt;
Programul afișează pe ecran numărul &amp;#039;&amp;#039;&amp;#039;S&amp;#039;&amp;#039;&amp;#039;, reprezentând suma cerută.&lt;br /&gt;
== Restricții și precizări ==&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;1 ≤ n ≤ 1000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*cele &amp;#039;&amp;#039;&amp;#039;n&amp;#039;&amp;#039;&amp;#039; numere citite vor fi mai mari decât &amp;#039;&amp;#039;&amp;#039;1&amp;#039;&amp;#039;&amp;#039; și mai mici decât &amp;#039;&amp;#039;&amp;#039;1.000.000.000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
== Exemplu ==&lt;br /&gt;
; Intrare&lt;br /&gt;
:5&lt;br /&gt;
15 13 39 49 25&lt;br /&gt;
; Ieșire&lt;br /&gt;
:31&lt;br /&gt;
== Explicație == &lt;br /&gt;
Pentru numerele date, primul divizor prim este, respectiv: &amp;#039;&amp;#039;&amp;#039;3 13 3 7 5&amp;#039;&amp;#039;&amp;#039;, cu suma &amp;#039;&amp;#039;&amp;#039;31&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
== Rezolvare ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line&amp;gt;&lt;br /&gt;
import math&lt;br /&gt;
&lt;br /&gt;
def prim(n):&lt;br /&gt;
    d = 2&lt;br /&gt;
    p = 0&lt;br /&gt;
    while n &amp;gt; 1:&lt;br /&gt;
        p = 0&lt;br /&gt;
        while n % d == 0:&lt;br /&gt;
            p += 1&lt;br /&gt;
            n //= d&lt;br /&gt;
        if p &amp;gt; 0:&lt;br /&gt;
            return d&lt;br /&gt;
        d += 1&lt;br /&gt;
        if d * d &amp;gt; n:&lt;br /&gt;
            d = n&lt;br /&gt;
    return n&lt;br /&gt;
&lt;br /&gt;
def validare_date():&lt;br /&gt;
    n = 0&lt;br /&gt;
    while n &amp;lt;= 0:&lt;br /&gt;
        try:&lt;br /&gt;
            n = int(input(&amp;quot;Introduceti n: &amp;quot;))&lt;br /&gt;
            if n &amp;lt;= 0:&lt;br /&gt;
                print(&amp;quot;n trebuie sa fie un numar intreg pozitiv.&amp;quot;)&lt;br /&gt;
        except ValueError:&lt;br /&gt;
            print(&amp;quot;n trebuie sa fie un numar intreg pozitiv.&amp;quot;)&lt;br /&gt;
    return n&lt;br /&gt;
&lt;br /&gt;
if __name__ == &amp;#039;__main__&amp;#039;:&lt;br /&gt;
    if validare_date():&lt;br /&gt;
        print(&amp;quot;\nDatele de intrare corespund restricțiilor impuse.\n&amp;quot;)&lt;br /&gt;
    else:&lt;br /&gt;
        print(&amp;quot;Datele de intrare nu corespund restricțiilor impuse.&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
    n = validare_date()&lt;br /&gt;
    s = 0&lt;br /&gt;
    for i in range(n):&lt;br /&gt;
        x = 0&lt;br /&gt;
        while x &amp;lt;= 0:&lt;br /&gt;
            try:&lt;br /&gt;
                x = int(input(f&amp;quot;Introduceti x[{i+1}]: &amp;quot;))&lt;br /&gt;
                if x &amp;lt;= 0:&lt;br /&gt;
                    print(&amp;quot;x trebuie sa fie un numar intreg pozitiv.&amp;quot;)&lt;br /&gt;
            except ValueError:&lt;br /&gt;
                print(&amp;quot;x trebuie sa fie un numar intreg pozitiv.&amp;quot;)&lt;br /&gt;
        s += prim(x)&lt;br /&gt;
    print(f&amp;quot;Suma divizorilor primi este: {s}&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Explicație rezolvare==&lt;br /&gt;
Acest program calculează suma divizorilor primi ai unui set de numere introduse de utilizator. Folosește o funcție pentru a verifica dacă intrarea este validă și o altă funcție pentru a găsi cel mai mic divizor prim al unui număr. Programul calculează suma divizorilor primi pentru fiecare număr introdus de utilizator și le adună pentru a obține o valoare totală, pe care o afișează la final.&lt;/div&gt;</summary>
		<author><name>Paul Matei</name></author>
	</entry>
</feed>