En esta unidad utilizamos
Double inicio = System.currentTimeMillis();
Double Fin = System.currentTimeMillis() – inicio;
Estas funciones sirven para establecer el momento en el cual debe comenzar a tomar el tiempo.
Luego vuelve a tomar el tiempo y lo resta con el tiempo de inicio dando como resultado el tiempo final en mili-segundos.
Esto solo sirve para saber el tiempo que el programa tarda en calcular los meses establecidos y no el tiempo total que le tomo a todo el programa en ejecutarse, netbeans nos dice el tiempo total.
Para imprimir el tiempo utilizaremos las siguientes funciones para mili-segundos y segundos respectivamente:
System.out.println("El tiempo transcurrido es " + fin + " mili-segundos");
System.out.println("El tiempo transcurrido es " + fin/1000 + " segundo");
Utilizaremos el programa del conejo para probar las funciones anteriores, este programa utiliza la función de Fibonacci de recursividad, este programa trata de calcular el número de veces que se puede reproducir una pareja de conejos cada mes y seguir multiplicando el resultado cada mes continuamente, según el número de meses que uno haya establecido.
package
conejos;
import
javax.swing.JOptionPane;
public class
conejos {
double i, s, n, t;
public conejos(){
String suma =
JOptionPane.showInputDialog(null, "Escribe número de meses");
n=Integer.parseInt(suma);
// conversión de string a entero
}
public static void
main(String[] args){
double inicio =
System.currentTimeMillis();
//Toma el tiempo en mili-segundos, antes
de iniciar la operación
conejos d = new conejos();
d.t=1;
for
(d.i=2; d.i<=d.n; d.i++){
d.t=d.t*2;
System.out.println ("Número
total de parejas de conejos: "+d.t);
}
d.s = d.t * 2;
System.out.println ("\n Numero
total de parejas de conejos " + "\n en el mes número " + d.n +
". Es igual: " + d.t);
System.out.println ("\n El total de
conejitos en el los " + d.n + " meses es: " + d.s + " C:
");
double
fin = System.currentTimeMillis() - inicio;
//vuelves a tomar el tiempo
y le restas el inicio
System.out.println("El tiempo
transcurrido es " + fin + " mili-segundos");
//Informas el resultado en mili-segundos
System.out.println("El tiempo
transcurrido es " + fin/1000 + " segundo");
//o en segundos
}
}
Resultado de
24 meses:
run:
Número total
de parejas de conejos: 2.0
Número total
de parejas de conejos: 4.0
Número total
de parejas de conejos: 8.0
.
.
.
Número total
de parejas de conejos: 8388608.0
Número total
de parejas de conejos
En el mes número 24.0. Es igual: 8388608.0
El total de
conejitos en el los 24.0 meses es: 1.6777216E7 C:
El tiempo transcurrido
es 4105.0 mili-segundos
El tiempo
transcurrido es 4.105 segundos
BUILD SUCCESSFUL (total time: 5 seconds)
No hay comentarios.:
Publicar un comentario