El propósito de este capítulo es definir un conjunto de funciones estáticas dentro de una clase denominada Matemáticas. Al definir el concepto de clase estudiamos las funciones miembro o métodos.
En esta página, vamos a ver cómo se define una función para realizar una determinada tarea.
Se deberá tener en cuenta que no se puede usar una variable de instancia por una función estática.
Por ejemplo:
class UnaClase{
int i=0;
static void funcion(){
System.out.println(i);
}
//otras funciones miembro
}
Al compilar se produce un error ya que la variable i es de instancia y no se puede usar en un contexto estático. El lector puede probar esto con cualquier clase que describe una aplicación. Declara una variable de instancia en la clase y la trata de usar en la función estática main.
package mates;
public class Matematicas {
static long factorial(int num){
long resultado=1;
while(num>0){
resultado*=num;
num--;
}
return resultado;
}
static long potencia(int base, int exponente){
long resultado=1;
for(int i=0; i<exponente; i++){
resultado*=base;
}
return resultado;
}
static boolean esPrimo(int numero){
if((numero!=2)&&(numero%2==0)) return false;
for(int i=3; i<numero/2; i+=2){
if(numero%i==0){
return false;
}
}
return true;
}
static double absoluto(double x){
if(x<0) return -x;
return x;
}
static int absoluto(int x){
if(x<0) return -x;
return x;
}
}
package mates;
public class MatesApp {
public static void main(String[] args) {
//Número combinatorio de m sobre n
int m=8, n=3;
System.out.print("El número combinatorio "+m +" sobre "+ n);
long numerador=Matematicas.factorial(m);
long denominador=Matematicas.factorial(m-n)*Matematicas.factorial(n);
0 comentarios:
Publicar un comentario
Gracias por comentar ;-)