7 problemas de "Estructuras de Secuencia" resueltos en consola en Java
Tags: java, consola, estructurasdesecuencia
Published: 2021-08-27 08:03:39

¡Hola, coders! En esta oportunidad les voy a compartir 7 ejercicios resueltos en Java sobre Estructuras de Secuencia, para todos quienes recién están empezando en el mundo de la programación. Saludos y que tenga un buen día.

**Problema 1**

```java
package problemas_resueltos;

import java.util.*;

/**
 * El cálculo del pago mensual de un empleado de una empresa se efectúa de la
 * siguiente manera: el sueldo básico se calcula en base al número total de
 * horas trabajadas basado en una tarifa horaria; al sueldo básico, se le aplica
 * una bonificación del 20% obteniéndose el sueldo bruto; al sueldo bruto, se le
 * aplica un descuento del 10% obteniéndose el sueldo neto. Escriba un programa
 * que calcule e imprima el sueldo básico, el sueldo bruto y el sueldo neto de
 * un trabajador.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */
public class Problema01 {
	
	public static void main(String args[]) {
		// Declaración de variables
		double horasTrab, tarifaHor;
		double sueldoBas, montoBoni, sueldoBru, montoDesc, sueldoNet;
		Scanner sc = new Scanner(System.in);

		// Entrada de datos
		System.out.print("Horas : ");
		horasTrab = sc.nextDouble();
		System.out.print("Tarifa: ");
		tarifaHor = sc.nextDouble();

		// Proceso de cálculo
		sueldoBas = horasTrab * tarifaHor;
		montoBoni = 0.20 * sueldoBas;
		sueldoBru = sueldoBas + montoBoni;
		montoDesc = 0.10 * sueldoBru;
		sueldoNet = sueldoBru - montoDesc;

		// Salida de resultados
		System.out.println("\nRESULTADO");
		System.out.println("----------");
		System.out.println("Sueldo básico: S/. " + sueldoBas);
		System.out.println("Bonificación : S/. " + montoBoni);
		System.out.println("Sueldo bruto : S/: " + sueldoBru);
		System.out.println("Descuento    : S/. " + montoDesc);
		System.out.println("Sueldo neto  : S/. " + sueldoNet);
	}

}
```

**Salida**

```
Horas : 140
Tarifa: 23.5

RESULTADO
----------
Sueldo básico: S/. 3290.0
Bonificación : S/. 658.0
Sueldo bruto : S/: 3948.0
Descuento    : S/. 394.8
Sueldo neto  : S/. 3553.2
```

**Problema 2**

```java
package problemas_resueltos;

import java.util.*;

/**
 * Diseñe un programa que permita convertir una cantidad dada en metros a sus
 * equivalentes en centímetros, pulgadas, pies y yardas. Considere la siguiente
 * información:
 * 1 metro = 100 centímetros
 * 1 pie = 12 pulgadas
 * 1 yarda = 3 pies
 * 1 pulgada = 2.54 centímetros
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */
public class Problema02 {

	public static void main(String[] args) {
		// Declaración de variables
		double xmetros, xpies, xpulgadas, xyardas, xcentimetros;
		Scanner sc = new Scanner(System.in);

		// Entrada de datos
		System.out.print("Metros: ");
		xmetros = sc.nextDouble();

		// Proceso de conversión
		xcentimetros = xmetros * 100;
		xpulgadas = xcentimetros / 2.54;
		xpies = xpulgadas / 12;
		xyardas = xpies / 3;

		// Salida de resultados
		System.out.println("\nRESULTADO");
		System.out.println("----------");
		System.out.println("Centímetros: " + xcentimetros + " cm");
		System.out.println("Pulgadas   : " + xpulgadas    + " in");
		System.out.println("Pies       : " + xpies        + " ft");
		System.out.println("Yardas     : " + xyardas      + " yd");
	}

}
```

**Salida**

```
Metros: 5.8

RESULTADO
----------
Centímetros: 580.0 cm
Pulgadas   : 228.3464566929134 in
Pies       : 19.028871391076116 ft
Yardas     : 6.342957130358705 yd
```

**Problema 3**

```java
package problemas_resueltos;

import java.util.*;

/**
 * Escriba un programa que calcule el área total y el volumen de un cilindro.
 * Considere las siguientes fórmulas: A = 2πr(r+h) y V = 2πr²h; siendo A el
 * área, V el volumen, r el radio y h la altura.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */
public class Problema03 {

	public static void main(String[] args) {
		// Declaración de variables
		double r, h, area, volumen;
		Scanner sc = new Scanner(System.in);

		// Entrada de datos
		System.out.print("Radio : ");
		r = sc.nextDouble();
		System.out.print("Altura: ");
		h = sc.nextDouble();

		// Calcula el área y volumen del cilindro
		area = 2 * 3.1416 * r * (r + h);
		volumen = 2 * 3.1416 * r * r * h;

		// Salida de resultados
		System.out.println("\nÁrea y volumen del cilindro");
		System.out.println("Área    : " + area);
		System.out.println("Volumen : " + volumen);
	}
	
}
```
**Salida**

```
Radio : 3
Altura: 6

Área y volumen del cilindro
Área    : 169.6464
Volumen : 339.2928
```

**Problema 4**

```java
package problemas_resueltos;

import java.util.*;

/**
 * Débora, Raquel y Séfora aportan cantidades de dinero para formar un capital.
 * Diseñe un programa que determine el capital formado y el porcentaje de dicho
 * capital que aporta cada uno.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */
public class Problema04 {

	public static void main(String[] args) {
		// Declaración de variables
		double dineDeb, dineRaq, dineSef;
		double capital, porcDeb, porcRaq, porcSef;
		Scanner sc = new Scanner(System.in);

		// Entrada de datos
		System.out.print("Dinero de Débora: ");
		dineDeb = sc.nextDouble();
		System.out.print("Dinero de Raquel: ");
		dineRaq = sc.nextDouble();
		System.out.print("Dinero de Séfora: ");
		dineSef = sc.nextDouble();

		// Halla el capital formado
		capital = dineDeb + dineRaq + dineSef;

		// Determina los porcentajes de cada capital respecto del total
		porcDeb = dineDeb * 100 / capital;
		porcRaq = dineRaq * 100 / capital;
		porcSef = dineSef * 100 / capital;

		// Salida de resultados
		System.out.println("\nRESULTADO");
		System.out.println("---------");
		System.out.println("Capital : " + capital);
		System.out.println("Porcentaje que aporta Debora: " + porcDeb);
		System.out.println("Porcentaje que aporta Raquel: " + porcRaq);
		System.out.println("Porcentaje que aporta Séfora: " + porcSef);
	}

}
```
**Salida**

```
Dinero de Débora: 400
Dinero de Raquel: 500
Dinero de Séfora: 900

RESULTADO
---------
Capital : 1800.0
Porcentaje que aporta Debora: 22.22222222222222
Porcentaje que aporta Raquel: 27.77777777777778
Porcentaje que aporta Séfora: 50.0
```

**Problema 5**

```java
package problemas_resueltos;

import java.util.*;

/**
 * Diseñe un algoritmo que lea un número entero de cinco cifras y determine la
 * cifra central del número. Así, si el número ingresado fuera 45781, la cifra
 * central a mostrar es 7.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltoro
 */
public class Problema05 {

	public static void main(String[] args) {
		// Declaración de variables
		int numero, centro;
		Scanner sc = new Scanner(System.in);

		// Entrada de datos
		System.out.print("Número: ");
		numero = sc.nextInt();

		// Determina la cifra central
		centro = (numero % 1000) / 100;

		// Salida de resultados
		System.out.println("\nLa cifra del medio es: " + centro);
	}
}
```
**Salida**

```
Número: 45781

La cifra del medio es: 7
```

**Problema 6**

```java
package problemas_resueltos;

import java.util.*;

/**
 * Diseñe un algoritmo para repartir una cantidad de dinero a tres personas en
 * forma proporcional a sus edades. El monto que le corresponde a cada persona
 * se calcula con la siguiente fórmula:
 * Monto de la persona = edad de la persona x monto a repatir / suma total de
 * edades
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltor
 */
public class Problema06 {

	public static void main(String[] args) {
		// Declaración de variables
		double montoRepartir, montoP1, montoP2, montoP3;
		double edadP1, edadP2, edadP3, sumaEdades;
		Scanner sc = new Scanner(System.in);

		// Entrada de datos
		System.out.print("Monto: ");
		montoRepartir = sc.nextDouble();
		System.out.print("Edad 1: ");
		edadP1 = sc.nextDouble();
		System.out.print("Edad 2: ");
		edadP2 = sc.nextDouble();
		System.out.print("Edad 3: ");
		edadP3 = sc.nextDouble();

		// Calcula la suma total de edades
		sumaEdades = edadP1 + edadP2 + edadP3;

		// Calcula la cantidad de dinero de cada persona
		montoP1 = (edadP1 * montoRepartir) / sumaEdades;
		montoP2 = (edadP2 * montoRepartir) / sumaEdades;
		montoP3 = (edadP3 * montoRepartir) / sumaEdades;

		// Salida de resultados
		System.out.println("\nRESULTADO");
		System.out.println("---------");
		System.out.println("Monto total    : " + montoRepartir);
		System.out.println("Suma de edades : " + sumaEdades);
		System.out.println("Monto persona 1: " + montoP1);
		System.out.println("Monto persona 2: " + montoP2);
		System.out.println("Monto persona 3: " + montoP3);
	}

}
```
**Salida**

```
Monto: 10000
Edad 1: 14
Edad 2: 15
Edad 3: 16

RESULTADO
---------
Monto total    : 10000.0
Suma de edades : 45.0
Monto persona 1: 3111.1111111111113
Monto persona 2: 3333.3333333333335
Monto persona 3: 3555.5555555555557

```

**Problema 7**

```java
package problemas_resueltos;

import java.util.*;

/**
 * Una tienda ha puesto en oferta la venta de un producto ofreciendo un 11% de
 * descuento sobre el importe de la compra. Diseñe un algoritmo que determine el
 * importe de la compra, el importe del descuento y el importe a pagar por la
 * compra de cierta cantidad de unidades del producto.
 * @author Josel Toro
 * @version 27/08/2021
 * @see https://dev.to/joseltor
 */
public class Problema07 {

	public static void main(String[] args) {
		// Declaración de variables
		double precio, importecom, importedes, importepag;
		int unidades;
		Scanner sc = new Scanner(System.in);

		// Entrada de datos
		System.out.print("Precio  : ");
		precio = sc.nextDouble();
		System.out.print("Cantidad: ");
		unidades = sc.nextInt();

		// Cálculo de importes
		importecom = unidades * precio;
		importedes = 0.11 * importecom;
		importepag = importecom - importedes;

		// Salida de resultados
		System.out.println("\nRESULTADO");
		System.out.println("----------");
		System.out.println("Importe de compra   : " + importecom);
		System.out.println("Importe de descuento: " + importedes);
		System.out.println("Importe a pagar     : " + importepag);
	}

}
```
**Salida**

```
Precio  : 100
Cantidad: 2

RESULTADO
----------
Importe de compra   : 200.0
Importe de descuento: 22.0
Importe a pagar     : 178.0
```