Download Temas: Introducción al ambiente Java

Document related concepts
no text concepts found
Transcript
Facultad de Ingeniería
Escuela de Ingeniería de Sistemas y Computación
Algoritmia y programación
LABORATORIO No.2
Temas: Introducción al ambiente Java
Objetivos:
• Identificar la estructura básica de un programa en Java, siguiendo la metodología utilizada en el curso y el
enfoque OO.
• Introducir al estudiante en el ciclo de vida de un programa en Java: edición, compilación, depuración y
ejecución.
• Familiarizar al estudiante en la identificación de errores sintácticos comunes en un programa de Java,
así como también en el ambiente de desarrollo del Java y su documentación.
• Aprender a codificar los primeros programas en Java, utilizando instrucciones de lectura y escritura dadas por las
clases JOptionPane y System.
Metodología:
Se debe elaborar un informe del trabajo realizado, en él debe describir cada actividad que desarrolle y
responder a las preguntas. El laboratorio debe ser realizado en grupos de máximo 3 personas.
•
Ejecutando Programas Java.
Para desarrollar programas en Java y luego ejecutarlos, Usted necesita obtener primero una versión del kit de
desarrollo
de
Java
que
distribuye
libremente
Sun
y
que
se
encuentra
disponible
en:
http://java.sun.com/j2se/1.4.2/download.html
Asegúrese de descargar el Java 2, Standar Edition (J2SE) que aplique a su sistema operativo (Sun provee
la plataforma Java 2 para Windows, Linux y Solaris, si Usted tiene otro sistema operativo, debe verificar que el
Kit de desarrollo esté disponible).
1. (0,3 puntos) Busque la documentación de las clases String, System y JOptionPane y escriba cuál es su utilidad.
Enumere además algunos de los atributos y métodos de estas clases y para qué sirven.
2. (0,5 puntos) Miremos nuestro primer programa en lenguaje Java
public class PrimerProgramaJava{
public static void main(String a[]){
System.out.println(“Este es mi primer programa en Java!”);
System.exit(0);
}
}
a)
Modifique el programa anterior de tal manera que pueda escribir tres o más mensajes, incorporando
en el uso de \n (salto de línea) y \t (tabulación) en la salida de resultados. Ensaye la siguiente instrucción:
System.out.println(“Bienvenidos al curso \n de Algoritmia y Programación \t usando Java”);
b)
Escriba una clase Java de nombre Dirección.java que produzca la siguiente salida:
Inicie en la Universidad del Valle
Tome la Calle 5 hacia el norte.
Tome la carrera primera, también hacia el norte.
Al llegar a la autopista suroriental tome esta en dirección Oriente.
Siga hacia sur hasta llegar a la calle 5.
Al pasar Unicentro, Usted ha llegado de nuevo a Univalle.
c)
Escriba un programa en Java que permita producir una descripción de datos sobre Usted, así:
Nombre: Juan Valdes
Sexo: Masculino
Fecha Nacimiento: 15/02/1985
Teléfono: 5519876
Gustos: natación, buceo, voleibol y física cuántica
3. (0,5 puntos) Una Forma de Ingresar Datos en Java
• Digite el siguiente programa:
import javax.swing.JOptionPane;
public class SegundoPrograma
{
public static void main(String a[])
{
String texto=JOptionPane.showInputDialog("Digite un Texto en seguida: ");
System.out.println(texto);
System.exit(0);
}
}
Guárdelo como un archivo de texto sin formato, con el nombre SegundoPrograma.java. Compílelo con la
siguiente instrucción javac SegundoPrograma.java y ejecútelo con la instrucción: java SegundoPrograma
en la línea de comandos. Al ejecutar el programa aparece una pequeña ventana como la que se muestra a
continuación, en la cual solicita un dato. En el campo de texto que aparece con fondo blanco digite su nombre
completo y posteriormente haga click en el botón aceptar que aparece debajo del área de texto.
o
Indique qué hace el programa a continuación y describa qué hace cada una de las instrucciones
dentro de él.
4. (0,3 puntos) Modifique el programa anterior de tal manera que permita al usuario ingresar varios mensajes
utilizando el componente JOptionPane y que permita mostrarlos en la pantalla. (No use ciclos).
5. (0,5 puntos) Otra Forma de Presentar Resultados en Java.
Copie el siguiente programa, compílelo y ejecútelo.
import javax.swing.JOptionPane;
public class TercerPrograma{
public static void main(String a[ ]){
String datoE = JOptionPane.showInputDialog("Digite Abajo su Nombre");
JOptionPane.showMessageDialog(null, "Cadena digitada = \n"+ datoE);
System.exit(0);
}
}
Al ejecutar el programa debe aparecer una ventana, donde se solicita el ingreso de una cadena de texto.
Digite nuevamente su nombre completo y presione el botón aceptar. Debe mostrarse una nueva ventana con
el mensaje Nombre digitado = Rafael Candelo. Si presiona el botón aceptar, retornará al sistema.
Describa qué hace cada una de las instrucciones dentro del programa. ¿Qué diferencia existe entre éste
programa y el del punto anterior?
6. (0,4 puntos) Modifique el programa anterior de tal manera que permita al usuario ingresar tres mensajes a través
del componente JOptionPane y que permita mostrar esos mismos a través de otro componente JOptionPane.
7. (0,3 puntos) Algunas Instrucciones Básicas en Java
Esta sección presenta varios ejercicios que ilustran algunas instrucciones básicas del lenguaje. Veamos el
siguiente ejercicio:
import javax.swing.JOptionPane;
public class CuartoPrograma{
public static void main(String args[]){
/* declaro las variables */
int n = Integer.parseInt (args [0]);
int n2 = n * n; // Calculo el cuadrado del numero que entró
System.out.println(n + “ elevado al cuadrado es “+ n2);
System.exit(0);
}
}
•
¿Con qué nombre debo guardar el archivo de texto que contiene el ejercicio?
•
Al ejecutar el programa con la siguiente instrucción :
java CuartoPrograma 10
Aparece el mensaje: 10 elevado al cuadrado es 100 tal como se muestra en la figura:
8. (0,5 puntos) El siguiente programa permite leer dos números enteros y mostrarlos a través de un
componente JOptionPane de salida, pero no lo está haciendo puesto que presenta errores de compilación
que usted(es) debe(n) corregir. Indique cuáles son los errores de compilación, una vez encontrados corrija
el programa adjuntándolo al informe de su laboratorio.
import javax.swingJoptionpane;
public class QuintoPrograma {
public static void main(string arg[]){
int nro1 = Integer.parseint(JOptionPaneShowInputDialog
("Digite el valor (entero) del Primer Numero!"));
int nro2 = Integer.parseInt(JOptionPane.showInputDialog
("Digite el (entero) del Segundo Numero!"));
int suma = numero1 + numero2;
JOptionPane.showMessageDialog(null, "Los valores digitados son " +
"num1 + " y " + num2 + "/n/n La suma = ");
System.exit(0);
}
}
•
¿Cómo puedo mostrar el valor de la variable suma (el resultado de nro1 más nro2)?.
9. (0,5 puntos) Modifique CuartoPrograma para que permita entrar datos tipo double (reales). Utilice componentes
JOptionPane tanto para el ingreso del dato real como para presentar el resultado. AYUDA: la instrucción
Integer.parseInt permite convertir una cadena de texto a un entero. Para convertir una cadena de texto a un real
tipo double debe utilizar la instrucción Double.parseDouble. Ejecute el programa con los valores 10.1 y -5.75
como datos de ingreso. Que resultado obtiene?
10. (0,5 puntos) Conceptos Básicos en la solución de Problemas.
Copie las siguientes dos
clases en archivos separados y utilizando como nombres de los archivos
SumaEnteros.java y UsaSumaEnteros.java respectivamente y compílelas.
Ejecute la clase principal (UsaSumaEnteros) con la instrucción:
java UsaSumaEnteros
Indique qué hace el programa y describa qué hacen cada una de las instrucciones tanto de la clase
SumaEntero.java y UsaSumaEnteros.java . Inserte los comentarios antes de cada instrucción dentro del
programa, compílelo nuevamente y ejecútelo con los mismos datos. ¿Cambió el resultado?
public class SumaEnteros{
static int numero1, numero2, resultadoSuma;
public static void sumarEnteros(){
resultadoSuma = numero1 + numero2;
}
}
import javax.swing.JOptionPane;
public class UsaSumaEnteros{
static int numero1,numero2;
public static void main(String a[]){
numero1= Integer.parseInt(JOptionPane.showInputDialog("Digite el primer valor entero!"));
numero2 = Integer.parseInt(JOptionPane.showInputDialog("Digite el segundo valor entero!"));
SumEnteros.numero1=numero1;
SumEnteros.numero2=numero2;
SumEnteros.sumarEnteros();
JOptionPane.showMessageDialog(null, "La suma de "+SumEntero. numero1 +
" y " + SumaEnteros.numero2 + " es: " + SumaEnteros.resultadoSuma);
System.exit(0);
}
}
Este programa está compuesto por una clase principal UsaSumaEnteros y una clase base SumaEnteros,
además usa las clases System, JOptionPane e Integer. La clase JOptionPane se utiliza a través de sus
métodos showInputDialog para ingresar datos y showMessageDialog para mostrar resultados. El modelo de
objetos de la aplicación anterior es el siguiente:
La figura anterior ilustra el modelo de clases del problema. UsaSumaEnteros, es la clase principal ya que contiene
el método main(). Esta clase usa la clase SumaEnteros, los métodos showInputDialog() y showMessageDialog()
de la clase JOptionPane, el método de parseInt() de la clase Integer y el método exit() de la clase System. Este
modelo corresponde a la siguiente formulación de problema: “Calcular y escribir la suma de dos números enteros
ingresados por el usuario”
11. (0,4 puntos) Realice una nueva aplicación tomando como base la aplicación del punto anterior de tal
manera que, permita leer 3 valores enteros y calcule y muestre su suma y el producto.
12. (0,3 puntos) Otro tipo de programas: Los Applets
Copie el siguiente programa Java tipo applet llamado PrimerApplet y compílelo, copie el programa HTML
en un archivo con el nombre PrimerApplet.html. Una vez esté compilado el archivo Java, se abre el archivo
primerApplet.html con un navegador o browser.
import java.awt.Graphics;
import java.applet.Applet;
public class PrimerApplet extends Applet
{
public void paint(Graphics g)
{
String mensaje= “Bienvenidos al curso Algoritmia y Programación”;
g.drawString(mensaje, 50, 50);
}
}
<HTML>
<APPLET CODE = ”PrimerApplet.class”
width =”450”, height = “200”>
</APPLET>
</HTML>
Observe que en un programa applet se presentan los resultados en pantalla, donde en lugar de utilizar la instrucción
System.out.println se usa g.drawString. También se puede utilizar JOptionPane. por ejemplo se dibuja el mensaje
“Bienvenidos al curso Algoritmia y Programación” en las posición 50, 50 dado en píxeles. La salida puede
presentar la siguiente apariencia en el navegador Netscape y en AppletViewer: