DEV Community

joseltoro
joseltoro

Posted on

7 problemas de "Estructuras de Secuencia" resueltos en consola en Java

¡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

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);
    }

}
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

Problema 2

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");
    }

}
Enter fullscreen mode Exit fullscreen mode

Salida

Metros: 5.8

RESULTADO
----------
Centímetros: 580.0 cm
Pulgadas   : 228.3464566929134 in
Pies       : 19.028871391076116 ft
Yardas     : 6.342957130358705 yd
Enter fullscreen mode Exit fullscreen mode

Problema 3

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);
    }

}
Enter fullscreen mode Exit fullscreen mode

Salida

Radio : 3
Altura: 6

Área y volumen del cilindro
Área    : 169.6464
Volumen : 339.2928
Enter fullscreen mode Exit fullscreen mode

Problema 4

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);
    }

}
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

Problema 5

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);
    }
}
Enter fullscreen mode Exit fullscreen mode

Salida

Número: 45781

La cifra del medio es: 7
Enter fullscreen mode Exit fullscreen mode

Problema 6

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);
    }

}
Enter fullscreen mode Exit fullscreen mode

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

Enter fullscreen mode Exit fullscreen mode

Problema 7

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);
    }

}
Enter fullscreen mode Exit fullscreen mode

Salida

Precio  : 100
Cantidad: 2

RESULTADO
---------------
Importe de compra   : 200.0
Importe de descuento: 22.0
Importe a pagar     : 178.0
Enter fullscreen mode Exit fullscreen mode

Discussion (0)