entrada de datos
TRANSCRIPT
![Page 1: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/1.jpg)
Entrada de datos
María Luisa Velasco Ramírez
![Page 2: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/2.jpg)
• En java la entrada, al igual que la salida de realiza mediante flujos, por flujo se entiende a las secuencias de datos que provienen desde una fuente, como por ejemplo el teclado. “Los flujos actúan como intermediarios entre el programa y el origen o destino de la información que éste lee o escribe en el flujo y puede hacer abstracción sobre la naturaleza de la fuente”.
![Page 3: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/3.jpg)
• Para poder introducir datos mediante flujos utilizaremos la biblioteca java.io, esta será declarada al principio antes de la clase, y la sintaxis es de la siguiente forma:
» import java.io.*;
![Page 4: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/4.jpg)
• Un flujo (stream) es una conexión a un fuente o un destino de datos
• Hemos visto como se puede imprimir un dato a la pantalla mediante la instrucción System.out.println()
• System.out es un ejemplo de un flujo estándar de salida (outstream)
• También hay un flujo estándar de entrada (instream) llamado System.in
![Page 5: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/5.jpg)
• Con el flujo estándar de entrada System.in sólo podemos leer caracteres:
char c = (char)System.in.read();
![Page 6: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/6.jpg)
• //leyendo caracteres• import java.io.*;• public class Letras• {• public static void main(String argS[]) throws IOException • {• char primero, ultimo;• • System.out.println("Introduzca su primera y ultima inicial:");• System.out.flush();• primero = (char)System.in.read();• ultimo = (char)System.in.read();• System.out.print("hola,"+primero+"."+ ultimo+"\n");• } //cierra main• } //cierra class
![Page 7: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/7.jpg)
• La entrada de datos en Java se efectúa mediante la lectura de bytes, la entrada básica de suele realizarse mediante el método readLine () que pertenece a la clase BufferedReader, el cual se encarga de leer una secuencia de caracteres y devuelve una cadena.
• Para esto se debe construir un objeto de la clase BufferedReader sobre otro de la clase InputStreamReader el cual debe de estar asociado a System.in, mismo que se va a encargar de convertir a cadena los bytes leídos desde el teclado. Nos quedará algo de la siguiente forma.
![Page 8: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/8.jpg)
• BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));
![Page 9: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/9.jpg)
• Donde la palabra entrada puede ser sustituida por otra que el programador considere a su gusto.
![Page 10: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/10.jpg)
• Lectura de una cadena y conversión de la cadena en número. Cuando tratamos con valores numéricos de tipo int o long aplicaremos los siguientes métodos que proporcionan un mecanismo de conversión adecuado.
![Page 11: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/11.jpg)
• Integer.parseInt Integer.parseLong
• También está disponible: parseDouble()
![Page 12: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/12.jpg)
• //Leyendo enteros• int dato;• // creando un objeto llamado entrada especializado en
capturas• BufferedReader entrada = new BufferedReader (• new InputStreamReader(System.in));• System.out.println("Introduzca un dato entero:");• System.out.flush();• dato=Integer.parseInt(entrada.readLine());• System.out.print("hola,el dato que escribiste es:
"+dato+".!\n");
![Page 13: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/13.jpg)
• import java.io.*;• public class EnteroDouble{• public static void main (String a[]) throws IOException {• • double dato;• // creando un objeto llamado entrada especializado en capturas
• BufferedReader entrada = new BufferedReader (• new InputStreamReader(System.in));• System.out.println("Introduzca un dato double:");• System.out.flush();• dato=Double.parseDouble(entrada.readLine());• System.out.print("hola,el dato que escribiste es: "+dato+"\n");
• }• }
![Page 14: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/14.jpg)
Ejercicio
• Repetir el ejercicio :• Elaborar un programa en Java para calcular el
promedio de calificaciones de un estudiante que cursa 5 experiencias educativas, debe incluir el método constructor que establezca el nombre del alumno. Sólo que ahora en el método calcular promedio mediante un for van a leer cada una de las 5 calificaciones (de tipo entero).
![Page 15: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/15.jpg)
• Leyendo cadenas de caracters
• String nom;
• BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));
• // capturando datos
• System.out.println("dame nombre: ");
• nom=teclado.readLine();
![Page 16: Entrada De Datos](https://reader036.vdocumento.com/reader036/viewer/2022082704/558e6c091a28ab7d028b46a5/html5/thumbnails/16.jpg)
• //Leyendo Float y Double• double base, altura;• Float d;• BufferedReader entrada = new BufferedReader (• new InputStreamReader(System.in));• System.out.println("Base del Triangulo:");• System.out.flush();• d= Float.valueOf(entrada.readLine()); //Double.valueOf(entrada.read..• base= d.floatValue(); //base=d.doubleValue();• //Ahora se pide la altura• System.out.println("Altura del Triangulo:");• System.out.flush(); • d =Float.valueOf(entrada.readLine());• altura=d.floatValue();• System.out.print("hola, el area es = "+base*altura/2);