PROBLEME DE INFORMATICĂ - CLASA 9
REZOLVATI URMATOARELE 2 PROBLEME PENTRU 10 PUNCTE !

1) Se dă de la tastatură un număr întreg n. să se tipărească numerele prime mai mici sau egale decât n.

ex : n = 10
nr. prime mai mici sau egale cu 10 sunt 2, 3, 5 și 7


2) Se dau 2 numere reale a și b. Să se tipărească media aritmetică a numerelor prime din intervalul [a,b].

exemplu : a = 4 , b = 15
nr. prime din [ 4 , 15 ] sunt : 5 , 7 , 11 , 13
media aritmetică: 36 : 4 = 9​

Răspuns :

Răspuns:

1.

#include <iostream>

using namespace std;

int prim(int n){

   if(n<2) return 0;

   if(n==2) return 1;

   if(n%2==0) return 0;

   for(int d=3;d*d<=n;d++)

   if(n%d==0) return 0;

   return 1;

}

int main()

{

   int n;

   cin>>n;

   for(int i=1;i<=n;i++)

   if(prim(i)) cout<<i<<" ";

   return 0;

}

2.

#include <iostream>

using namespace std;

int prim(int n){

   if(n<2) return 0;

   if(n==2) return 1;

   if(n%2==0) return 0;

   for(int d=3;d*d<=n;d++)

   if(n%d==0) return 0;

   return 1;

}

int main()

{

   int a, b, cnt=0, s=0;

   cin>>a>>b;

   for(int i=a;i<=b;i++)

   if(prim(i)) {

       s+=i;

       cnt++;

   }

   cout<<s/cnt;

   return 0;

}