01 abril, 2021

JAVA - Generar números desde x a z usando diferentes tipos de ciclos

El siguiente ejemplo nos envía Pedro Coz. Diseñe un programa en java que despliegue una secuencia de números desde x a z, utilizando diferentes tipos de ciclos. Validar que x<=z, solo números enteros y no caracteres extraños.

Menú:

1. Realizar despliegue mediante for

2. Realizar despliegue mediante while

3. Realizar despliegue mediante do-while

Ingresa un número para inicializar la secuencia: 10

Ingresa un número para inicializar la secuencia: 20

Resultado usando for: 10 11 12 13 14 15 16 17 18 19 20


Código


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
import java.util.*;

public class Ejemplo5 {

	// Método que valida el ingreso de un valor número positivo
	private static int ingresarNumero(Scanner sc, String texto) {
		int num = 0;
		while (true) {
			try {
				System.out.print("Ingresa un número para " + texto + " la secuencia: ");
				num = sc.nextInt();
				if (num < 0) {
					throw new Exception("ERROR: No se aceptan números negativos: " + num);
				} else {
					break;
				}
			} catch (InputMismatchException e) {
				System.err.println("ERROR: Solo se aceptan números: " + sc.next());
			} catch (Exception e) {
				System.err.println(e.getMessage());
			}
		}
		return num;
	}

	// Método principal que lanza la aplicación
	public static void main(String[] args) {
		// Declaración de variables locales
		Scanner sc = new Scanner(System.in);
		int opcion, num1, num2;
		do {
			System.out.println("Programa de evaluación de números");
			System.out.println("+----------------------------------+");
			System.out.println("|               Menú   	           |");
			System.out.println("+----------------------------------+");
			System.out.println("1.--------Secuencia con método While");
			System.out.println("2.-----Secuencia con método Do-while");
			System.out.println("3.----------Secuencia con método For");
			System.out.println("4.----------------Salir del programa");
			System.out.print("\nSelecione la opción deseada: ");
			opcion = sc.nextInt(); // Lee la opción
			switch (opcion) { // Según sea la opción seleccionada
			case 1:
				System.out.println("**Seleccionaste secuencia de números con While**");
				while(true) { // Mientras el valor inicial sea menor al final
					num1 = ingresarNumero(sc, "inicializar"); // Lee el valor inicial
					num2 = ingresarNumero(sc, "finalizar"); // Lee el valor final
					if (num1 < num2) { // Si el valor inicial es menor al final
						System.out.print("Resultado: "); // Muestra el resultado
						while (num1 <= num2) { // Mientras el valor inicial sea menor o igual al final
							System.out.print(num1 + " "); // Imprime el valor
							num1++; // Incrementa el valor en 1
						}
						break; // Corto el ciclo
					} else
						System.err.println("El valor inicial '" + num1 + "' debe ser menor al final '" + num2 + "'");
				}
				break; // Termino el switch
			case 2:
				System.out.println("**Seleccionaste secuencia de números con Do-While**");
				while(true) {
				num1 = ingresarNumero(sc, "inicializar");
				num2 = ingresarNumero(sc, "finalizar");
					if (num1 < num2) {
						System.out.print("Resultado: ");
						do {
							System.out.print(num1 + " ");
							num1++;
						} while (num1 <= num2);
						break; // Corto el ciclo
					} else
						System.err.println("El valor inicial '" + num1 + "' debe ser menor al final '" + num2 + "'");
				}
				break; // Termino el switch
			case 3:
				System.out.println("**Seleccionaste secuencia de numeros con For**");
				while(true) {
				num1 = ingresarNumero(sc, "inicializar");
				num2 = ingresarNumero(sc, "finalizar");
					if (num1 < num2) {
						System.out.print("Resultado: ");
						for (int i = num1; i <= num2; i++) {
							System.out.print(i + " ");
						}
						break; // Corto el ciclo
					} else
						System.err.println("El valor inicial '" + num1 + "' debe ser menor al final '" + num2 + "'");
				}
				break; // Termino el switch
			default:
				System.out.println("Ingrese 1, 2, 3 o 4");
			}// Fin de switch

			System.out.println("\n");
		} while (opcion != 4);
		System.out.println("\nAquí termina el programa. Muchas gracias y que tenga un lindo día.");
	}// Fin del main

}// Fin de la clase


Programa



DESARROLLO TUS ALGORITMOS 🔥🔥


✅ 1. Envía tu algoritmo.
✅ 2. Indica en qué lenguaje de Programación lo deseas.
✅ 3. Para qué fecha lo quieres.
✅ 4. De que país eres (para tu forma de pago)
✅ 5. También se desarrollan al momento.
✅ 6. Los 3 primeros ejercicios son gratis.
🔸 Explico cada ejercicio que desarrollo en el código.

No hay comentarios, ¡cuéntame algo!

Me gustaría saber tu opinión. ¡Saludos!