Estou tentando fazer um programa que informe se o número é perfeito ou não ; Porém... Quando eu digito números perfeitos ele aparece como falso ;
qual seria o erro disso?
Obrigada
#include <iostream>
using namespace std;
bool perfeito (int v ) {
int i, acum=0;
for (i = 0; i <= v / 2; i ++) {
if ( v % i == 0 ) {
acum = acum + i;
}
if ( acum == v ) {
return true;
}else {
return false ;
}
}
}
int main () {
int v;
cout << " Informe valor . . . ";
cin >> v;
if ( perfeito (v) == true ) {
cout << " Verdadeiro ";
}else {
cout <<" Falso ";
}
return 0;
}
Pergunta
miiiiiiiiiiia
Boa noite , prezados
Estou tentando fazer um programa que informe se o número é perfeito ou não ; Porém... Quando eu digito números perfeitos ele aparece como falso ;
qual seria o erro disso?
Obrigada
Editado por miiiiiiiiiiiaLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.