Informatică, întrebare adresată de savusebastian10, 8 ani în urmă

Se citește un număr natural n (n≥2) și se cere să se scrie cel mai mare divizor prim al lui n.

Exemplu: dacă n=2000, se scrie 5, deoarece 2000=2 la a patra * 5 la a treia

Clasa a 9a

Răspunsuri la întrebare

Răspuns de Sergetec
2

Salut!

Ai mai jos rezolvarea in limbaj C++

#include <iostream>

#include <cmath>

using namespace std;

int main()

{

 int n;

 cin >> n;

 long long maxPrim = -1;

 while (n % 2 == 0)

 {

   maxPrim = 2;

   n /= 2;

 }

 for (int i = 3; i <= sqrt(n); i += 2)

 {

   while (n % i == 0)

   {

     maxPrim = i;

     n = n / i;

   }

 }

 if (n > 2)

 {

   maxPrim = n;

 }

 cout << maxPrim;

 return 0;

}

Alte întrebări interesante