1
Aprender a programar desde cero / Java Captura por teclado sin crear una variable validar la letra del nif o dni
« en: 07 de Febrero 2017, 12:32 »
El título del tema es ortopédico, perdón.
En la asignatura de Programación me piden, en un ejercicio, en primer lugar que cree una clase Alumno con sus atributos y sus setters y getters. En uno de los setters, que establece el NIF de un alumno, debo comprobar que la letra es correcta. Hasta ahí todo correcto. A continuación se me pide:
Es aquí donde me surge el problema, ya que no consigo dilucidar cómo puedo pasar el método calcularLetra al NIF introducido sin almacenar en una variable la entrada por teclado. O, mejor dicho, ya que necesito hacer varias operaciones con el NIF (por un lado sacar el número para enviárselo al método y, por otro lado, calcular cuál es el caracter de la posición 8 ) , cómo podría realizarlas todas pidiendo el NIF una sola vez.
Este problema me surge, por cierto, por la siguiente frase del enunciado:
que si no me equivoco hace referencia a que en el código que pego a continuación, no se me permite crear la variable "nif".
Agradecería cualquier pista sobre el tema, ya que hago Programación a distancia y la docencia brilla por su ausencia.
En la asignatura de Programación me piden, en un ejercicio, en primer lugar que cree una clase Alumno con sus atributos y sus setters y getters. En uno de los setters, que establece el NIF de un alumno, debo comprobar que la letra es correcta. Hasta ahí todo correcto. A continuación se me pide:
Citar
Crea otra clase que se llamará EntradaAlumnos, esta clase tendrá un método main donde se declararán 2 objetos de la clase Alumno, uno de ellos llamado alumno1 se inicializarán todos sus atributos a través de la entrada por teclado de esos datos, sin utilizar variables intermedias locales del método main, el otro objeto se instanciará y llenará a través de variables locales que se han declarado en el método main, usando para inicializar el objeto alumno2 el constructor en el que se pasan todos los parámetros.
Es aquí donde me surge el problema, ya que no consigo dilucidar cómo puedo pasar el método calcularLetra al NIF introducido sin almacenar en una variable la entrada por teclado. O, mejor dicho, ya que necesito hacer varias operaciones con el NIF (por un lado sacar el número para enviárselo al método y, por otro lado, calcular cuál es el caracter de la posición 8 ) , cómo podría realizarlas todas pidiendo el NIF una sola vez.
Este problema me surge, por cierto, por la siguiente frase del enunciado:
Citar
sin utilizar variables intermedias locales del método main
que si no me equivoco hace referencia a que en el código que pego a continuación, no se me permite crear la variable "nif".
Código: [Seleccionar]
import java.util.Scanner;
public class EntradaAlumnos
{
public static void main(String[] args) {
Alumno alumno1 = new Alumno();
System.out.println("NIF del alumno: ");
Scanner sc = new Scanner(System.in);
String nif = sc.nextLine();
System.out.println("NIF: " + nif);
System.out.println("Letra calculada: " + alumno1.calcularLetra (nif.substring(0, 8)));
System.out.println("Letra introducida: " + nif.charAt(8));
}
}
Agradecería cualquier pista sobre el tema, ya que hago Programación a distancia y la docencia brilla por su ausencia.