Informatică, întrebare adresată de mcd0ggy, 9 ani în urmă

se citeste n de la tastatura, afisati media aritmetica a divizorilor lui n.
va rog, e urgent!!!

Răspunsuri la întrebare

Răspuns de sTIL11
2
Sper ca te-am ajutat

sTIL11: Int n,ma,s=0,k=0;
Cin>>n;
For (int d=2;d<=n/2;d++)
If (n%d==0){
S+=d;
K++;}
ma=s/k;
Cout << ma;
mcd0ggy: iti multumesc, voi scrie cand ajung la şcoală
mcd0ggy: eventual dupa prima pauza.
rossetta: functioneaza doar pentru divizorii proprii ai lui n
mcd0ggy: ok
Răspuns de rossetta
3
#include <iostream>
 
using namespace std;
 
int main() {
    int n, d, s = 0, nrdiv = 0;
    cin >> n;
    for(d = 1; d * d < n; d++)
      if(n % d == 0) {
        s = s + d + n / d;
        nrdiv = nrdiv + 2;
      }
    if(d * d == n) {
      s = s + d;
      nrdiv++;
    }  
    cout << s / nrdiv;
    return 0;
}

mcd0ggy: ms oricum
rossetta: cu placere
rossetta: Ai invatat sa cauti divizorii pana la radical din n? Daca nu, iti scriu un cod mai usor de inteles.
mcd0ggy: lasa ca am înțeles scrie acolo
Alte întrebări interesante