Escribir un programa que pida al usuario un número positivo, y decida si es perfecto o no. El programa debe crear 2 funciones:
1. esPerfecto(int) que devuelve verdadero o falso si el número es perfecto
2. esDivisor(int a , int b) que devuelve verdero o falso segun si a es divisor de b, es decir, esDivisor(2, 6) devuelve verdadero, pero esDivisor(2, 5) devuelve falso.
Código
#include <iostream> using namespace std; int LeerEnteroPositivo_() { int a=0; while(a<=0) cin>>a; return a; } int EsPerfecto(int a) { int suma=0; for (int i=1;i<a;i++) if(a%i==0) suma+=i; return suma; } bool Perf (int a) { return (EsPerfecto(a)==a); } bool esDivisor (int b, int c) { int b = 0; int c = 0; return ((b/c)%=0) } int main() { int numeroA; int a; int b; cout<<"Dame un numero entero positivo:"<<endl; numeroA = LeerEnteroPositivo_ (); cout << " Es perfecto el primer numero ? ( 0= Falso, 1=Verdadero)"<< Perf(numeroA) << endl; cin>> a; cin>> b; cout << "Es divisor?" << esDivisor (int a, int b) << endl; }
[MOD] Usar las etiquetas GesHi, para publicar código.
esto es lo que tengo
me pueden ayudar a ver el error en la funcion esDivisor
y como hacer para que al rato de imprimir aparezca verdadero y falso en vez de 0 y 1