Algoritmul alăturat este reprezentat în pseudocod. S-a notat cu a %b restul împărțirii numărului natural a la numărul natural nenul b și cu [c] partea întreagă a numărului real c. Scrieți ce se afișează dacă se citește numărul 12. Scrieți programul C/C++ corespunzător algoritmului dat.
Citește
( număr nat nenul)
d<-1 ; s<-0
Cat timp d*d<n executa
Dacă n%d=0 și d%2!=[n/d]%2 atunci
S<-s+d+[n/d]
(închide cât timp )
d<-d+1
(închide dacă)
dacă d*d=n atunci s<-s+d
(închide dacă)
Scrie s
Răspunsuri la întrebare
Răspuns de
0
Răspuns:
Se afiseaza 20
Explicație:
Program in C++
#include <iostream>
using namespace std;
int main()
{
int n,d,s;
cin>>n;
d=1; s=0;
while (d*d<n)
{
if(n%d==0 && d%2!=n/d%2)
s=s+d+n/d;
d=d+1;}
if (d*d==n) s=s+d;
cout<<s;
return 0;
}
Alte întrebări interesante
Chimie,
8 ani în urmă
Limba rusă,
8 ani în urmă
Latina,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Engleza,
9 ani în urmă