Solución del examen 1

Anuncio
new 3
lunes, 16 de mayo de 2011 08:57 p.m.
// Respuestas al primer examen parcial:
// Ejercicio 1
import javax.swing.JOptionPane;
class EficienciaVehículo {
public static void main(String[] args) {
Double millasRecorridas = new Double(JOptionPane.showInputDialog("Escriba las millas
recorridas (0 para terminar)"));
do {
Double galonesConsumidos = new Double(JOptionPane.showInputDialog("Escriba los galones
consumidos"));
Double eficiencia = millasRecorridas/galonesConsumidos;
Double eficienciaConvertida = galonesConsumidos/millasRecorridas/0.01609344*3.78541178;
JOptionPane.showMessageDialog(null, new String().format("La eficiencia del vehículo es
%1$.2f mi/gal (equivalente a %2$.2f l/100km).", eficiencia, eficienciaConvertida));
millasRecorridas = new Double(JOptionPane.showInputDialog("Escriba las millas recorridas
(0 para terminar)"));
} while (millasRecorridas > 0);
}
}
-1-
new 3
lunes, 16 de mayo de 2011 08:57 p.m.
// Ejercicio 2
import javax.swing.JOptionPane;
class GlobosClimáticos {
public static void main(String[] args) {
String respuesta;
do {
int tiempoInicial;
do {
tiempoInicial = Integer.parseInt(JOptionPane.showInputDialog(null, "Digite tiempo
inicial (menor que 48):"));
} while (tiempoInicial>48);
int tiempoFinal;
do {
tiempoFinal = Integer.parseInt(JOptionPane.showInputDialog(null, "Digite tiempo final
(menor que 48):"));
} while (tiempoFinal>48);
int incremento = Integer.parseInt(JOptionPane.showInputDialog(null, "Digite tiempo
incremento:"));
double alturaMax = 0;
int tiempoMax = 0;
String tabla = "Globos climáticos\n\n";
int t = tiempoInicial;
while (t <= tiempoFinal) {
double altura = -0.12*Math.pow(t,4) + 12*Math.pow(t,3) - 380*Math.pow(t,2) + 4100*t +
220;
double velocidad = -0.48*Math.pow(t,3) + 36*Math.pow(t,2) - 760*t + 4100;
velocidad/= 3600; // La velocidad está en metros/hora y hay que convertirla a
metros/segundo
tabla+= "Tiempo: " + t + ",
Altitud (m): " + String.format("%.2f", altura) + ",
Velocidad (m/s): " + String.format("%.2f", velocidad) + "\n";
if (altura > alturaMax) {
alturaMax = altura;
tiempoMax = t;
}
t+= incremento;
}
tabla+= "\n\nLa altura máxima se da en el tiempo " + tiempoMax + " y su valor es " +
String.format("%.2f", alturaMax);
JOptionPane.showMessageDialog(null, tabla);
Object[] opciones = { "Sí", "No" };
respuesta = (String) JOptionPane.showInputDialog(null, "¿Desea imprimr otra tabla?",
"Globos climáticos", JOptionPane.QUESTION_MESSAGE, null, opciones, opciones[1]);
} while (respuesta.equals("Sí"));
}
}
-2-
new 3
lunes, 16 de mayo de 2011 08:57 p.m.
// Ejercicio 3
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
public class ProgramaFibonacci {
public static void main(String[] args) {
Integer cuantos = new Integer(JOptionPane.showInputDialog("¿Cuántos Fibonacci desea? (0
para terminar)"));
do {
Integer indice = 3;
Integer fAnterior = 1; // f(i-1)
Integer fTrasanterior = 1; // f(i-2)
// Título de la tabla y los dos primeros Fibonacci fijos.
String tabla="Serie de Fibonacci hasta "+cuantos+".\n\n1\t1\n2\t1\n";
// Comienza a calcular a partir del índice 3.
while (indice <= cuantos) {
// Cálculo f(i) = f(i-1) + f(i-2):
Integer fActual = fAnterior+fTrasanterior;
// Se agrega a la tabla
tabla+=indice+"\t"+fActual+"\n";
// Se aumentan los índices
indice++;
// Se actualiza el anterior y el trasanterior
fTrasanterior = fAnterior;
fAnterior = fActual;
}
JOptionPane.showMessageDialog(null, new JTextArea(tabla));
cuantos = new Integer(JOptionPane.showInputDialog("¿Cuántos Fibonacci desea? (0 para
terminar)"));
} while(cuantos != 0);
}
}
-3-
Descargar