ejercicios de aplicación

75
2014 Ejercicios de aplicación Programas en java

Upload: estefy-sanchez

Post on 01-Jul-2015

184 views

Category:

Education


2 download

TRANSCRIPT

Page 1: Ejercicios de Aplicación

2014

Ejercicios de aplicación Programas en java

Page 2: Ejercicios de Aplicación

Tabla de contenido EJERCICIO N.-1 ........................................................................................................................3

EJERCICIO N.-2 ........................................................................................................................5

EJERCICIO N.-3 ........................................................................................................................8

EJERCICIO N.-4 ......................................................................................................................13

EJERCICIO N.-5 ......................................................................................................................15

EJERCICIO N.-6 ......................................................................................................................18

EJERCICIO N.-7 ......................................................................................................................22

EJERCICIO N.-8 ......................................................................................................................24

EJERCICIO N.-9 ......................................................................................................................28

EJERCICIO N.-10....................................................................................................................32

EJERCICIO N.-11....................................................................................................................43

EJERCICIO N.-12....................................................................................................................48

EJERCICIO N.-13....................................................................................................................52

EJERCICIO N.-14....................................................................................................................57

EJERCICIO N.-15....................................................................................................................65

EJERCICIO N.-16....................................................................................................................67

EJERCICIO N.-17....................................................................................................................71

EJERCICIO N.-18....................................................................................................................73

Page 3: Ejercicios de Aplicación

EJERCICIO N.-1

ENUNCIADO:

Utilizando el lenguaje de programación orientado a objetos JAVA realizar una suma

ingresando dos números enteros desde teclado,

ANÁLISIS:

Este programa nos permite relizar la suma ded dos números ingresados por

teclado mediante la función JOptionPane.showInputDialog y luego la convertimos en

dato en tero con la función Integer.parseInt(); y realizamos la respectiva suma e

imprimimos la respuesta con la función JOptionPane.showMessageDialog(null," " + );

CODIFICACIÓN:

package sumadenumeros1;

import javax.swing.JOptionPane;

/**

*

* @author Lab03-PC02

*/

public class Sumadenumeros1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args)

{

String dato1, dato2;

int num1, num2, num3;

dato1=JOptionPane.showInputDialog("Ingrese el dato 1..: ");

num1=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog("Ingrese el dato 2..: ");

num2=Integer.parseInt(dato2);

num3=num1+num2;

JOptionPane.showMessageDialog(null,"la suma es..: " + num3);

// TODO code application logic here

}

}

Nombre del programa o proyecto

Librería

Inicio del programa

Declaración de variables

de tipo carácter

Ingresamos el 1er

numero Ingresamos el 2do

numero

Operación para hacer la suma

Visualizamos el

resultado

Page 4: Ejercicios de Aplicación

CORRIDO DEL PROGRAMA

Page 5: Ejercicios de Aplicación

EJERCICIO N.-2

ENUNCIADO:

Diseñar un programa en JAVA que me permita resolver las operaciones básicas.

ANÁLISIS:

Codificaremos un programa que realice las operaciones básicas (suma, resta, multiplicación, división), para lo cual en la suma y multiplicación no tendremos problema ya no importa si el primer término o el segundo término sea mayor o menor, a diferencia de la resta y la división que el primer término deberá ser mayor que el segundo, para esto utilizaremos un controlador en estos dos casos; y un suitch para una mejor presentación.

CÓDIGO:

package operacionesbasicas;

import javax.swing.JOptionPane;

public class Operacionesbasicas {

public static void main(String[] args) {

String d1,d2,d3,d4,d5;

int op,n,m,a,b,c,op1;

do

{

d1=JOptionPane.showInputDialog("**OPERACIONES

BASICAS**"+"\n 1.-SUMA"+"\n 2.-RESTA"

+"\n 3.-MULTIPLICACION"+"\n 4.-DIVISION"+"\n 5.-SALIR");

op=Integer.parseInt(d1);

switch(op)

{

case 1:

d2=JOptionPane.showInputDialog("SUMA\n"+"INGRESE

EL PRIMER DATO : ");

n=Integer.parseInt(d2);

d3=JOptionPane.showInputDialog("INGRESE EL

SEGUNDO DATO : ");

m=Integer.parseInt(d3);

c=n+m;

JOptionPane.showMessageDialog(null,"RESPUESTA : "+c)

break;

case 2:

Importación de librerías

del programa

Declaración de variables

Inicio del ciclo do

Impresión del Menú de

Opciones

Inicio del switc

Case 1 en este case

está el proceso para la

suma con

impresiones, proceso

y una última

impresión para el

resultado.

Page 6: Ejercicios de Aplicación

d2=JOptionPane.showInputDialog("RESTA\n"

+"INGRESE EL PRIMER DATO : ");

n=Integer.parseInt(d2);

do

{

d3=JOptionPane.showInputDialog("INGRESE EL

SEGUNDO DATO : ");

m=Integer.parseInt(d3);

}while(n>m);

c=n-m;

JOptionPane.showMessageDialog(null,"RESPUESTA : "+c);

break;

case 3:

d2=JOptionPane.showInputDialog("MULTIPLICACION

\n"+"INGRESE EL PRIMER DATO : ");

n=Integer.parseInt(d2);

d3=JOptionPane.showInputDialog("INGRESE EL SEGUNDO

DATO : ");

m=Integer.parseInt(d3);

c=n*m;

JOptionPane.showMessageDialog(null,"RESPUESTA : "+c);

break;

case 4:

d2=JOptionPane.showInputDialog("DIVICION\n"+"INGRESE

EL PRIMER DATO : ");

n=Integer.parseInt(d2);

do

{

d3=JOptionPane.showInputDialog("INGRESE EL SEGUNDO

DATO : ");

m=Integer.parseInt(d3);

}while(n>m);

c=n/m;

JOptionPane.showMessageDialog(null,"RESPUESTA : "+c);

break;

}

d5=JOptionPane.showInputDialog("DESEA REPETIR

1 O 0 PARA SALIR: ");

op1=Integer.parseInt(d5);

}while(op1==1);

}

}

CORRIDO:

Case 2 en este case

está el proceso para la

resta con impresiones,

proceso y una última

impresión para el

resultado. Con un

control de ingreso

Case 3 en este case

está el proceso para la

multiplicación con

impresiones, proceso

y una última

impresión para el

resultado

Case 4 en este

case está el

proceso para la

división con

impresiones,

proceso y una

última impresión

para el resultado.

Con un control

de datos Case 1 en este case esta el proceso para la división con impresiones, proceso y una ultima impresión para el resultado. Con un control de

Fin del ciclo do

while

Case 1 en este case esta el proceso para la división con impresiones, proceso y una ultima impresión para el resultado. Con un control de

Llaves de

finalización del

programa

Page 7: Ejercicios de Aplicación
Page 8: Ejercicios de Aplicación

EJERCICIO N.-3

ENUNCIADO:

Diseñe un programa que me permita ingresar los datos correspondientes para

obtener el área y el perímetro de las 4 figuras básicas.

ANÁLISIS

Para calcular el área del cuadrado solo debo ingresar un lado y multiplicarlo

(área=l*l) mientras que para el perímetro lo sumo cuatro veces

(perímetro=l+l+l+l). Para el rectángulo, calcular el área es muy simple, solo

debo multiplicar la base por su altura, para el perímetro debo en cambio sumar

todos sus cuatro lados. Para calcular el área del triángulo debemos multiplicar

la base por su altura dividido para 2, para calcular el perímetro debemos sumar

todos sus tres lados. Ahora para el círculo solo hace falta ingresar el radio (el

perímetro es el doble del radio), su perímetro se calcula multiplicando el

diámetro por pi (PI 3.14159265) y el área se encuentra multiplicando pi por

radio al cuadrado.

DOCUMENTACIÓN

package fig_bas;

import javax.swing.JOptionPane;

import fig_bas.figuras;

public class Fig_bas {

public static void main(String[] args)

{

String opc;

int menu, cua, rect, circ, trian;

opc=JOptionPane.showInputDialog("FIGURAS BÁSICAS

\n\n1.- Cuadrado \n2.- Rectángulo \n3.- Círculo

\n4.- Triángulo

\n5.- Salir \n\nQue desea realizar");

menu=Integer.parseInt(opc);

switch(menu)

{

Importación de librerías

del programa

Inicio del programa

principal

Declaración de

variables

Menú de opciones

Inicio del menú de

opciones

Page 9: Ejercicios de Aplicación

case 1:

cua=figuras.cuadrado();

break;

case 2:

rect=figuras.rectandulo();

break;

case 3:

circ=figuras.circulo();

break;

case 4:

trian=figuras.triangulo();

break;

case 5:

System.exit(0);

break;

}

}

}

package fig_bas;

import javax.swing.JOptionPane;

public class figuras

{

public static int cuadrado()

{

String lado;

int l, per, ar;

lado=JOptionPane.showInputDialog("Ingrese el

lado del cuadrado: ");

l=Integer.parseInt(lado);

per=l*4;

ar=l*l;

JOptionPane.showMessageDialog(null, "PERIMETRO

DEL CUADRADO= " + per);

JOptionPane.showMessageDialog(null, "ÁREA DEL

CUADRADO= " + ar);

return 0;

}

Case 1: para encontrar el

perímetro y el área de un

cuadrado

Case 2: para encontrar el perímetro y el área de un

rectángulo

Case 3: para encontrar el perímetro y el área de un

círculo

Case 4: para encontrar el perímetro y el área de un

triángulo

Case 1: para encontrar el perímetro y el salir del

menú

Clase (subprograma) para

calcular el perímetro y el

área de un cuadrado.

Inicio para crear

clases.

Page 10: Ejercicios de Aplicación

public static int rectandulo()

{

String lado1, lado2;

int l1, l2, ar, per;

lado1=JOptionPane.showInputDialog("Ingrese la base

del rectángulo");

l1=Integer.parseInt(lado1);

lado2=JOptionPane.showInputDialog("Ingrese la altura

del rectángulo");

l2=Integer.parseInt(lado2);

per=l1*2+l2*2;

ar=l1*l2;

JOptionPane.showMessageDialog(null, "PERIMETRO

DEL RECTÁNGULO= " + per);

JOptionPane.showMessageDialog(null, "ÁREA DEL

RECTÁNGULO= " + ar);

return 0;

}

public static int circulo()

{

String radio;

int r;

double pi, ar, per;

radio=JOptionPane.showInputDialog("Ingrese el radio

del círculo");

r=Integer.parseInt(radio);

pi=3.1416;

ar=pi*r*r;

per=2*pi*r;

JOptionPane.showMessageDialog(null, "ÁREAL DEL

CÍRCULO= " + ar);

JOptionPane.showMessageDialog(null, "PERIMETRO

DEL CÍRCULO= " + per);

return 0;

}

Clase (subprograma) para

calcular el perímetro y el

área de un rectángulo.

Clase (subprograma) para

calcular el perímetro y el

área de un círculo.

Page 11: Ejercicios de Aplicación

public static int triangulo()

{

String lado1, lado2, lado3;

int l1, l2, l3, per, ar;

lado1=JOptionPane.showInputDialog("Ingrese la base

del triángulo");

l1=Integer.parseInt(lado1);

lado2=JOptionPane.showInputDialog("Ingrese la altura

del triángulo");

l2=Integer.parseInt(lado2);

lado3=JOptionPane.showInputDialog("Ingrese el lado

restante del triángulo");

l3=Integer.parseInt(lado3);

per=l1+l2+l3;

ar=(l1*l2)/2;

JOptionPane.showMessageDialog(null, "PERIMETRO

DEL TRIÁNGULO= " + per);

JOptionPane.showMessageDialog(null, "ÁREA DEL

TRIÁNGULO= " + ar);

return 0;

}

}

CORRIDO DEL PROGRAMA.

Clase (subprograma) para

calcular el perímetro y el

área de un triángulo.

Page 12: Ejercicios de Aplicación
Page 13: Ejercicios de Aplicación

EJERCICIO N.-4

ENUNCIADO

Diseñe un programa que me permita realizar la potenciación y radicación.

ANALISIS

En este programa podemos realizar la potenciación y la radicación; para la

potenciación debemos declarar los variables de tipo carácter y de tipo enteras,

luego ingresamos la base y el exponente por teclado; por ultimo realizamos el

proceso de Math.pow(base, expo); para que se pueda realizar la potenciación,

por ultimo visualizamos la respuesta.

Para la radicación primero ingresamos un numero para poder realizar la

radicación, luego ingresamos la formula Math.sqrt(radicando); para que se

pueda realizar la radicación, por ultimo visualizamos la respuesta.

CODIGO

package poteyradi;

import javax.swing.JOptionPane;

public class PoteyRadi {

public static void main(String[] args)

{

String dato1, dato2;

double base, expo, resp;

JOptionPane.showMessageDialog(null,"Potenciacion");

dato1=JOptionPane.showInputDialog("Ingrese una base: ");

base=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog("Ingrese el exponente: ");

expo=Integer.parseInt(dato2);

resp=Math.pow(base, expo);

JOptionPane.showMessageDialog(null, "El resultado es: "+resp);

JOptionPane.showMessageDialog(null,"Radicación");

double radicando, raiz;

dato1=JOptionPane.showInputDialog("Ingrese un indice: ");

radicando=Integer.parseInt(dato1);

raiz=Math.sqrt(radicando);

JOptionPane.showConfirmDialog(null,"La raiz es: "+raiz);

}}

Nombre del programa o

proyecto Librerí

a

Inicio del

programa Declaración de variables

de tipo caracter Declaración de variables de tipo

doble Ingresamos la base

de la potenciación

Ingresamos el exponente

Formula o proceso para poder realizar la potenciación

Visualizamos el resultado

Ingresamos el

índice de la raíz

Formula o proceso para poder realizar la radicación

Visualizamos el resultado

Page 14: Ejercicios de Aplicación

CORRIDO

Page 15: Ejercicios de Aplicación

EJERCICIO N.-5

ENUNCIADO:

Diseñe un programa que me permita ingresar un número entero desde teclado

y verificar si el número es par o impar.

ANALISIS:

Utilizamos un if para indicar la condición en donde preguntamos si el numero

ingresado nos da igual a cero entonces imprimimos que es para caso contrario

se imprime que el número es impar, también se utiliza otro if y un do while para

indicar el rango en el que queremos que se encuentren los números ingresados

por el usuario, y finalmente un sentencia do while para que el programa se

repita tantas veces desee el programador.

DOCUMENTACION

package par.impar;

import javax.swing.JOptionPane;

public class PARIMPAR {

@SuppressWarnings("empty-statement")

public static void main(String[] args)

{

String dato1,dato2;

int num1,num2;

do

{

do

{

dato1=JOptionPane.showInputDialog("INGRESE EL NUMERO ");

num1=Integer.parseInt(dato1);

if(num1<6 ||num1>65)

{

Declaración de las variables tanto String

como enteras.

Sentencia repetitiva que en este caso se

utiliza para repetir el programa las veces

que desee el usuario.

Este do while lo utilizamos para validar

datos.

Pedimos que ingrese el número.

Utilizamos la condición if para

validar los datos.

Importación de librerías al programa

Paquete del programa.

Page 16: Ejercicios de Aplicación

JOptionPane.showMessageDialog(null,"EL NUMERO "+num1+" NO ESTA

DENTRO DEL RANGO");

}

}

while(num1<6 || num1>65);

if(num1%2==0)

{

JOptionPane.showMessageDialog(null,"EL NUMERO "+num1+" ES PAR ");

}

else

{

JOptionPane.showMessageDialog(null,"EL NUMERO "+ num1+" ES IMPAR

");

}

dato2=JOptionPane.showInputDialog("PRESIONE 1 PARA SALIR 0 PARA

VOLVER");

num2=Integer.parseInt(dato2);

}

while(num2==1);

}

}

Si la condición no se cumple indicamos un mensaje entonces pedimos

que ingrese otro número y cerramos la condición if.

Cerramos la sentencia do while e indicamos el rango que

queremos en el que se encuentre los números.

Utilizamos la condición if para determinar si es para o impar.

Si la condición se cumple imprimimos que es par y cerramos las llaves.

Caso contrario, abrimos llaves.

Se imprime que es impar y cierra las llaves.

Escribimos un mensaje para repetir o no el programa.

Se cierra la sentencia do while que permite repetir el proceso

varias veces.

Cierra completamente el programa.

Page 17: Ejercicios de Aplicación

CORRIDO

Page 18: Ejercicios de Aplicación

EJERCICIO N.-6

ENUNCIADO:

Diseñe un programa que me permita ingresar 3 valores flotantes desde teclado

que estén entre 1 y 10, obtenga el promedio correspondiente y determine su

equivalencia: aprobado, reprobado y suspenso

Si el promedio es > = 7 Aprobado

Si el promedio es > 5 y < 7 Suspenso

Si el promedio es < = 5 Reprobado

ANALISIS:

Debemos llamar a las librerías para que se habilite procesos propios del

programa, luego ingresaremos los datos como: nombre, materia, y las tres

notas las cuales son validadas que deben estar entre uno y diez ;para lo cual

utilizaremos un do While y una condición si nos cumple pondremos un mensaje

para que ingrese nuevamente la nota.

Después haremos los cálculos y si la nota es mayor de siete aprobara e

imprimirá el nombre su promedio y la materia.

Si su nota es menor de siete y mayor que cinco se queda a suspenso e

imprimirá el nombre su promedio y la materia.

Si la nota es menor que cinco pues reprobara la materia e imprimirá el nombre

su promedio y la materia

Y por último utilizaremos otro do While para repetir el proceso las veces que el

usuario desee.

CODIFICACION:

package prom

ediovalidacion;

import javax.swing.JOptionPane;

public class Promediovalidacion {

public static void main(String[] args)

{

String dato1, dato2,dato3,dato4, nom, mat;

float num, nombre, materia, nota1, nota2, nota3,pro;

Importación de librerías

del programa

Ingreso de variables

Page 19: Ejercicios de Aplicación

int op;

do {

nom=JOptionPane.showInputDialog("INGRESE EL NOMBRE:");

mat=JOptionPane.showInputDialog("INGRESE EL MATERIA:");

do {

dato1= JOptionPane.showInputDialog("INGRESE LA NOTA1:");

nota1= Float.parseFloat(dato1);

if(nota1<1||nota1>11) {

JOptionPane.showInputDialog("VALOR INCORRECTO:");

} }

while(nota1<1||nota1>11);

do {

dato2= JOptionPane.showInputDialog("INGRESE LA NOTA2:");

nota2= Float.parseFloat(dato2);

if(nota2<1||nota2>11) {

JOptionPane.showInputDialog("VALOR INCORRECTO:");

} }

while(nota2<1||nota2>11);

do {

dato3= JOptionPane.showInputDialog("INGRESE LA NOTA3:");

nota3= Float.parseFloat(dato3);

if(nota3<1||nota3>11) {

JOptionPane.showInputDialog("VALOR INCORRECTO:");

} }

while(nota3<1||nota3>11);

pro= (nota1+nota2+nota3)/3;

Ingreso de datos

nombre y materia

del estudiante

Ingreso de la

primera nota

Condición de la nota ingresada

mensaje

Ingreso de la segunda

nota

Validación de la nota entre 1 y 10

mensaje

Condición de la nota ingresada

Validación de la nota entre 1 y 10

Ingreso de la tercera

nota

mensaje

Validación de la nota entre 1 y 10

Procesos promedio de notas

Page 20: Ejercicios de Aplicación

JOptionPane.showMessageDialog(null,"EL PROMEDIO ES:"+pro );

if(pro>=7) {

JOptionPane.showMessageDialog(null, " ... APROBADO ...");

JOptionPane.showMessageDialog(null, "EL ESTUDIANTE: "+nom );

JOptionPane.showMessageDialog(null, "ESTA APROBADO CON: "+pro );

JOptionPane.showMessageDialog(null, "EN LA MATERIA DE: "+mat );

}

else { if(pro>=5&&pro<7) {

JOptionPane.showMessageDialog(null, "... SUSPENSO ...");

JOptionPane.showMessageDialog(null, "EL ESTUDIANTE: "+nom );

JOptionPane.showMessageDialog(null, "ESTA SUSPENSO CON: "+pro );

JOptionPane.showMessageDialog(null, "EN LA MATERIA DE: "+mat );

}

else {

JOptionPane.showMessageDialog(null, "... REPROBADO ...");

JOptionPane.showMessageDialog(null, "EL ESTUDIANTE: "+nom );

JOptionPane.showMessageDialog(null, "ESTA REPROBADO CON: "+pro );

JOptionPane.showMessageDialog(null, "EN LA MATERIA DE: "+mat );

} }

dato4= JOptionPane.showInputDialog("CONTINUAR1 TERMINAR 0:");

op= Integer.parseInt(dato4);

} while(op==1); }

Impresión de

datos de

aprobado:

Nombre

Promedio

Materia

Condición de la nota >7

Impresión de

datos de

suspenso:

Nombre

Promedio

Materia

Impresión de

datos de

reprobado:

Nombre

Promedio

Materia Ciclo

repetitivo n

veces para el

proceso.

Page 21: Ejercicios de Aplicación

EJECUCION:

Page 22: Ejercicios de Aplicación

EJERCICIO N.-7

ENUNCIADO

Diseñe un programa que me permita ingresar desde teclado un límite y un

factor cualquiera y generar las tablas de multiplicar.

Análisis:

En este programa podemos realizar las tablas de multiplicar; debemos declarar

los variables de tipo enteras, luego ingresamos el límite y el factor, por ultimo

visualizamos la respuesta.

CÓDIGO

public class Tabla { public static void main(String[] args) { String dato1,dato2,dato3,dato4; int limite,factor,i,mult,op=0,opci,a,b,c,factorial; do { JOptionPane.showMessageDialog(null, " << SERIE DE DATOS >> \n" + "TABLA DE MULTIPLICAR"); dato1=JOptionPane.showInputDialog("INGRESE EL LIMITE:"); limite=Integer.parseInt(dato1); dato2=JOptionPane.showInputDialog("INGRESE EL FACTOR:"); factor=Integer.parseInt(dato2); for(i=1;i<=limite;i++) { mult=i*factor; JOptionPane.showMessageDialog(null, " LA TABLA DE MULTIPLICAR ES: \n" + factor + "*" + i + " = " + mult); } dato3=JOptionPane.showInputDialog(" PULSE 1 PARA CONTINUAR O 0 PARA SALIR "); op=Integer.parseInt(dato3); } while(op==1); } }

Nombre del programa o proyecto

Proceso de

multiplicación e

impresión de

resultado

Declaración de variables String,

int

Ingreso de Datos

Inicio del ciclo do-while

Fin del ciclo do-while

Page 23: Ejercicios de Aplicación

CORRIDO

Page 24: Ejercicios de Aplicación

EJERCICIO N.-8

Enunciado

Diseñe un programa que me permita resolver un sistema de Ecuación de Segundo Grado (ax^2 + bx +c)

Análisis

En este programa podemos realizar la Ecuación de Segundo Grado donde debemos importar la librería principal que es import javax.swing.JOptionPane; para este programa debemos declarar los variables de tipo double, carácter y de tipo enteras, luego ingresamos los tres valores posteriormente realizamos el proceso para poder sacar la ecuación para esto debemos utilizar la formula Math.sqrt para poder sacar la raíz cuadrada y por ultimo preguntamos si el usuario desea realizar nuevamente otros procesos o si desea salir

Documentación

package ecuacion;

import javax.swing.JOptionPane;

public class Ecuacion {

public static void main(String[] args) {

String dato2;

int op ;

do

{

JOptionPane.showMessageDialog

(null,"ECUACION DE SEGUNDO GRADO" );

Nombre del proyecto

Librería

Inicio del

programa

Declaración

de variables

Proceso de

repetición

Impresión de un

mensaje

Page 25: Ejercicios de Aplicación

double a = Double.parseDouble

(JOptionPane.showInputDialog

("Ingrese el primer valor de a: "));

double b = Double.parseDouble

(JOptionPane.showInputDialog

("Ingrese el segundo valor de b: "));

double c = Double.parseDouble

(JOptionPane.showInputDialog

("Ingrese el tercer valor de c: "));

double interno=b*b-(4*a*c);

if (interno==0){

double x1=-b/(2*a);

JOptionPane.showMessageDialog

(null, "Existe un valor doble: " + x1 ) ;

}

else

if(interno>0)

{

interno = Math.sqrt(interno);

x1=(-b+interno)/(2*a);

x2=(-b-interno)/(2*a);

JOptionPane.showMessageDialog

(null, "valor de x1 y x2: " + x1 +" \n"+x2 );

x1=-b/(2*a);

double resultado= Math.sqrt((-interno/(2*a)));

Ingresamos los tres

valores

Realizamos el

proceso para sacar la

ecuación

Este es el proceso para

sacar la raíz cuadrada

de la ecuación

Visualizamos el

resultado

Page 26: Ejercicios de Aplicación

JOptionPane.showMessageDialog

(null, "La raiz es imaginaria y vale: " + x1 +"

+"+ resultado + "i"+x1+"-"+resultado +"i" );

dato2= JOptionPane.showInputDialog

("Ingrese 1 para continuar y 0 pasa salir");

op= Integer.parseInt(dato2);

}

while(op==1);

}

}

}

Proceso para que el

usuario realice otro

proceso o si desea salir

Page 27: Ejercicios de Aplicación

Corrido

Page 28: Ejercicios de Aplicación

EJERCICIO N.-9

Enunciado

Diseñe un programa que me permita calcular el valor total a pagar por

consumo de energía eléctrica considerando los siguientes parámetros, se

leen el valor anterior y el valor actual de consumo, en donde siempre el

valor actual debe ser mayor al valor anterior.

La diferencia entre los dos valores se devuelve el consumo actual. El

costo por vatio es $0,49

Existen 3 impuestos que se deben facturar:

3% Correspondiente a Bomberos

4% Correspondiente a taza municipal

2% otros

Visualice subtotales parciales u e total a pagar en una sola ventana

ANALISIS:

1. Importación de bibliotecas principales que utilizaremos (import

javax.swing.JOptionPane; e importjava.text.DecimalFormat;).

2. Debemos declarar las variables String, double y formato para decimales.

3. Inicialización de ciclo do while para que el programa se repita n veces.

4. Ingreso del valor anterior e inicialización del ciclo do while.

5. Ingreso del valor actual, fin ciclo do while y validación del valor anterior

debe ser mayor que el valor actual.

6. Obtención de los impuestos de bomberos, taza municipal y otros los

mismos que su porcentaje será multiplicado y dividido para 100.

7. Impresión en una sola pantalla del consumo actual, anterior, real , costo,

valor del consumo e impuestos de bomberos, taza municipal, otros y

finalmente el total a pagar ,

8. Finalización del ciclo do while principal y preguntamos si el usuario

desea realizar nuevamente otros procesos o si desea salir.

DOCUMENTACION:

packageplanilla.de.luz;

importjava.text.DecimalFormat;

importjavax.swing.JOptionPane;

Importación de

librerías del programa

Page 29: Ejercicios de Aplicación

public static void main (String[] args)

{

String dato1, dato2, dato4;

double valor1, valor2, dif, cost,bomb,tasa,otros,tot,op ;

DecimalFormat f = new DecimalFormat ("00.00");

DecimalFormat g = new DecimalFormat ("0.00");

do

{

JOptionPane.showMessageDialog (null," << PLANILLA DE LUZ >> ");

dato1=JOptionPane.showInputDialog (" INGRESE EL VALOR ANTERIOR: ");

valor1=Integer.parseInt (dato1);

do

{

dato2=JOptionPane.showInputDialog ("<< INGRESE EL VALOR ACTUAL: ");

valor2=Integer.parseInt (dato2);

}

While (valor1>valor2);

Dif =valor2-valor1;

Cost=dif*0.89;

Bomb= (cost*3)/100;

Tasa= (cost*4)/100;

Otros = (cost*2)/100;

Tot=cost+bomb+tasa+otros;

Paquetes del programa

Declaración de variables

String y double

Impresión de titulo

Escaneo del

primer

valor

Escaneo del

segundo

valor

Inicio del ciclo do while

Validación del valor 1 y valor 2

Procesos para operaciones

Instrucción formato para

decimales

Inicio ciclo do while principal

Page 30: Ejercicios de Aplicación

JOptionPane.showMessageDialog (null," CONSUMO ANTERIOR: "

+valor1+"\n CONSUMO ACTUAL: "

+valor2+ "\n CONSUMO REAL: "

+ dif + "\n COSTO: 0.89”

+ "\n << VALOR CONSUMO: "

+ f.format (cost) +"\n BOMBEROS (3%): "

+g.format (bomb) +"\n TASA MUN (4%): "

+g.format (tasa)+"\n OTROS (2%): "

+g.format (otros)+"\n << TOTAL A PAGAR: "

+f.format (tot);

dato4=JOptionPane.showInputDialog ("PULSE 1 PARA CONTINUAR O 0

PARA SALIR ");

Op=Integer.parseInt (dato4);

}

While (op==1);

}

}

Impresión de

resultados

Escaneo de

opción para

repetición del

proceso

Fin ciclo do while validado a 1

Fin del programa

Page 31: Ejercicios de Aplicación

CORRIDO DEL PROGRAMA

Page 32: Ejercicios de Aplicación

EJERCICIO N.-10

Enunciado

Diseñe una aplicación que me permita calcular el valor de las comisiones

ganadas de los vendedores de una empresa, según lo siguientes parámetros:

la empresa dispone de 3 vendedores que realizan las ventas de sus vehículos.

Las comisiones se las concede en función de los valores facturados:

Si el valor >= 8000 <=11000 Recibe una comisión de 3% de

la venta

Si el valor >11000 <=25000 Recibe una comisión de 4,5% de

la venta

Si el valor >25000 <=45000 Recibe una comisión de 6 % de

la venta

Si el valor >40000 Recibe una comisión de 8,5% de la

venta

Se necesita conocer el valor acumulado por cada vendedor y el valor

total generado por comisión

Análisis:

1. Debemos importar las bibliotecas que vayamos a utilizar en el programa,

en este caso deberemos importar la librería principal (import

javax.swing.JOptionPane ;).

2. Debemos declarar las variables string y las variables enteras que

necesitemos.

3. En la variable de escoger una opción imprimimos el menú que vamos a

presentar para realizar los diferentes procesos.

4. Convertimos la variable escoger (de string) a entero y asignamos el valor

de correspondiente.

5. Utilizamos un swtich para realizar cada proceso del menú.

6. En cada case debemos ingresar los dos valores que usaremos para las

operaciones y convertirlos a datos de tipo entero.

7. Llamamos a la variable en que almacenaremos el resultado que será

igual al nombre de la clase que usaremos y del bloque al que pertenece,

ubicando entre paréntesis las variables de los datos ingresados.

8. Imprimimos la variable resultante del proceso

9. Utilizamos un do while para preguntar al usuario si desea volver a

realizar el proceso con diferentes valores

10. Repetimos el proceso en cada case con la variación de realizar las

posteriores operaciones a la suma.

11. En el último case utilizamos una instrucción que nos permitirá salir del

programa mientras este corriendo, esto es: System.exit(0);

Page 33: Ejercicios de Aplicación

12. Preguntamos si el usuario desea realizar nuevamente otros procesos o

si desea salir.

Análisis Flujográmico:

package comision;

import javax.swing.JOptionPane;

public class Comision {

public static void main(String[] args)

{

String ventj, ventmarc, ventmar, rept, opcion, opj;

int vjuan, vmarc, vmar, op, menu, numj=0, nummarc=0, nummar=0;

double comj=0, commarc=0, commar=0, comjuan=0, commarcelo=0,

commaria=0, totventj=0, totventm=0, totventma=0, total=0;

do

{

opcion=JOptionPane.showInputDialog("EMPRESA DON LUCHO" +

"\n \n VENDEDORES" + "\n \n 1.- JUAN" + "\n 2.- MARCELO" + "\n

3.- MARÍA" + "\n 4.- Salir" +

"\n \n Con quien desea realizar su venta");

menu=Integer.parseInt(opcion);

switch(menu)

{

case 1:

do

{

ventj=JOptionPane.showInputDialog("EMPRESA DON LUCHO" + "\n \n

VENDEDOR JUAN" + "\n \n Valor de la venta");

vjuan=Integer.parseInt(ventj);

numj=numj+1;

totventj=totventj+vjuan;

if(vjuan>=8000 && vjuan<=11000)

{

comj=vjuan*0.03;

comjuan=comjuan+comj;

Importación de

librerías del programa

Paquetes del

programa

Declaración

de variables

String, int y

double

Impresión del

Menú de

Opciones

Transformación de

variables String a

int

Incio del Switch con

Case1

Procesos para

operaciones

Decisión if y procesos

Page 34: Ejercicios de Aplicación

c JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO" + "\n \n

VENDEDOR JUAN" + "\n \n # VENTA: " + numj +

"\n \n Venta=" + vjuan + "\n Comisión= " + comj);

}

else

{

if(vjuan>11000 && vjuan<=25000)

{

comj=vjuan*0.45;

comjuan=comjuan+comj;

JOptionPane.showMessageDialog(null, "EMPRESA DON

LUCHO" + "\n \n VENDEDOR JUAN" + "\n \n # VENTA: " + numj + "\n \n

Venta=" + vjuan + "\n Comisión= " + comj);

}

else

{

if(vjuan>25000 && vjuan<=45000)

{

comj=vjuan*0.06;

comjuan=comjuan+comj;

JOptionPane.showMessageDialog(null, "EMPRESA DON

LUCHO" + "\n \n VENDEDOR JUAN" + "\n \n # VENTA: " + numj + "\n \n

Venta=" + vjuan + "\n Comisión= " + comj);

}

else

{

if(vjuan>45000)

{

comj=vjuan*0.85;

comjuan=comjuan+comj;

JOptionPane.showMessageDialog(null, "EMPRESA DON

LUCHO" + "\n \n VENDEDOR JUAN" + "\n \n # VENTA: " + numj + "\n \n

Venta=" + vjuan + "\n Comisión= " + comj);

}

}

}

}

opj=JOptionPane.showInputDialog

("Desea realizar una nueva venta con nuestro vendedor Juan

(1 SI/0 NO)");

op=Integer.parseInt(opj);

}

while(op==1);

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Cierre de sentencias if

Proceso de repetición,

mensaje y cierre del

do while

Page 35: Ejercicios de Aplicación

JOptionPane.showMessageDialog(null,"EMPRESA DON LUCHO" + "\n \n

VENDEDOR JUAN" + "\n \n # VENTAS: " + numj + "\n \n Total de ventas=" +

totventj + "\n Comisiones ganadas= " + comjuan );

break;

case 2:

do

{

ventmarc=JOptionPane.showInputDialog("EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARCELO" + "\n \n Valor de la venta");

vmarc=Integer.parseInt(ventmarc);

nummarc=nummarc+1;

totventm=totventm+vmarc;

if(vmarc>=8000 && vmarc<=11000)

{

commarc=vmarc*0.03;

commarcelo=commarcelo+commarc;

JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARCELO" + "\n \n # VENTA: " + nummarc +

"\n \n Venta=" + vmarc + "\n Comisión= " + commarc);

}

else

{

if(vmarc>11000 && vmarc<=25000)

{

commarc=vmarc*0.45;

commarcelo=commarcelo+commarc;

JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARCELO" + "\n \n # VENTA: " + nummarc +

"\n \n Venta=" + vmarc + "\n Comisión= " + commarc);

}

else

{

if(vmarc>25000 && vmarc<=45000)

{

commarc=vmarc*0.06;

commarcelo=commarcelo+commarc;

JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARCELO" + "\n \n # VENTA: " + nummarc +

Case 2 y Do While

Impresión del

nombre y datos

subtitulos

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Impresión del

nombre y datos

subtitulos

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Impresión del

nombre y datos

subtitulos

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Impresión del

nombre y datos

subtitulos

Page 36: Ejercicios de Aplicación

"\n \n Venta=" + vmarc + "\n Comisión= " + commarc);

}

else

{

if(vmarc>45000)

{

commarc=vmarc*0.85;

commarcelo=commarcelo+commarc;

JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARCELO" + "\n \n # VENTA: " + nummarc +

"\n \n Venta=" + vmarc + "\n Comisión= " + commarc);

}

}

}

}

opj=JOptionPane.showInputDialog("Desea realizar una

nueva venta con nuestro vendedor Marcelo (1 SI/0 NO)");

op=Integer.parseInt(opj);

}

while(op==1);

JOptionPane.showMessageDialog(null,"EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARCELO" + "\n \n # VENTAS: "

+ nummarc + "\n \n Total de ventas=" + totventm +

"\n Comisiones ganadas= " + commarcelo);

break;

case 3:

do

{

ventmar=JOptionPane.showInputDialog("EMPRESA DON LUCHO"

+ "\n \n VENDEDORA MARÍA" + "\n \n Valor de la venta");

vmar=Integer.parseInt(ventmar);

nummar=nummar+1;

totventma=totventma+vmar;

if(vmar>=8000 && vmar<=11000)

{

commar=vmar*0.03;

commaria=commaria+commar;

JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO"

+ "\n \n VENDEDORA MARÍA" + "\n \n # VENTA: " + nummar +

"\n \n Venta=" + vmar + "\n Comisión= " + commar);

}

else

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Impresión del

nombre y datos

subtitulos

Cierre de sentencias if

Proceso de repetición,

mensaje y cierre del

do while

Case 3 y Do While

Impresión del

nombre y datos

subtitulos

Impresión del

nombre y datos

subtitulos

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Impresión del

nombre y datos

subtitulos

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Page 37: Ejercicios de Aplicación

{

if(vmar>11000 && vmar<=25000)

{

commar=vmar*0.45;

commaria=commaria+commar;

JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARÍA" + "\n \n # VENTA: " + nummar +

"\n \n Venta=" + vmar + "\n Comisión= " + commar);

}

else

{

if(vmar>25000 && vmar<=45000)

{

commar=vmar*0.06;

commaria=commaria+commar;

JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARÍA" + "\n \n # VENTA: " + nummar

+ "\n \n Venta=" + vmar + "\n Comisión= " + commar);

}

else

{

if(vmar>45000)

{

commar=vmar*0.85;

commaria=commaria+commar;

CJOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARÍA" + "\n \n # VENTA: " + nummar +

"\n \n Venta=" + vmar + "\n Comisión= " + commar);

}

}

}

}

opj=JOptionPane.showInputDialog("Desea realizar una

nueva venta con nuestro vendedor María (1 SI/0 NO)");

op=Integer.parseInt(opj);

}

while(op==1);

JOptionPane.showMessageDialog(null,"EMPRESA DON LUCHO"

+ "\n \n VENDEDOR MARÍA" + "\n \n # VENTAS: "

+ nummar + "\n \n Total de ventas=" + totventma

Impresión del

nombre y datos

subtitulos

Impresión del

nombre y datos

subtitulos

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Decisión if y procesos

respectivos para

obtener sus distintos

resultados

Impresión del

nombre y datos

subtitulos

Cierre de sentencias if

Proceso de repetición,

mensaje y cierre del

do while

Impresión del

nombre y datos

subtitulos

Page 38: Ejercicios de Aplicación

+ "\n Comisiones ganadas= " + commaria);

break;

case 4:

System.exit(0);

break;

}

rept=JOptionPane.showInputDialog("Desea realizar una

nueva compra (1 SI/0 NO)");

op=Integer.parseInt(rept);

}

while(op==1);

total=totventj+totventm+totventma;

JOptionPane.showMessageDialog(null,"EMPRESA DON LUCHO"

+ "\n \n VENDEDOR JUAN" + "\n \n # VENTAS: "

+ numj + "\n \n Total de ventas=" + totventj +

"\n Comisiones ganadas= " + comjuan +

"\n \n VENDEDOR MARCELO" + "\n \n # VENTAS: "

+ nummarc + "\n \n Total de ventas=" + totventm +

"\n Comisiones ganadas= " + commarcelo + "\n \n

VENDEDOR MARÍA"

+ "\n \n # VENTAS: " + nummar + "\n \n Total de ventas="

+ totventma + "\n Comisiones ganadas= " + commaria+

"\n \n TODAL DE LAS VENTAS= " + total );

}}

Corrido

Case 4 Opción Salir

Repetir el Programa

n veces

Suma total de las

comisiones de vendedores

Impresión de

subtítulos, para

cada vendedor y en

forma general, total,

comisiones

ganadas y

respuestas finales

Cierre del programa con

sus respectivas llaves

ves

Page 39: Ejercicios de Aplicación
Page 40: Ejercicios de Aplicación
Page 41: Ejercicios de Aplicación
Page 42: Ejercicios de Aplicación
Page 43: Ejercicios de Aplicación

EJERCICIO N.-11

Enunciado

Diseñe un programa que me permita calcular el valor por concepto de

matrículas de una institución educativa bajo los siguientes parámetros

Las matriculas se cobran de forma diferenciada de acuerdo al tipo de

institución que puede ser:

Publica costo de la matricula: $120,00

Particular costo de la matricula: $190,00

Fisco misional costo de la matricula: $140,00

Todos los estudiantes independientemente del tipo de institución

cancelan los siguientes aranceles por beneficios extras que le concede

la institución, estos son:

3% de la Matricula corresponde al Servicio Medico

8% de la Matricula corresponde al Servicio de Internet

6% de la Matricula corresponde al Servicio de Deportes

El sistema debe visualizar y reflejar el # de estudiantes matriculados por

día, el valor total acumulado por tipo de institución y por tipo de arancel,

además que debe visualizar el Boucher individual de cada estudiante.

Analisis

Iniciamos el programa para ello debemos importar las bibliotecas que vayamos

a utilizar en el programa, en este caso deberemos importar la librería principal

(import javax.swing.JOptionPane; ) y la librería de la clase que usaremos

(import pkg13.operacionesmenu.operaciones;).

Debemos declarar las variables string y las variables enteras que necesitemos.

En la variable de escoger una opción imprimimos el menú que vamos a

presentar para realizar los diferentes procesos.

Covertimos la variable escoger (de string) a entero y asignamos el valor de

correspondiente.

Utilizamos un swtich para realizar cada proceso del menú.

En cada case debemos realizamos los procesos e imprimimos resultados.

Cerramos el programa con un while para que se repite las veces que desee el

usuario

Documentación

package matriculas;

import javax.swing.JOptionPane;

import java.text.DecimalFormat;

Importación de librerías

del programa

Page 44: Ejercicios de Aplicación

public class Matriculas {

public static void main(String[] args)

{

String nombre,tipo,ret,repet;

int t,op1, op;

double p=120,pr=190,f1=140,con1=0,con2=0,con3=0,

sm1,sd1,si1,t1,sm2,sd2,si2,t2,sm3,sd3,si3,t3,sm11=0,

sd11=0,si11=0,sm22=0,sd22=0,si22=0,sm33=0,sd33=0,

si33=0,pt=0,prt=0, ft=0,cont, mt, smt, sit,sdt,st,tt;

DecimalFormat f=new DecimalFormat(".00");

do

{

JOptionPane.showMessageDialog(null," SISTEMA DE MATRICULAS" );

tipo=JOptionPane.showInputDialog("Escoja el tipo de Institucion"

+"\n 1.- Publica"+"\n 2.- Pribada"+"\n 3.- Fiscomisinal"+"\n 4.-Salir");

t=Integer.parseInt(tipo);

switch(t)

{

case 1:

pt=pt+p;

con1=con1+1;

nombre=JOptionPane.showInputDialog("Ingrese el nombre

del estudiante:");

sm1=(p*3)/100;

sm11=sm11+sm1;

sd1=(p*8)/100;

sd11=sd11+sd1;

si1=(p*6)/100;

si11=si11+si1;

t1=sm1+sd1+si1+p;

JOptionPane.showMessageDialog(null," Nombre: "

+ nombre + "\n Institucion: Publica"+ "\n Costo de matricula: $ "

+ p +"\n Servicio Médico: $ "+f.format(sm1)+"\n Servicio Internt: $ "

+f.format(si1)+"\n Servicio Deportes"+f.format(si1)+"\n Total: $"

+f.format(t1) );

break;

Paquetes del programa

Inicio del programa

Declaración de

variables String, int y

double

Impresión del Menú de

Opciones

Transformación de

variables String a int

Incio del Switch con

Case1 (primera opción)

Do-while proceso de

repetición

Ingreso de Datos

Procesos

Impresión de resultados

Break cierre de la

primera opción (case 1)

Page 45: Ejercicios de Aplicación

case 2:

prt=prt+pr;

con2=con2+1;

nombre=JOptionPane.showInputDialog("Ingrese el nobre

del estudiante:");

sm2=(pr*3)/100;

sm22=sm22+sm2;

sd2=(pr*8)/100;

sd22=sd22+sd2;

si2=(pr*6)/100;

si22=si22+si2;

t2=sm2+sd2+si2+pr;

JOptionPane.showMessageDialog(null," Nombre: "+ nombre

+ "\n Institucion: Pribada"+ "\n Costo de matricula: $ " + pr

+"\n Servicio Médico: $ "+f.format(sm2)+"\n Servicio Internt: $ "

+f.format(si2)+"\n Servicio Deportes"+f.format(si2)+"\n Total: $"

+f.format(t2 ));

break;

case 3:

ft=ft+f1;

con3=con3+1;

nombre=JOptionPane.showInputDialog("Ingrese el

nombre del estudiante:");

sm3=(f1*3)/100;

sm33=sm33+sm3;

sd3=(f1*8)/100;

sd33=sd33+sd3;

si3=(f1*6)/100;

si33=si33+si3;

t3=sm3+sd3+si3+f1;

JOptionPane.showMessageDialog(null," Nombre: "+ nombre

+ "\n Institucion: Pribada"+ "\n Costo de matricula: $ " + f1

Inicio Case2 (segunda

opción)

Contadores

Ingreso de Datos

Procesos

Impresión de resultados

Break cierre de la

primera opción (case 2)

Inicio Case3 (tercera

opción)

Contadores

Ingreso de Datos

Procesos

Impresión de resultados

Page 46: Ejercicios de Aplicación

+"\n Servicio Médico: $ "+f.format(sm3)+"Servicio Internt: $

"+f.format(si3)+"Servicio Deportes"+f.format(si3)+"Total: $"

+f.format(t3 ));

break;

case 4:

System.exit(0);

break;

}

repet=JOptionPane.showInputDialog("Desea ingresar otra

matricula 1 / 0");

op1=Integer.parseInt(repet);

}while(op1==1);

cont=con1+con2+con3;

mt=pt+prt+ft;

smt=sm11+sm22+sm33;

sdt=sd11+sd22+sd33;

sit=si11+si22+si33;

st=smt+sdt+sit;

tt=mt+st;

JOptionPane.showMessageDialog(null,"REPORTE GENERAL"

+ "\n Publica Pribada Fiscomisional Total"

+ " /n N° de matriculados "+ con1 + " " + con2 +" "

+ con3 + " " + cont+ "\n Valor de matriculas $ "+ pt+ " $ "

+prt+" $ "+ft +" $"+mt+"\nServicios Medicos $ "

+f.format(sm11) + " $"+f.format(sm22)+" $"+f.format(sm33)+"

$"+f.format(smt)+"\n Servicios Internet $"+f.format(si11) + " $"

+f.format(si22)+" $"+f.format(si33)+" $"+f.format(sit)+"\n

Servicios Internet $"+f.format(sd11) + " $"+f.format(sd22)

+" $"+f.format(sd33)+" $"+f.format(sdt)+"\n

TOTOL: $ " +f.format(tt));

}

}

Break cierre de la

primera opción (case 2)

Case4 (Opción Salir) Cierre del switch

Fin del proceso de repeticion

Procesos Finales

Impresión final

Fin del Programa

Page 47: Ejercicios de Aplicación

Corrido del programa

Page 48: Ejercicios de Aplicación

EJERCICIO N.-12

Enunciado

12. Diseñe un programa que me permita simular el funcionamiento de un sistema de

rol de pagos bajo los siguientes parámetros:

el nominal se ingresa conforme a la categoría si es administrativo gana Usd. 540,

si es ejecutivo gana Usd 1’200,00 si es obrero gana Usd 340,00

Obtenga el valor ingresado Horas Extras tomando en puede tener un máximo de

número de horas extras 8 y cada hora cuesta Usd 3,50

Obtenga el valor de cargas familiares la misma que esta condicionada. Si el

empleado tiene más de dos hijos se le paga Usd. 4,5 por cada hijo caso contrario

se le reconoce Usd 6,2 por cada hijo

Obtenga el valor del IESS que es el 11,5 % del nominal

Se le descuenta a todos los empleados por concepto de comisariato el 2,5% del

nominal

Obtenga el total de ingreso, egresos y líquido a recibir

Análisis:

En este programa hemos utilizado Do-While ya la estructura Switch para realizar un

menú de opciones en cada case va el miso proceso, en la declaración de variables

utilizamos un doublé para cantidades con decimales, para la impresión hemos

utilizando la JOptionPane.showMessageDialog y al final cada case un break.

Código:

package prueba; import java.text.DecimalFormat; import javax.swing.JOptionPane; public class Prueba { public static void main(String[] args) { String opc1,opc,nom,ce; double ad=540,ej=1200,ob=340,he,ph,h,pi,ie,co,te,ti,st,sp,op1; int a,op; do{ DecimalFormat df=new DecimalFormat(".00"); opc=JOptionPane.showInputDialog(" LIQUIDO TOTAL DE EMPLEADOS\n"+"1.-Administrativo\n" +"2.-Ejeutivo\n"+"3.-Obrero\n"+"5.-Salir"); op=Integer.parseInt(opc); switch(op) { case 1: nom=JOptionPane.showInputDialog("Nombre: "); do{ he=Double.parseDouble(JOptionPane.showInputDialog("Horas extras: ")); }while(he>8); ph=he*3.50; h=Double.parseDouble(JOptionPane.showInputDialog("Hijos: "));

Nombre del programa o proyecto

librerías

Declaración de variables

Inicio del programa

Inicio del do-while

Diseño del menú

Ingreso de la opción

Inicio del switch

Ingreso del nombre

Ingreso de las horas

extras

Ingreso del número de hijos

Page 49: Ejercicios de Aplicación

if(h>2) { pi=h*4.50; } else { pi=h*6.20; } ti=ph+pi; ie=ad*0.115; co=ad*0.025; te=ie+co; sp=ad+ph+pi; st=sp-ie-co; JOptionPane.showMessageDialog(null," REPORTE GENERAL\n"+nom+"\nAdministrativo"+"\nSueldo " +ad+"\n\nIngresos "+ti+"\nHoras extras " +ph+"\nCargas familiares "+pi+"\n\nEgresos "+te+"\nIESS "+ie+ "\nComisiariato "+co+"\nSueldo a recibir "+st); break; case 2: nom=JOptionPane.showInputDialog("Nombre: "); do{ he=Double.parseDouble(JOptionPane.showInputDialog("Horas extras: ")); }while(he>8); ph=he*3.50; h=Double.parseDouble(JOptionPane.showInputDialog("Hijos: ")); if(h>2) { pi=h*4.50; } else { pi=h*6.20; } ti=ph+pi; ie=ej*0.115; co=ej*0.025; te=ie+co; sp=ej+ph+pi; st=sp-ie-co; JOptionPane.showMessageDialog(null," REPORTE GENERAL\n"+nom+"\nEjecutivo"+"\nSueldo " +ej+"\n\nIngresos "+ti+"\nHoras extras " +ph+"\nCargas familiares "+pi+"\n\nEgresos "+te+"\nIESS "+ie+ "\nComisiariato "+co+"\nSueldo a recibir "+st); break; case 3: nom=JOptionPane.showInputDialog("Nombre: "); do{ he=Double.parseDouble(JOptionPane.showInputDialog("Horas extras: ")); }while(he>8);

Proceso

Proceso

Impresión de resultados

Cierre del case

Ingreso del nombre

Ingreso de las horas

extras

Ingreso del número de hijos

Proceso

Impresión de resultados

Cierre del case 2

Ingreso del nombre

Ingreso de las horas

extras

Page 50: Ejercicios de Aplicación

ph=he*3.50; h=Double.parseDouble(JOptionPane.showInputDialog("Hijos: ")); if(h>2) { pi=h*4.50; } else { pi=h*6.20; } ti=ph+pi; ie=ob*0.115; co=ob*0.025; te=ie+co; sp=ob+ph+pi; st=sp-ie-co; JOptionPane.showMessageDialog(null," REPORTE GENERAL\n"+nom+"\nObrero"+"\nSueldo " +ob+"\n\nIngresos "+ti+"\nHoras extras " +ph+"\nCargas familiares "+pi+"\n\nEgresos "+te+"\nIESS "+ie+ "\nComisiariato "+co+"\nSueldo a recibir "+st); break; case 4: System.exit(0); break; } opc1=JOptionPane.showInputDialog("Salir 1/0: "); op1=Integer.parseInt(opc1); }while(op1==1); } }

Ingreso del número de hijos

Proceso

Impresión de resultados

Proceso

Cierre del case 3

Proceso par salir

Cierre del case 4

Cierre del while

Ingreso para la opción do-while

Page 51: Ejercicios de Aplicación

Corrido:

Page 52: Ejercicios de Aplicación

EJERCICIO N.-13

Enunciado

Diseñe un programa que me permita realizar las operaciones básicas a través

de un menú de opciones.

Análisis:

En este programa utilizamos un switch para realizar un menú de opciones y en

cada case hacemos procesos diferentes que nos permiten hacer el cálculo de

las seis operaciones básicas en el programa principal solo ingresamos los

datos e imprimimos y llamamos al proceso que está en las funciones y lo

llamamos desde el programa principal.

Debemos importar las bibliotecas q vayamos a utilizar en nuestro programa en

este caso (import javax.swing.JOptionPane;)

Código:

Programa principal.

package seisop;

import javax.swing.JOptionPane;

import seisop.funcionesop;

public class Seisop {

public static void main(String[] args) {

String dato1,dato2,op,opa;

int a,b,op1,sum1,res1,mult1,opb;

double div1,pot1,rad1;

do{

op=JOptionPane.showInputDialog("ESCOJA UNA OPCION

\n1.-SUMA\n2.-RESTA\n3.-MULTIPLICACION\n"+

"4.-DIVISION\n5. -POTENCIACION

\n6.-RADICACION\n7.-SALIR");

op1=Integer.parseInt(op);

switch(op1)

Importación de librerías

del programa y paquete

Paquetes del programa

Declaración de

variables

Menú de Opciones

Transforma de String

a int para switch

Page 53: Ejercicios de Aplicación

{

case 1:

dato1=JOptionPane.showInputDialog("Dato 1 :");

a=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog("Dato 2 :");

b=Integer.parseInt(dato2);

sum1=funcionesop.suma1(a, b);

JOptionPane.showMessageDialog(null,"La suma es: "+sum1);

break;

case 2:

do

{

dato1=JOptionPane.showInputDialog("Dato 1 :");

a=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog("Dato 2 :");

b=Integer.parseInt(dato2);

}while(a<b);

res1=funcionesop.resta(a, b);

JOptionPane.showMessageDialog(null,"La resta es:"+res1);

break;

case 3:

dato1=JOptionPane.showInputDialog("Dato 1 :");

a=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog("Dato 2 :");

b=Integer.parseInt(dato2);

mult1=funcionesop.multiplicacion(a, b);

JOptionPane.showMessageDialog(null,"La multiplicacion es:"+mult1);

break;

case 4:

do

{

dato1=JOptionPane.showInputDialog("Dato 1 :");

a=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog("Dato 2 :");

b=Integer.parseInt(dato2);

}while(a<b);

div1=funcionesop.division(a, b);

Ingreso de datos

Llamamos a la clase

Impresión del mensaje

Do-while para el control

en la resta

Ingreso de datos

Llamamos a la clase

Impresión del mensaje

Ingreso de datos

Llamamos a la clase

Impresión del mensaje

Control para el proceso de la división

Ingreso de datos

Page 54: Ejercicios de Aplicación

JOptionPane.showMessageDialog(null,"La division es:"+div1);

break;

case 5:

dato1=JOptionPane.showInputDialog("Base :");

a=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog("Exponente :");

b=Integer.parseInt(dato2);

pot1=funcionesop.potencia(a, b);

JOptionPane.showMessageDialog(null,"La potencia es:"+pot1);

break;

case 6:

dato1=JOptionPane.showInputDialog("Numero :");

a=Integer.parseInt(dato1);

rad1=funcionesop.radicacion(a);

JOptionPane.showMessageDialog(null,"La raiz es:"+rad1);

break;

}

opa=JOptionPane.showInputDialog("INGRESE 1 CONTINUAR

Y 0 PARA SALIR:");

opb=Integer.parseInt(opa);

}while(opb==1);

}

}

Clase del programa:

package seisop;

public class funcionesop {

public static int suma1(int a1, int b1)

{

int sumar;

sumar=(a1+b1);

return sumar;

}

public static int resta(int a1, int b1)

{

int restar;

restar=(a1-b1);

Llamamos a la clase

Impresión del mensaje

Ingreso de datos

Llamamos a la clase

Impresión del mensaje

Ingreso de datos

Llamamos a la clase

Impresión del mensaje

Mensaje de do-while para

enviar un mensaje si desea

repetir

Nombre del programa principal

Proceso de suma

Proceso de resta

Page 55: Ejercicios de Aplicación

return restar;

}

public static int multiplicacion(int a1, int b1)

{

int multiplicar;

multiplicar=(a1*b1);

return multiplicar;

}

public static double division(double a1, double b1)

{

double dividir;

dividir=(a1/b1);

return dividir;

}

public static double potencia(double a1, double b1)

{

double poten;

poten=Math.pow(a1,b1);

return poten;

}

public static double radicacion(double a1)

{

double radical;

radical=Math.sqrt(a1);

return radical;

}

}

Proceso de multiplicación

Proceso de división

Proceso de potencia

Proceso de radicación

Page 56: Ejercicios de Aplicación

Corrido:

Page 57: Ejercicios de Aplicación

EJERCICIO N.-14

Enunciado

Diseñe un menú de opciones que me permita realzar las 6 operaciones

básicas con datos enteros ingresados desde teclado, utilizando clases.

Analisis

1. Debemos importar las bibliotecas que vayamos a utilizar en el

programa, en este caso deberemos importar la librería principal

(import javax.swing.JOptionPane; ) y la librería de la clase que

usaremos (import pkg13.operacionesmenu.operaciones;).

2. Debemos declarar las variables string y las variables enteras que

necesitemos.

3. En la variable de escoger una opción imprimimos el menú que vamos a

presentar para realizar los diferentes procesos.

4. Covertimos la variable escoger (de string) a entero y asignamos el

valor de correspondiente.

5. Utilizamos un swtich para realizar cada proceso del menú.

6. En cada case debemos ingresar los dos valores que usaremos para las

operaciones (a excepción de la radicación) y convertirlos a datos de

tipo entero.

7. Llamamos a la variable en que almacenaremos el resultado que será

igual al nombre de la clase que usaremos y del bloque al que

pertenece, ubicando entre parentesis las variables de los datos

ingresados.

8. Imprimimos la variable resultante del proceso

9. Utilizamos un do while para preguntar al usuario si desea volver a

realizar el proceso con diferentes valores

10. Repetimos el proceso en cada case con la variación de realizar las

posteriores operaciones a la suma.

11. En el ultimo case utilzamos una instrucción que nos permitirá salir del

programa miestras este corriendo, esto es: System.exit(0);

12. Preguntamos si el usuario desea realizar nuevamente otros procesos o

si desea salir

Documentación

Page 58: Ejercicios de Aplicación

//PROGRAMA PRINCIPAL

package pkg13.operacionesmenu;

import javax.swing.JOptionPane;

import pkg13.operacionesmenu.operaciones;

public class Operacionesmenu {

public static void main(String[] args)

{

String dato1,dato2,escoger,opcion;

int num1,num2,suma,resta,multiplicacion,es,op;

double division, potenciacion, radicacion;

{

escoger=JOptionPane.showInputDialog(null, "

OPERACIONES BASICAS \n\n 1. Suma \n 2. Resta \n

3. Multiplicación \n 4. División \n 5. Potenciación \n

6. Radicación \n 7. Salir \n\n Escoja una opcion:");

es=Integer.parseInt(escoger);

switch(es)

{

case 1:

do{

dato1=JOptionPane.showInputDialog

("Ingrese el primer valor: ");

num1=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog

("Ingrese el segundo valor: ");

num2=Integer.parseInt(dato2);

suma=operaciones.sumar(num1, num2);

JOptionPane.showMessageDialog

(null, "La Suma es: "+ suma);

opcion=JOptionPane.showInputDialog

("Desea realizar otra suma: 1=si / 0=no");

op=Integer.parseInt(opcion);

}while(op==1);

Importación de librerías

del programa

Paquetes del programa

Declaración de

variables String, int y

double

Impresión del Menú de

Opciones

Transformación de

variables String a int

Incio del Switch con

Case1

Ingreso de Datos

Llamado de clase o

función

DO WHILE y break

Page 59: Ejercicios de Aplicación

break;

case 2

do{

do{

dato1=JOptionPane.showInputDialog

("Ingrese el primer valor: ");

num1=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog

("Ingrese el segundo valor: ");

num2=Integer.parseInt(dato2);

}while(num1<num2);

resta=operaciones.restar(num1, num2);

JOptionPane.showMessageDialog

(null, "La Resta es: "+ resta);

opcion=JOptionPane.showInputDialog

("Desea realizar otra resta: 1=si / 0=no");

op=Integer.parseInt(opcion);

}while(op==1);

break;

case 3:

do{

dato1=JOptionPane.showInputDialog

("Ingrese el primer valor: ");

num1=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog

("Ingrese el segundo valor: ");

num2=Integer.parseInt(dato2);

multiplicacion=operaciones.multi(num1, num2);

JOptionPane.showMessageDialog

(null, "La Multiplicación es: "+ multiplicacion);

opcion=JOptionPane.showInputDialog

("Desea realizar otra multiplicacion: 1=si / 0=no");

op=Integer.parseInt(opcion);

}while(op==1);

break;

case 4:

do{

do{

dato1=JOptionPane.showInputDialog

("Ingrese el primer valor: ");

num1=Integer.parseInt(dato1);

Case 2 y Do While

Ingreso de Datos

Llamado de clase o

función

DO WHILE y break

Case 3 y Do While

Ingreso de Datos

Llamado de clase o

función

DO WHILE y break

Case 4 y Do While

Ingreso de Datos

Llamado de clase o

Validación de datos

Page 60: Ejercicios de Aplicación

dato2=JOptionPane.showInputDialog

("Ingrese el segundo valor: ");

num2=Integer.parseInt(dato2);

}while(num1<num2);

division=operaciones.dividir(num1, num2);

JOptionPane.showMessageDialog

(null, "La División es: "+ division);

opcion=JOptionPane.showInputDialog

("Desea realizar otra division 1=si / 0=no");

op=Integer.parseInt(opcion);

}while(op==1);

break;

case 5:

do{

dato1=JOptionPane.showInputDialog

("Ingrese la base: ");

num1=Integer.parseInt(dato1);

dato2=JOptionPane.showInputDialog

("Ingrese el exponente: ");

num2=Integer.parseInt(dato2);

potenciacion=operaciones.potencia(num1, num2);

JOptionPane.showMessageDialog

(null, "La Potenciación es: "+ potenciacion);

opcion=JOptionPane.showInputDialog

("Desea realizar otra potenciacion 1=si / 0=no");

op=Integer.parseInt(opcion);

}while(op==1);

break;

case 6:

do{

dato1=JOptionPane.showInputDialog("Ingrese el valor: ");

num1=Integer.parseInt(dato1);

radicacion=operaciones.raiz(num1);

JOptionPane.showMessageDialog

(null, "La Radicacion es: "+ radicacion);

opcion=JOptionPane.showInputDialog

("Desea realizar otra radicación 1=si / 0=no");

op=Integer.parseInt(opcion);

}while(op==1);

break;

case 7:

Validación de datos

Case 5 y Do While

Ingreso de Datos

Llamado de clase o

función

DO WHILE y break

Case 6 y Do While

Ingreso de Datos

Llamado de clase o

función

DO WHILE y break

Case 7 Opción Salir

Page 61: Ejercicios de Aplicación

System.exit(0);

break;

}// fin del switch

opcion=JOptionPane.showInputDialog

("Desea volver al menu: 1=si / 0=no");

op=Integer.parseInt(opcion);

}while(op==1);

}// fin del paquete

}// fin de la aplicación

//CLASE DEL PROGRAMA

package pkg13.operacionesmenu;

public class operaciones

{

public static int sumar(int a, int b)

{

int sumar;

sumar=(a+b);

return sumar;

}

public static int restar(int a, int b)

{

int restar;

restar=(a+b);

return restar;

}

public static int multi(int a, int b)

{

int multi;

multi=(a+b);

return multi;

}

Fin del Switch

Repetir el Programa n

veces

Fin del Programa

Nombre del Programa

principal

Inicio de Clase o

Función

Proceso de suma

Proceso de resta

Proceso de

multiplicación

Page 62: Ejercicios de Aplicación

public static double dividir(double a, double b)

{

double dividir;

dividir=(a/b);

return dividir;

}

public static double potencia(double a, double b)

{

double potencia;

potencia=Math.pow(a, b);

return potencia;

}

public static double raiz(double a)

{

double raiz;

raiz=Math.sqrt(a);

return raiz;

}

}

Proceso de división

Proceso de

potenciación

Proceso de radicación

Page 63: Ejercicios de Aplicación

CORRIDO

Page 64: Ejercicios de Aplicación
Page 65: Ejercicios de Aplicación

EJERCICIO N.-15

ENUNCIADO:

Diseñe un programa utilizando clases que me permita verificar si un numero

entero ingresado desde teclado le corresponde a la siguiente categoría:

1 – 3 Bebé

3 – 11 Niño

12 – 17 Adolescente

18 – 45 Adulto

46 en adelante – Adulto Mayor

ANALISIS: Este programa permite verificar la edad a que categoría

corresponde. 1. Importación de bibliotecas principales que utilizaremos (import

javax.swing.JOptionPane; e importjava.text.DecimalFormat;). Debemos

declarar las variables String, double y formato para decimales. Inicialización de

ciclo do while para que el programa se repita n veces, llamamos a las clases.

En las clases hacemos el proceso correspondiente mediante un if, else e

impresiones de pantalla.

PROGRAMA

package edades;

import javax.swing.JOptionPane;

public class Edades {

public static void main(String[] args) {

String opcion,dato;

int edad1,op,edades;

do

{

opcion=JOptionPane.showInputDialog(null,"***VERIFICACION DE EDAD***\n1

a 3 años BEBE\n3 a 11 años NIÑO\n12 a 17 años ADOLESCENTE\n18 a 45

años ADULTO\n45 en adelante ADULTO MAYOR\n**INGRESE UNA EDAD**

");

edad1=Integer.parseInt(opcion);

edades=edad.edades(edad1);

dato=JOptionPane.showInputDialog(null,"DESEA REPETIR 1 O 0 PARA

SALIR: ");

op=Integer.parseInt(dato);

}while(op==1);

}

}

Importación de librerías del

programa

Paquetes del programa

Declaración de variables String y double

Inicio ciclo do while principal

LLAMA A LAS FUNCIONES

SE CIERRA EL LAZO REPETITIVO

Page 66: Ejercicios de Aplicación

CLASES

package edades;

import javax.swing.JOptionPane;

public class edad {

public static int edades(int edad1)

{

if(edad1>=1 && edad1<=3)

{

JOptionPane.showMessageDialog(null, "BEBE: "+edad1);

}

else

{

if(edad1>=4 && edad1<=11)

{

JOptionPane.showMessageDialog(null, "NIÑO: "+edad1);

}

else

{

if(edad1>=12 && edad1<=17)

{

JOptionPane.showMessageDialog(null, "ADOLESCENTE: "+edad1);

}

else

{

if(edad1>=18 && edad1<=45)

{

JOptionPane.showMessageDialog(null, "ADULTO: "+edad1);

}

else

{

if(edad1>45)

{

JOptionPane.showMessageDialog(null, "ADULTO MAYOR: "+edad1);

}

}

}

}

}

return 0;

}

}

Importación de librerías del

programa

PROCESO

SE CIERRA LA CLASE

Page 67: Ejercicios de Aplicación

EJERCICIO N.-16

ENUNCIADO:

Diseñe un menú de opciones utilizando clases de un conjunto de series de

datos: primos, factorial, Fibonacci, pares, y la opción salir.

ANALISIS:

Para realizar este proyecto primero debemos importar las bibliotecas que

vayamos a utilizar, Declarar datos del tipo que necesitemos y empezar el

programa con títulos y un menú de opciones que nos permita escoger la serie

que deseemos realizar, seguido de una clase para realizar cada serie, también

con la opción de repetir el proceso las veces que desee el usuario presentando

al fin los resultados respectivos que queremos.

DOCUMENTACIÓN:

package menuseries; import javax.swing.JOptionPane; import menuseries.series; public class Menuseries { public static void main(String[] args) { String dato1, dato2,dato3; int op,limite,pares,num,i,p,primos,factor,fibo,opc; JOptionPane.showMessageDialog(null, "MENU DE SERIES "); do {dato1=JOptionPane.showInputDialog("1. PRIMOS \n 2. FACTORIAL \n 3. FIBONACCI \n 4. PARES \n 5. SALIR \n Ingrese una opcion: "); op=Integer.parseInt(dato1); switch(op) { case 1:

dato2=JOptionPane.showInputDialog("Ingrese un limite"); limite=Integer.parseInt(dato2); primos=series.primos(limite); break; case 2: dato2=JOptionPane.showInputDialog("Ingrese un limite"); limite=Integer.parseInt(dato2); factor=series.facto(limite); break; case 3: dato2=JOptionPane.showInputDialog("Ingrese un limite"); limite=Integer.parseInt(dato2); fibo=series.fibo(limite); break; case 4: dato2=JOptionPane.showInputDialog("Ingrese un limite"); limite=Integer.parseInt(dato2);

Importación de librerías

del programa

Declaración de

variables String, int y

double

Impresión del Menú de

Opciones

Inicio del Switch con

Case1 Ingreso del límite y

Llamado de clase o

función Inicio del Switch con

Case 2 Ingreso del límite y

Llamado de clase o

función Inicio del Switch con

Case 3 Ingreso del límite y

Llamado de clase o

función

Inicio del Switch con Case 4

Ingreso del límite y

Llamado de clase o

función

Page 68: Ejercicios de Aplicación

pares=series.par(limite); break; case 5: System.exit(0); break; } dato3=JOptionPane.showInputDialog("Volver al menu 1 Salir 0: "); opc=Integer.parseInt(dato3); } while(opc==1); } }

CLASE DEL PROGRAMA

package menuseries; import javax.swing.JOptionPane; public class series { public static int par (int limite) { int p; int i; p=0; for(i=1;i<=limite;i++) { p=p+2; JOptionPane.showMessageDialog(null, +p); } return 0; } public static int primos (int limite) { int conta,residuo,i,j; for(i=1;i<=limite;i++) { conta=0; for(j=1;j<=i;j++) { residuo=i%j; if(residuo==0) { conta=conta+1; } } if(conta==2) { JOptionPane.showMessageDialog(null, +i); } }

Fin del Switch con Case 5

Repetir el Programa n

veces

Fin del Programa

Nombre del Programa

principal

Serie de numeros pares

Serie de numeros primos

Serie de numeros primos

Page 69: Ejercicios de Aplicación

return 0; } public static int facto(int limite) { int f,i; f=1; i=1; i=i+1; for(i=1;i<=limite;i++) { f=f*i; JOptionPane.showMessageDialog(null, +i+f); } return 0; } public static int fibo(int limite) { int m,i,j,c,a = 0,b=1; m=1; for(j=1;j<=limite-1;j++) { m=m+3; } for(i=0;i<=limite-2;i++) { c=a+b; a=b; b=c; JOptionPane.showMessageDialog(null, +a); } return 0; } }

Serie de la factorial

Serie del Fibonacci

Page 70: Ejercicios de Aplicación

CORRIDO DEL PROGRAMA:

Page 71: Ejercicios de Aplicación

EJERCICIO N.-17

ENUNCIADO:

Diseñe un programa utilizando clases que me permita ingresar un número

entero desde teclado y me permita descomponerlo en todos sus elementos

posibles. (Unidad, decena, centena, unidad de mil, etc.)

ANÁLISIS

Necesitaremos una variable tipo int para generar la descomposición en sus

unidades

DOCUMENTACIÓN

package decompocicion;

import javax.swing.JOptionPane;

import decompocicion.descomponer;

public class Decompocicion {

public static void main(String[] args) {

String num;

int a,res;

do{

num=JOptionPane.showInputDialog("NUMERO");

a=Integer.parseInt(num);

}while(a<1 || a>9999);

res=descomponer.descomponer(a);

}

}

Clase

package decompocicion;

import javax.swing.JOptionPane;

public class descomponer {

public static int descomponer(int a)

{

int um,c,d,u;

um=a;

um=(um/1000)*1000;

c=a;

c=c-um;

c=(c/100)*100;

d=a;

d=d-um-c;

d= (d/10)*10;

u=(a-um)-c-d;

JOptionPane.showMessageDialog(null,"Unidad "+u+"\nDecena

"+d+"\nCentena "+c

Importación de librerías

del programa

Paquetes del programa

Declaración de variables tipo int y string

Fin del programa principal

Programa principal importación de librerías e inicio de clases

Clase descomposición

con su respectivo

proceso para realizar

una descomposición en

sus unidades

Page 72: Ejercicios de Aplicación

+"\nUnidad de mil "+um+"\nTotal "+a);

return 0;

}

}

CORRIDO

Page 73: Ejercicios de Aplicación

EJERCICIO N.-18

ENUNCIADO:

Diseñe un menú de opciones utilizando clases que me permita diseñar un

sistema de conversiones de números de diferentes bases.

Se necesita convertir un número entero a su binario correspondiente, un entero

a octal y un entero a hexadecimal.

ANALISIS:

Para realizar este proyecto primero debemos importar las bibliotecas que

vayamos a utilizar, Declarar datos del tipo que necesitemos y empezar el

programa con títulos y un menú de opciones que nos permita escoger la

conversión que deseemos realizar, seguido de una clase para realizar cada

conversion, también con la opción de repetir el proceso las veces que desee el

usuario presentando al fin los resultados respectivos que queremos.

DOCUMENTACIÓN:

package conversiones; import javax.swing.JOptionPane; public class Conversiones { public static void main(String[] args) { String dato1, dato2, dato; int a,bi,oc,hexa,op,opc; JOptionPane.showMessageDialog(null, "CONVERSIONES "); do { dato=JOptionPane.showInputDialog("1. BINARIO \n 2. OCTAL \n 3. HEXADECIMAL \n 4. SALIR \n Ingrese una Opcion: "); opc=Integer.parseInt(dato); switch(opc) { case 1: dato1=JOptionPane.showInputDialog("Ingrese un numero: "); a=Integer.parseInt(dato1); bi=convers.bi(a); break; case 2: dato1=JOptionPane.showInputDialog("Ingrese un numero: "); a=Integer.parseInt(dato1); oc=convers.oct(a); break; case 3: dato1=JOptionPane.showInputDialog("Ingrese un numero: "); a=Integer.parseInt(dato1); hexa=convers.he(a); break; case 4: System.exit(0); break;

Importación de librerías

del programa

Declaración de

variables String, int y

double

Impresión del Menú de

Opciones

Inicio del Switch con

Case1

Ingreso el número que

deseo transformar a

binario y llamamos a la

clase

Inicio del Switch con

Case 2 Ingreso el número que

deseo transformar a

octal y llamamos a la

clase

Inicio del Switch con

Case 3

Fin del Switch con

Case 4

Ingreso el número que

deseo transformar a

hexadecimal y llamamos a

la clase

Page 74: Ejercicios de Aplicación

} dato2= JOptionPane.showInputDialog("VOLVER AL MENU 1 SALIR 0: "); op=Integer.parseInt(dato2); } while(op==1); } }

CLASE DEL PROGRAMA

package conversiones; import javax.swing.JOptionPane; public class convers { public static int bi (int a) { JOptionPane.showMessageDialog(null, "Numero Binario: "+Integer.toBinaryString(a)); return 0; } public static int oct (int a) { JOptionPane.showMessageDialog(null, "Numero Octal: "+Integer.toOctalString(a)); return 0; } public static int he(int a) { JOptionPane.showMessageDialog(null, "Numero Hexadecimal: "+Integer.toHexString(a)); return 0; } }

Fin del Programa

Nombre del Programa

principal

Transformación de un número decimal a binario

Repetir el Programa n

veces

Transformación de un

número decimal a octal

Transformación de un

número decimal a

hexadecimal

Page 75: Ejercicios de Aplicación

CORRIDO DEL PROGRAMA: