3URJUDPDFLyQ-DYD. 3UiFWLFD. -DYLHU*DUFtDGH-DOyQÂ -RVp,JQDFLR5RGUtJXH] $OIRQVR%UD]iOH]Â $OEHUWR/DU]DEDOÂ -HV~V&DOOHMDÂ -RQ*DUFtD

Documentos relacionados
Tema 4. Excepciones en Java

1. Cuántas sentencias hay en la secuencia principal del siguiente programa?

Guía - Taller # 2 (JAVA)

Lo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK.

TEMA 1. Introducción a la programación. CONSIDERACIONES GENERALES.

Flujos (streams) Programación. Licenciatura Lingüística y Nuevas Tecnologias Nadjet Bouayad-Agha

Introducción a Java LSUB. 30 de enero de 2013 GSYC

FACULTAD DE INGENIERÍA

Java desde Consola Utilizando Java sin Path

James Gosling, creador de Java

Constructores y Destructores

Práctica III: Streams, Readers y Writers

2. Estructura de un programa en Java

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

3UiFWLFD 3URJUDPDFLyQ -DYD

LA ESTRUCTURA DE DATOS PILA EN JAVA. CLASE STACK DEL API JAVA. EJEMPLO Y EJERCICIOS RESUELTOS. (CU00923C)

Metodología y Tecnología de la Programación

QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B)

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas

Tema 3. Aplicaciones de Tipo Consola

Entrada y Salida con Java

Tema 7.- Fundamentos de la Programación Orientada a Objetos

Tema: Introducción al IDE de Microsoft Visual C#.

Aquí se declaran los. Aquí se declaran los métodos de la clase. *Atributos de la clase

I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein Javier Navarro

CÁTEDRA DE LENGUAJE DE PROGRAMACIÓN JAVA 2014

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática

Test : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.

Para leer la entrada de consola, lo primero que se hace es construir un Scanner que este asociado al flujo de entrada estándar System.

FUNDAMENTOS DE INFORMÁTICA

Bibliografía (Java) Java: Introducción a Java

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

Clases en Java. Declaración de clases en Java 02/09/16. Ing. Roberto Martínez Román - public class Alumno { private int matricula;

Introduciendo datos desde el

Práctica 2: Java Remote Method Invocation (RMI)

Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos

Bloque II. Herramientas

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

Prof. Dr. Paul Bustamante

GUÍA DE ESTILO EN JAVA

Sensor de Temperatura utilizando el Starter Kit Javelin Stamp. Realizado por: Bertha Palomeque A. Rodrigo Barzola J.

Conceptos a tratar. Fundamentos de la Programación Orientada a Objetos Ampliación sobre clases y objetos

Bloque III. Herramientas

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros

Objetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)

TÉCNICAS DE PROGRAMACIÓN Lenguaje Java. Introducción a Java Daniel Finol

Excepciones y E/S Java y Servicios Web I Master en Ingeniería Matemática

Programación. Test Autoevaluación Tema 3

Ejercicios del tema 7: Clases y objetos

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.

Java Avanzado Facultad de Ingeniería. Escuela de computación.

Prof. Dr. Paul Bustamante

Java en 2 horas. Rodrigo Santamaría

class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida }

Programación Java. Práctica 11. Javier García de Jalón José Ignacio Rodríguez Alfonso Brazález Alberto Larzabal Jesús Calleja Jon García

Laboratorio. Instalación de Visual Studio Community. Back To Basics Instalando Visual Studio Community. Versión: 1.0.

Los caracteres de Java pueden agruparse en letras, dígitos, espacios en blanco, caracteres especiales, signos de puntuación y secuencias de escape.

Clases y objetos. Objeto Instancia de una clase: Unidad atómica que encapsula estado y comportamiento.

Introducción al lenguaje Java

Prof. Dr. Paul Bustamante

Ejercicios de evaluación de fundamentos de programación en Java

Ficheros y streams. Desde el punto de vista de Java, cada fichero no es más que una secuencia o flujo de bytes [stream].

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON

Tema: Introducción a Java y Netbeans

Derechos de Acceso: COMPOSICION

Introducción al lenguaje de programación java

U.T.4.EL ENTORNO DE DESARROLLO

Java Inicial (20 horas)

Variables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.

Introducción a la programación con C#.

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

1. Aplicaciones del J2SE SDK1.4.2 de Sun.

Sockets. Los sockets son un mecanismo de comunicación entre procesos que se utiliza en Internet.

- Compilar y ejecutar programas en Java - Estructura básica de una clase - El comando javac - El comando java - Introducción al IDE de desarrollo

Prof. Dr. Paul Bustamante

Programación orientada a objetos

Destrucción de objetos (I)

Normalmente, los programas son ejecutados de forma secuencial. Único flujo de control

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE CIENCIAS PRACTICA DE PROCESOS HERRAMIENTAS

Programación en Java. Hola Jesus. Primera clase del curso de Java

Repaso de las características más importantes de la programación Java y su adaptación a Android

Tema 7: Polimorfismo. Índice

PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

1. Qué tipos de relación hay entre las siguientes clases?

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

FAMILIARIZANDONOS CON JAVA

Introducción a Java LSUB. 15 de enero de 2015 GSYC

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Computación III. Objetivo de aprendizaje del tema

Problemática con la actualización de Java 7 update 45

Tipos DataInputStream/DataOutputStream: L/E de datos de tipo simple y Cadenas (Strings) ObjectInputStream/ObjectOutputStream: para persistencia de obj

Elementos de un programa en C

Introducción a la Programación Orientada a Objetos

Transcripción:

3UiFWLFD 3URJUDPDFLyQ-DYD San Sebastián, marzo 1999 -DYLHU*DUFtDGH-DOyQÂ -RVp,JQDFLR5RGUtJXH] $OIRQVR%UD]iOH]Â $OEHUWR/DU]DEDOÂ -HV~V&DOOHMDÂ -RQ*DUFtD

Informática 2: Práctica nº 4 página 1 ÍNDICE 1. Práctica nº 4...1 1.1 Ejercicio 1. Lectura de tu nombre desde teclado...1 1.2 Ejercicio 2. Leer una línea de una sola vez y partirlaen palabras...2 1.3 Ejercicio 3: Crear la clase Leer para hacer más sencilla la lectura de variables desde el teclado...2 1.4 Ejercicio 4: Crear la clase CuentaCorriente, que permita crear cuentas corrientes y hacer movimientos económicos...4 1. PRÁCTICA Nº 4 En esta cuarta práctica se van a realizar un ejercicio nuevo, más sencillo que los ejercicios de las anteriores semanas. Sin embargo, lo tendrás que hacer tú solo, partiendo de cero. Al igual que la semana pasada se utilizará una consola o ventana de MS-DOS para realizar los ejercicios de esta práctica. El directorio de la práctica se llamará G:\Inf2Prac04 y normalmente estará ya creado al empezar la práctica (si no lo estuviere deberás crearlo exactamente con el nombre indicado y avisar al responsable de la práctica para incluirte en la recogida). Esta semana también se recogerá la práctica. Es muy importante que todos los ficheros estén dentro del directorio G:\Inf2prac04; en otro caso los ficheros que no estén allí no podrán ser recogidos. 1.1 EJERCICIO 1. LECTURA DE TU NOMBRE DESDE TECLADO Crea un directorio llamado Ejer1, en el directorio de la práctica G:\Inf2Prac04. En este ejercicio se trata de hacer un programa de saludo un poco más amistoso que el Ejercicio 1 de la primera práctica. Aquel ejercicio te saludaba sin más. Éste te va a preguntar tu nombre y luego te saludará utilizando el nombre en el saludo. De paso así aprendemos a introducir variables y cadenas de caracteres desde el teclado. Este tema se trata con bastante detenimiento en el Capítulo 9 de Aprenda Java como si Estuviera en Primero. Esta semana empezaremos a aplicar ya algunas de las técnicas explicadas en ese capítulo. Comienza abriendo una ventana MS-DOS con Start/Programs/Command Prompt. En esta ventana ejecuta el comando g:. Ahora deberás ejecutar el fichero JDK117.bat, como en las semanas anteriores Ahora cambia el directorio activo al directorio de la práctica con el comando cd Inf2Prac04. Introduce ahora un fichero llamado Hola2.java por medio de Notepad, que contenga las siguientes sentencias: // fichero Hola2.java class Hola2 { public static void main(string [] args) throws IOException { System.out.print("Hola, Como te llamas? "); char c; String nombre=""; // read() devuelve un byte y por eso hay que hacer un cast while ( (c=(char)system.in.read())!= \r ) { nombre = nombre + c; System.out.println("Hola " + nombre + ". Como estas?"); // fin de main() // fin de la clase Hola2 Ya se puede compilar el fichero *.java del directorio actual, tecleando el comando: > javac *.java

Informática 2: Práctica nº 4 página 2 Ahora hay que enviar el fichero que contiene el método main(), esto es el fichero Hola2.class a la Java Virtual Machine. Recuerda que esto se hace con el comando: > java Hola2 Si todo ha ido bien el programa te preguntará tu nombre. Introdúcelo, pulsa Intro y observa el resultado, que deberá ser algo así como, Hola TuNombre. Como estas? En este ejercicio el programa ha tenido que leer tu nombre carácter a carácter, pues el método read() de la clase InputStream (a la que pertenece la variable static in de la clase System) sólo lee un carácter cada vez que es llamado. En realidad lee un entero tipo byte, y por eso hay hacer un cast para convertirlo en carácter. La lectura se detiene cuando se encuentra el carácter '\r', que se corresponde con la pulsación de la tecla intro o return. Esta técnica es demasiado molesta, y en el siguiente ejercicio aprenderás a leer toda una línea de una vez. 1.2 EJERCICIO 2. LEER UNA LÍNEA DE UNA SOLA VEZ Y PARTIRLAEN PALABRAS Crea un nuevo directorio llamado Ejer2 en el directorio G:\Inf2Prac04. Crea en él el siguiente fichero llamado Hola3.java. // fichero Hola3.java import java.util.stringtokenizer; class Hola3 { public static void main(string [] args) throws IOException { System.out.print("Hola, Como te llamas? "); String nombre=""; nombre = teclado.readline(); System.out.println("Hola " + nombre + ". Como estas?"+ \n ); // para partir la línea en palabras StringTokenizer st = new StringTokenizer(nombre); while (st.hasmoreelements()) { System.out.println(st.nextElement()); // fin de main() // fin de la clase Hola3 Ahora compila y ejecuta este programa. Prueba a introducir el nombre y los dos apellidos. Este programa no sólo lee el nombre (en realidad lee una línea completa), sino que además realiza una operación que tiene muchísimo interés: partir o trocear esa línea en palabras (tokens), utilizando los caracteres en blanco como separadores. Se utiliza para ello la clase StringTokenizer, del package java.util. Puedes observar las características de esta clase en la documentación de Java o en las páginas 130-131 de los Apuntes. Esta clase implementa la interface Enumeration, por lo que es posible utilizar los métodos hasmoreelements() y nextelement(), con los que ya estás familiarizado. Es muy interesante que consultes también la información disponible sobre las clases BufferedReader e InputStreamReader. 1.3 EJERCICIO 3: CREAR LA CLASE LEER PARA HACER MÁS SENCILLA LA LECTURA DE VARIABLES DESDE EL TECLADO La lectura de datos desde teclado (o desde fichero, que es muy similar) es bastante complicada en Java, como lo demuestra el ejemplo anterior. Una forma de simplificar un proceso que se una con

Informática 2: Práctica nº 4 página 3 tanta frecuencia es crear una clase con unos métodos static que permitan leer frases y partirlas, leer frases, leer valores int o leer valores double. Esta clase se llama Leer, y los métodos correspondientes leerfrasepartir(), leerfrase(), leerint() y leerdouble(). Crea un directorio llamado Ejer3 e introduce en ellos los ficheros Hola4.java y Leer.java que se muestran a continuación: // fichero Hola4.java import java.util.stringtokenizer; class Hola4 { public static void main(string [] args) throws IOException { // para leer una frase y partirla en componentes System.out.print("Hola, Como te llamas? "); String [] nombre; nombre = Leer.leerFrasePartir(); // para imprimir la línea en palabras System.out.println("Hola, Como estas? "); for (int i=0; i<nombre.length; i++) { System.out.println(nombre[i]); // para leer un entero System.out.print("Que edad tienes? "); int edad = Leer.leerInt(); System.out.println("Tienes " + edad + " years" ); // para leer un double System.out.print("Cuanto mides en metros? "); double altura = Leer.leerDouble(); System.out.println("Mides " + altura + " metros"); // fin de main() // fin de la clase Hola4 // fichero Leer.java import java.util.stringtokenizer; public class Leer { // método para leer frases y partirlas public static String [] leerfrasepartir() throws IOException { String frase=""; frase = teclado.readline(); // para partir la frase en palabras StringTokenizer st = new StringTokenizer(frase); String [] palabras = new String[st.countTokens()]; int i=0; while (st.hasmoreelements()) { palabras[i++] = new String(st.nextToken()); return palabras;

Informática 2: Práctica nº 4 página 4 // método para leer frases public static String leerfrase() throws IOException { String frase=""; frase = teclado.readline(); return frase; // método para leer enteros public static int leerint() throws IOException { int num=0; num = Integer.valueOf(teclado.readLine()).intValue(); return num; // método para leer doubles public static double leerdouble() throws IOException { double d=0.0; d = Double.valueOf(teclado.readLine()).doubleValue(); return d; // fin de la clase Leer Compila y ejecuta estos programas. La clase Leer podrá ser utilizada en otros ejercicios, siempre que se necesite leer texto o variables numéricas desde teclado. 1.4 EJERCICIO 4: CREAR LA CLASE CUENTACORRIENTE, QUE PERMITA CREAR CUENTAS CORRIENTES Y HACER MOVIMIENTOS ECONÓMICOS Crea un nuevo directorio llamado Ejer4. La clase CuentaCorriente la tendrás que crear partiendo de cero y utilizando la información sobre su funcionalidad que se da a continuación. En este ejercicio deberás crear el software necesario para gestionar un banco. El programa principal compilado está definido en el fichero UnBancoModelo.class que utiliza la clase CuentaCorrienteModelo definida en el fichero CuentaCorrienteModelo.class. Copia estos ficheros del Web de la asignatura o del disco Q:\\Infor2\Prac04\Ejer4. Utilizando el comando java ejecútalos y utiliza este ejecutable como modelo para el programa que tú deberás realizar. Tus ficheros se deberán llamar UnBanco.java y CuentaCorriente.java. La clase CuentaCorriente deberá disponer de las siguientes variables miembro: private static double interes = 0.04; private static int numcuentas = 0; private double saldo; private long numerocuenta; private String nombrecliente; cuyo significado es inmediato. Observa que todas las variables son privadas y que dos de ellas son static. Deberá también disponer de los siguientes métodos, asimismo con un significado que no requiere muchas explicaciones: // constructor public CuentaCorrienteModelo(String nombrec, long numeroc, double unsaldo) {... // métodos public double getsaldo() {... public String getnombrecliente() {... public long getnumerocuenta() {... public static long getnumerodecuentas() {... public static double getinteres() {... protected static void setinteres(double uninteres) {...

Informática 2: Práctica nº 4 página 5 public void ingreso(double cantidad) {... public double pagointereses(int meses) {... public double pago(double cantidad) {... public double transferencia(cuentacorriente to, double cantidad) {... La siguiente figura muestra el comienzo de la ejecución del programa, en el que se presentan las distintas opciones y el usuario decide crear varias cuentas corrientes (en atención a las máquinas fotocopiadoras, a las que se les da bastante mal las zonas amplias de color negro, la ventana de MS- DOS se ha definido para que tenga fondo blanco y letras negras): Figura 1. Menú inicial del Banco, con apertura de dos cuentas. Observa que para crear una cuenta el usuario es requerido por el programa para que indique el saldo inicial y su nombre y apellidos. Sin embargo, el número de cuenta lo asigna el programa automáticamente como un entero entre 0 y 1000, elegido de modo aleatorio. Es muy importante realizar este ejercicio incrementalmente: primero se programa el menú inicial con las distintas opciones, luego la creación de cuentas corrientes, después la información general sobre todas las cuentas corrientes, y así sucesivamente, no pasando al siguiente apartado mientras que el anterior no funcione correctamente. Esta ejercicio es también bastante largo y difícil. No te desmoralices si no te sale a la primera, si no lo puedes terminar o si necesitas ayuda. Como la semana pasada, si te sale bien, habrás dado un paso de gigante hacia el sobresaliente!