La clase estándar Scanner La clase Scanner de Java provee

Anuncio
La clase estándar Scanner
La clase Scanner de Java provee métodos para leer valores de entrada
de varios tipos y está localizada en el paquete java.util. Los valores de
entrada pueden venir de varias fuentes, incluyendo valores que se entren por
el teclado o datos almacenados en un archivo.
Para utilizar esa clase tenemos que crear primero un objeto de ella
para poder invocar sus métodos. La siguiente declaración crea un objeto de la
clase Scanner que lee valores de entrada del teclado.
Scanner teclado = new Scanner(System.in);
El propósito de pasar a System.in como argumento es conectar o
establecer una relación entre el objeto tipo Scanner, con nombre teclado en la
declaración anterior, y el objeto System.in, que representa el sistema
estándar de entrada de información en Java. Si no se indica lo contrario, el
teclado es, por omisión, el sistema estándar de entrada de información en
Java.
Luego que se tenga un objeto de la clase Scanner asociado al sistema
estándar de entrada System.in, llamamos, por ejemplo, su método nextInt
para entrar un valor del tipo int. Para entrar otros valores de otros tipos de
datos primitivos, se usan los métodos correspondientes como nextByte o
nextDouble.
Método
nextByte()
nextDouble()
nextFloat()
nextInt()
nextLong()
nextShort()
next()
nextLine()
Ejemplo
byte b = teclado.nextByte();
double d = teclado.nextDouble();
float f = teclado.nextFloat();
int i = teclado.nextInt();
long l = teclado.nextLong();
short s = teclado.nextShort();
String p = teclado.next();
String o = teclado.nextLine();
Ejemplo:
Escriba una aplicación en Java que calcule y muestre el perímetro y
el área de un rectángulo, dados la longitud y anchura de él.
Algoritmo:
ENTRADA:
PROPOSITO:
SALIDA:
La longitud y anchura del rectángulo.
Calcular el perímetro y área del rectángulo.
El perímetro y área del rectángulo.
Pasos:
1. Considerar la Longitud y Anchura del rectángulo.
1.1 Longitud ← longitud correspondiente del rectángulo
1.2 Anchura ← anchura correspondiente del rectángulo
2. Calcular el perímetro y área del rectángulo.
2.1 Perímetro ← 2 * Longitud + 2 * Anchura
2.2 Área ← Longitud x Anchura
3. Mostrar resultados
3.1 Perímetro
3.2 Área
Copyright © 2008 CARIMOBITS
2
Código en Java:
/*
Programa Ejemplo de Java: Calcula y muestra el perímetro y área de
un rectángulo, dados la longitud y anchura del rectángulo.
*/
Archivo: RectanguloPA.java
import java.util.Scanner; //también se puede escribir import java.util.*;
class RectanguloPA { // comienza clase RectanguloPA
public static void main (String[] args) {// comienza método main
Scanner teclado = new Scanner (System.in);
System.out.println("Esta aplicacion solicita la longitud y
anchura de un rectangulo.");
System.out.println("Luego, calcula y muestra su perimetro y
area.");
System.out.println();
System.out.print("Entre la longitud del rectangulo: ");
double longitud = teclado.nextDouble();
System.out.print("Entre la anchura del rectangulo: ");
double anchura = teclado.nextDouble();
double perimetro = 2*longitud + 2*anchura;
double area = longitud * anchura;
System.out.println();
System.out.println("El perimetro del rectangulo es: " +
perimetro + " unidades.");
System.out.println("El area del rectangulo es: " + area + "
unidades cuadradas.");
}// termina método main
}// termina clase RectanguloPA
Copyright © 2008 CARIMOBITS
3
Leer cadenas de caracteres (objetos de la clase estándar Strings) como
datos de entrada es un poco más complicado que leer datos numéricos.
1. Para entrar solamente una palabra usamos el método next como se
ilustra en el ejemplo siguiente:
...
Scanner teclado = new Scanner(System.in);
System.out.print(“Entre sus primer nombre:”)
String nombre = teclado.next();
...
2. Para entrar una oración o frase que consista de varias palabras se usa
el método nextLine().
Ejemplo:
/*
*/
Programa Ejemplo de Java: Muestra una frase
Archivo: Frase.java
import java.util.*;
class Frase {// comienza clase Frase
public static void main (String[] args) {// comienza método main
Scanner teclado = new Scanner(System.in);
System.out.println();
System.out.print("Entre su frase preferida: ");
String frase = teclado.nextLine();
System.out.println();
System.out.println("Usted entró :" + frase);
}// termina método main
}// termina clase Frase
Copyright © 2008 CARIMOBITS
4
Ejercicios: Utilice la clase estándar Scanner de Java para entrar los
valores de entrada en cada uno de los siguientes ejercicios.
1. Escriba un programa que solicite la longitud de cada cateto de un
triángulo rectángulo, calcule y muestre la longitud de su hipotenusa.
2. Escriba una aplicacion que calcule y muestre las soluciones reales de
una ecuacion de la forma ax + bx + c = 0, donde a, b y c son numeros
reales, con a ≠ 0. Si la ecuacion no tiene soluciones reales, entonces la
aplicacion debe indicarlo. Haga uso de la formula cuadratica.
2
Algoritmo:
ENTRADA:
PROPÓSITO:
SALIDA:
las
Los valores de los coeficientes numéricos A,
B y C.
Calcular las soluciones reales de una ecuación
cuadrática con coeficientes reales, si las tiene.
Las soluciones reales de una ecuación cuadrática, si
tiene; de lo contrario, indicar que no las tiene.
Pasos:
1. Entrar los valores de A, B y C.
1.1 A ← coeficiente principal
1.2 B ← segundo coeficiente
1.3 C ← término constante
2.
Calcular el valor de Discriminante.
2.1 Discriminante ← B2 - 4AC
3.
Si
Discriminante≥0
3.1 Solución1 ←
3.2 Solución2 ←
entonces,
− B+
Discriminante
2A
− B−
Discriminante
2A
3.3 Mostrar Solución1
3.4 Mostrar Solución2
De otra forma,
3.5 Indicar que no hay soluciones reales.
Copyright © 2008 CARIMOBITS
5
3. Escriba una aplicacion que calcule y muestre el sueldo neto semanal de
un empleado si se sabe: las horas trabajadas, el sueldo por hora, tasa
de descuento del seguro social y tasa de descuento de contribucion
sobre ingresos. La aplicacion debe solicitar el nombre del empleado, la
cantidad de horas trabajadas en una semana, el sueldo por hora, la
tasa de descuento del seguro social y la tasa de descuento de la
contribucion sobre ingresos del empleado. Ademas, debe mostrar el
nombre del empleado y su sueldo neto semanal.
Copyright © 2008 CARIMOBITS
6
Descargar