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

Se citeşte de la tastatură, un şir de n numere naturale. Realizaţi un program pentru determinarea numărului din şir cu cei mai mulţi divizori.


boiustef: dar dacă sunt mai multe numere din şir cu cei mai mulţi divizori???

Răspunsuri la întrebare

Răspuns de boiustef
1

Răspuns:

#include <iostream>

using namespace std;

int nrmaxdiv(int x)

{

   int d, nd=0;

    for (d=1; d*d<x; ++d)

   {

       if (x%d==0)

       {

           ++nd;  if (x/d!=d ) ++nd;

       }

   }

   if (d*d==x) ++nd;

   return nd;

}

int main()

{

   int n, i, num, caut, nrdiv=0, a;

   cin >> n;

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

   {

       cin >> num;

       a=nrmaxdiv(num);

       if (a>nrdiv)

       {

           nrdiv=a;

           caut=num;

       }

   }

   cout << caut;

}

Explicație:


Trollea: poti sa o faci doar cu int main ?? ca inca nu am invatat ce ai scris tu in prima parte a problemei plzzz
Trollea: ??
boiustef: pot, dar nu am acces la redactor...
boiustef: https://mega.nz/#!7eYlna7I!pC10lgZKZ24KkSkP35ub02oNrg7mN77CDAF6fvMhM8M
boiustef: vezi dacă reușești să/l copii...
boiustef: ai luat codul de pe mega.nz ???
Alte întrebări interesante