Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: juandtovar en 18 Febrero 2018, 18:56 PM

Título: Error código
Publicado por: juandtovar en 18 Febrero 2018, 18:56 PM
Necesito ayuda con este código para la función seno. Sé que tengo un error .class pero ni siquera sé qué es eso

public class MyClass {
    public static void main(String args[]) {
    seno(double x){
      int i;
      double s = 0;
      int signo = 1;
      for(i=1; i<13; i+=2){

         s += signo*pow(x, i)/factorial(i);
            signo *= -1;

      }

      return s;
   }

        System.out.println(x);
    }
}
Título: Re: Error código
Publicado por: rub'n en 20 Febrero 2018, 18:16 PM
Cita de: juandtovar en 18 Febrero 2018, 18:56 PM
Necesito ayuda con este código para la función seno. Sé que tengo un error .class pero ni siquera sé qué es eso

Código (java) [Seleccionar]
public class MyClass {
   public static void main(String args[]) {
   seno(double x){
int i;
double s = 0;
int signo = 1;
for(i=1; i<13; i+=2){

s += signo*pow(x, i)/factorial(i);
signo *= -1;

}

return s;
}

       System.out.println(x);
   }
}


Puedes ayudar mucho mas ofreciendo una mejor descripción de tu error issue, etc... y que deseas hacer



Fíjate que invocamos al método seno desde el contructor ver linea 9 e imprimimos su valor retorna double, también esta la otra manera como te describe @Shell Root mas abajo

Código (java) [Seleccionar]

package foro;

public class ErrorCodigo {

   private static final Double X = 20.5;

   public ErrorCodigo() {

       System.out.println("Resultado: "+seno(X)); //20.5

   }

   private Double factorial(final int n) {
           if (n==0)
               return new Double(1);
           else
               return n*(factorial(n-1));
   }

   private Double seno(double x) {
       int i = 0;
       double s = 0;
       int signo = 1;
       for(i=1; i<13; i+=2){
           s += signo * Math.pow(x, i) / factorial(i); // añadio Math.pow
           signo *= -1;
       }
       return s;
   }
   public static void main(String ...BlaBla) {
       new ErrorCodigo();
   }
}

Título: Re: Error código
Publicado por: Shell Root en 20 Febrero 2018, 19:38 PM
Para definir una función (retorno de valor), es así:
Código (java,3,5,6,7) [Seleccionar]
public class MyClass {
   public static void main(String args[]) {
       System.out.println( PoC("shellroot") );
   }

   public static String PoC(String Nick){
       return Nick;
   }
}


Lo que tienes definido es un metodo (ejecuta acciones). Aprende la diferencia y así sabrás donde tienes el error.