[ Foro de C# ]

Public bool

18-Sep-2013 18:23
Invitado (TranceMusik)
2 Respuestas


mi duda es que al querer poner el siguiente código:

namespace Control_Errores
{
   class Program
   {
       static void Main(string[] args)
       {
           int num1;

           Inicio:

           try
           {
               Console.WriteLine("Ingresa tu numero\n");
               Console.WriteLine("numero:\n");
               num1= int.Parse(Console.ReadLine());
             


           }
           catch
           {
               Console.WriteLine("Error: Solo se permiten numeros enteros");
               goto Inicio;

           }}
     
class operaciones {

public  bool esperfecto (int num1 )//<----- me indica el error  no todas las rutas de código devuelven valor
       {

     
         
       int suma = 0;
       

       for (int i =1; i <num1; i++)
   {

       if(num1%i ==0){
       suma = suma +1;
   }


   if(suma == num1 ){

  return  true;

}
   else {
       return  false;
   }
   
   }

   }
}


}


en el método boolean que recive el valor num1  para saber si es perfecto me indica error, ya que quiero que me retorne true o false para indicar desde main al usuario si el numero que capturo es perfecto o no.


18-Sep-2013 18:29
Nacho Cabanes (+32)

El error "no todas las rutas de código devuelven valor" se refiere a que no todos los return deben estar dentro de un "if", sino que debe existir un valor que sea el que se devuelve por defecto.

Puede que baste con que el final lo reescribas así:

 
if(suma == num1 )
{ 
  return  true; 
} 
 
return  false; 
 



18-Sep-2013 20:23
Invitado (TranceMusik)

Gracias me sirvió mucho me hago un caos con los meotodos y parámetros solo es cuestión de practicar saludos.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)