<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.algopedia.ro/wiki/index.php?action=history&amp;feed=atom&amp;title=Clasa_a_V-a_lec%C8%9Bia_6_S8</id>
	<title>Clasa a V-a lecția 6 S8 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.algopedia.ro/wiki/index.php?action=history&amp;feed=atom&amp;title=Clasa_a_V-a_lec%C8%9Bia_6_S8"/>
	<link rel="alternate" type="text/html" href="https://www.algopedia.ro/wiki/index.php?title=Clasa_a_V-a_lec%C8%9Bia_6_S8&amp;action=history"/>
	<updated>2026-04-13T19:17:39Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.algopedia.ro/wiki/index.php?title=Clasa_a_V-a_lec%C8%9Bia_6_S8&amp;diff=14100&amp;oldid=prev</id>
		<title>Bella: /* Tema Optionala */</title>
		<link rel="alternate" type="text/html" href="https://www.algopedia.ro/wiki/index.php?title=Clasa_a_V-a_lec%C8%9Bia_6_S8&amp;diff=14100&amp;oldid=prev"/>
		<updated>2017-11-04T20:45:24Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Tema Optionala&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Lectie=&lt;br /&gt;
==Divizorii unui numar==&lt;br /&gt;
===Afisarea divizorilor unui numar in ordine crescatoare ===&lt;br /&gt;
Varianta1:&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main() {&lt;br /&gt;
 int n, d;&lt;br /&gt;
 scanf( &amp;quot;%d&amp;quot;, &amp;amp;n );&lt;br /&gt;
 printf( &amp;quot;Divizorii lui %d sunt:&amp;quot;, n );&lt;br /&gt;
 d = 1;&lt;br /&gt;
 while ( d &amp;lt;= n ) {&lt;br /&gt;
   if ( n % d == 0 )&lt;br /&gt;
     printf( &amp;quot; %d&amp;quot;, d );&lt;br /&gt;
   d = d + 1;&lt;br /&gt;
 }&lt;br /&gt;
 printf( &amp;quot;\n&amp;quot; );&lt;br /&gt;
 return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Varianta2 optimizat:&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;math.h&amp;gt;&lt;br /&gt;
int main() {&lt;br /&gt;
  int n, d;&lt;br /&gt;
  scanf( &amp;quot;%d&amp;quot;, &amp;amp;n );&lt;br /&gt;
  printf( &amp;quot;Divizorii lui %d sunt:&amp;quot;, n );&lt;br /&gt;
  //afisam intai divizorii mai mici strict decat sqrt( n )&lt;br /&gt;
  d = 1;&lt;br /&gt;
  while ( d * d &amp;lt;= n ) {&lt;br /&gt;
    if ( n % d == 0 )&lt;br /&gt;
      printf( &amp;quot;%d &amp;quot;, d );&lt;br /&gt;
    d = d + 1;&lt;br /&gt;
 }&lt;br /&gt;
 d = sqrt( n );&lt;br /&gt;
 while ( d * d &amp;gt;= 1 ) {&lt;br /&gt;
   if ( n % d == 0 )&lt;br /&gt;
     printf( &amp;quot;%d &amp;quot;, n / d );&lt;br /&gt;
   d = d - 1;&lt;br /&gt;
 }&lt;br /&gt;
 printf( &amp;quot;\n&amp;quot; );&lt;br /&gt;
 return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Suma tuturor divizorilor unui numar  ===&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main(){&lt;br /&gt;
  long long n, s, d;&lt;br /&gt;
&lt;br /&gt;
  scanf(&amp;quot;%lld&amp;quot;, &amp;amp;n);&lt;br /&gt;
  s = 0;&lt;br /&gt;
  d = 1;&lt;br /&gt;
  while( d * d &amp;lt; n ){      // ne oprim cu d pana in radicalul numarului n&lt;br /&gt;
    if( n % d == 0 )&lt;br /&gt;
      s = s + d + n / d;   // adaugam la suma si pe d si perechea sa de dupa radical&lt;br /&gt;
    d = d + 1;    &lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // aici d va fi fie egal cu radical din n daca n e patrat perfect, fie mai mare decat radical din n&lt;br /&gt;
&lt;br /&gt;
  if( d * d == n )         // daca n e patrat perfect, &lt;br /&gt;
    s = s + d;             // vom adauga radical din n doar o data la suma&lt;br /&gt;
  printf(&amp;quot;%lld\n&amp;quot;, s);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Primalitate ==&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main() {&lt;br /&gt;
 int n, d;&lt;br /&gt;
 scanf( &amp;quot;%d&amp;quot;, &amp;amp;n );&lt;br /&gt;
 d = 2;&lt;br /&gt;
 while ( d * d &amp;lt;= n &amp;amp;&amp;amp; n % d &amp;gt; 0 )&lt;br /&gt;
   d = d + 1;&lt;br /&gt;
 if ( d * d &amp;gt; n &amp;amp;&amp;amp; n &amp;gt; 1 )&lt;br /&gt;
   printf( &amp;quot;%d este prim\n&amp;quot;, n );&lt;br /&gt;
 else&lt;br /&gt;
   printf( &amp;quot;%d nu este prim\n&amp;quot;, n );&lt;br /&gt;
 return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
= Test2 = &lt;br /&gt;
Test in pbinfo&lt;br /&gt;
&lt;br /&gt;
= Probleme =&lt;br /&gt;
Divizorii unui numar:&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=376 Suma Divizori] teorie&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=387 Suma divizori impari]&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=388 Numarul divizorilor Pari]&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=detalii-evaluare&amp;amp;id=6301021 DivizoriPariInterval]&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=445 Pseudoperfect]&lt;br /&gt;
&lt;br /&gt;
Primalitate&lt;br /&gt;
* [http://varena.ro/problema/prime prime]&lt;br /&gt;
= Tema8 (Optionala) =&lt;br /&gt;
* Rezolvati problemele din test&lt;br /&gt;
* Implementati problemele care v-au ramas nerezolvate din lista de mai sus&lt;br /&gt;
* Tema de halloween de groaza este doar pentru cei foarte avansati, ar trebui sa va ia o luna sa o terminati.&lt;/div&gt;</summary>
		<author><name>Bella</name></author>
	</entry>
</feed>