Foros del Web » Programación para mayores de 30 ;) » Java »

Validar datos ingresados desde teclado

Estas en el tema de Validar datos ingresados desde teclado en el foro de Java en Foros del Web. Tengo el siguiente código que me pide un nombre y 3 calificaciones, ésto lo hace 3 veces y me imprime el nombre y promedio de ...
  #1 (permalink)  
Antiguo 18/03/2011, 10:26
 
Fecha de Ingreso: marzo-2011
Ubicación: Veracruz
Mensajes: 92
Antigüedad: 13 años, 1 mes
Puntos: 3
Validar datos ingresados desde teclado

Tengo el siguiente código que me pide un nombre y 3 calificaciones, ésto lo hace 3 veces y me imprime el nombre y promedio de cada uno, hasta ahi sin problemas.

Lo que quiero hacer es que si ingresa una calificacion mayor a 10 que me diga que no es valida y la vuelva a ingresar, tengo pensado que con un if pero el for avanzaría y terminaría ingresando solamente 2 calificaciones.

Lo mismo quisiera condicionar que solo se puedan ingresar númers.

Aqui el codigo espero puedan ayudarme:

Código:
import java.util.Scanner;
public class Exam2{
  
public static void main(String args[]){

String nombre[] = new String[3];
double calif[][] = new double[3][3];
int materias = 3;
double suma=0,promedio=0;
double califTotal=0;


for(int i=0;i<nombre.length;i++){
Scanner nom = new Scanner(System.in);

System.out.print("Escribe tu nombre:");
nombre[i] = nom.next();


for(int g=0;g<materias;g++){

Scanner c = new Scanner(System.in);

System.out.print("Calificacion:");
calif[i][g] = c.nextDouble();

}

}

for(int j=0;j<nombre.length;j++){

System.out.println("Tu nombre es:"+nombre[j]);

for(int h=0;h<materias;h++){

suma = suma + calif[j][h];

} 

promedio = suma/materias;

System.out.println("Tu promedio es:"+promedio+"\n");
promedio = 0;
suma = 0;
}

}

}
  #2 (permalink)  
Antiguo 18/03/2011, 11:28
Avatar de LordJhony  
Fecha de Ingreso: septiembre-2010
Mensajes: 472
Antigüedad: 13 años, 7 meses
Puntos: 24
Respuesta: Validar datos ingresados desde teclado

Muy sencillo en el for donde pides que se ingrese la calificacion pones un condicional if. Ahora bien dentro del condicional si es mayor a 10 simplemente le restas 1 a la variable que incrementa el ciclo.
  #3 (permalink)  
Antiguo 18/03/2011, 11:34
 
Fecha de Ingreso: marzo-2011
Ubicación: Veracruz
Mensajes: 92
Antigüedad: 13 años, 1 mes
Puntos: 3
Respuesta: Validar datos ingresados desde teclado

Cita:
Iniciado por LordJhony Ver Mensaje
Muy sencillo en el for donde pides que se ingrese la calificacion pones un condicional if. Ahora bien dentro del condicional si es mayor a 10 simplemente le restas 1 a la variable que incrementa el ciclo.
Ah ! tienes razón, lo del if esta bien entonces, solo se me había pasado en que si entra a esa condición que le reste 1 al ciclo, muy cierto... voy a probar. Gracias.

Pero para que ingrese solo valores numéricos?
  #4 (permalink)  
Antiguo 18/03/2011, 12:13
 
Fecha de Ingreso: marzo-2011
Ubicación: Veracruz
Mensajes: 92
Antigüedad: 13 años, 1 mes
Puntos: 3
Respuesta: Validar datos ingresados desde teclado

Solo metí el siguiente if y funciono muy bien:

if(comprobar<=10){
calif[i][g] = comprobar;
} else {
System.out.println("Ingresa una calificacion valida");
g -= 1;
}

Saludos.

Etiquetas: teclado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:47.