Я обладаю этим маленьким кодом в java/estoy начиная изучать /
package com.switchtuto;
import java.util.Scanner;
public class switchcase2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("menu de opciones");
System.out.println("1: Sumar");
System.out.println("2: Restar");
System.out.println("3: Multiplicar");
System.out.println("4: Dividir");
System.out.println();
System.out.println("ingrese su opcion");
int opcion = scanner.nextInt();
if(opcion>=1 && opcion<=4){
System.out.println("Ingrese el primer numero");
int x = scanner.nextInt();
System.out.println("Ingrese el segundo numero");
int y = scanner.nextInt();
int resultado = 0;
switch (opcion) {
case 1:
resultado= x+y;
break;
case 2:
resultado = x-y;
break;
case 3:
resultado = x*y;
break;
case 4:
resultado =x/y;
break;
default:
System.out.println("Tu Eres Loco");
break;
}
System.out.println("Resultado:");
System.out.println(resultado);
}
}
}
и я хотел бы, чтобы программа не показала сообщения прошения числа, когда случай будет default, потому что сначала он просит числа и потом размещенный любое число показывает предупреждение.
Конечный код:
package com.paquetes;
import java.util.Scanner;
public class switchcase2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("menu de opciones");
System.out.println("1: Sumar");
System.out.println("2: Restar");
System.out.println("3: Multiplicar");
System.out.println("4: Dividir");
System.out.println();
int opcion=0,x=0,y=0,resultado=0;
do
{
System.out.println("Ingrese Opción Válida");
opcion = scanner.nextInt();
}while((opcion<1) || (opcion>4));
System.out.println("Ingrese el primer numero");
x = scanner.nextInt();
System.out.println("Ingrese el segundo numero");
y = scanner.nextInt();
switch (opcion) {
case 1:
resultado= x+y;
break;
case 2:
resultado = x-y;
break;
case 3:
resultado = x*y;
break;
case 4:
resultado =x/y;
break;
default:
System.out.println("Tu Eres LOCO5");
break;
}
System.out.println("Resultado:");
System.out.println(resultado);
}
}
Ты мог бы использовать Intrucción делать пока (do while), чтобы санкционировать ввод выбора и он не выйдет из цикла пока выбор был между 1 и 4 и чтобы избегать того, чтобы была приведена к сбою программа Exceptions как NumberFormatException
, добавлять один try{ } catch(){}
int opcion=0,x=0,y=0,resultado=0;
do
{
System.out.println("Ingrese Opción Válida");
try
{
opcion = Integer.parseInt(scanner.next());
}
catch(NumberFormatException ex){
System.out.println("No es Número , Verificar su Entrada "+ ex.getMessage());
}
}
while(opcion<1 || opcion >4);
// Verifico si no está en el rango si retorna verdadero regresa al hacer
//luego solicito números si sale del ciclo es porque tengo una opción correcta
System.out.println("Ingrese el primer numero");
x = scanner.nextInt();
System.out.println("Ingrese el segundo numero");
y = scanner.nextInt();
switch (opcion) {...}
System.out.println("Resultado " + resultado);
Это решение твоей проблемы, на основании анализа твоего кода.
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("menu de opciones");
System.out.println("1: Sumar");
System.out.println("2: Restar");
System.out.println("3: Multiplicar");
System.out.println("4: Dividir");
System.out.println();
System.out.println("ingrese su opcion");
int opcion = scanner.nextInt();
if(opcion>=1 && opcion<=4){
System.out.println("Ingrese el primer numero");
int x = scanner.nextInt();
System.out.println("Ingrese el segundo numero");
int y = scanner.nextInt();
int resultado = 0;
switch (opcion) {...}
System.out.println("Resultado:" + resultado);
}else{
System.out.println("Tu Eres Loco");
}
}
если entendГ - ты хочешь твой вопрос, чтобы, если пользователь помещает различное число 1,2,3, или 4 не показал сообщения прошения nГєmeros, так ли это ты мог бы помещать это в if
System.out.println("ingrese su opcion");
int opcion = scanner.nextInt();
//inicializo y declaro las varibles
int x = 0, y = 0, resultado = 0;
//si es opcion valida pido los valores por teclado
if (opcion >= 1 && opcion <= 4) {
System.out.println("Ingrese el primer numero");
x = scanner.nextInt();
System.out.println("Ingrese el segundo numero");
y = scanner.nextInt();
}
switch (opcion) { //codigo que ya tienes
}