PROGRAMACIÓN II.
FACULTAD DE CIENCIAS HUMANAS Y DE LA EDUCACIÓN
CARRERA DE DOCENCIA EN INFORMATICA
ELEMENTO 2 Y 3 PROGRAMAS EN JAVA NOMBRE: o JESSENIA GARCES. SEMESTRE: TERCERO “A” DOCENTE: ING. WILMA GAVILANZ PERIODO: ABRIL-SEPTIEMBRE 2014.
Página 1
PROGRAMACIÓN II.
INDICE PROGRAMA Nª 1 .......................................................................................................................................... 3 PROGRAMA Nª 2 .......................................................................................................................................... 4 PROGRAMA Nª 3 .......................................................................................................................................... 6 PROGRAMA Nª 4 .......................................................................................................................................... 9 PROGRAMA Nª 5 ........................................................................................................................................ 11 PROGRAMA Nª 6 ........................................................................................................................................ 12 PROGRAMA Nª 7 ........................................................................................................................................ 15 PROGRAMA Nª8 ......................................................................................................................................... 17 PROGRAMA Nª 9 ........................................................................................................................................ 19 PROGRAMA Nª 10 ...................................................................................................................................... 21 PROGRAMA Nª 11 ...................................................................................................................................... 29 PROGRAMA Nª 12 ...................................................................................................................................... 34 PROGRAMA Nª 13 ...................................................................................................................................... 38 PROGRAMA Nª 14 ...................................................................................................................................... 42 PROGRAMA Nª 15 ...................................................................................................................................... 48 PROGRAMA Nª 16 ...................................................................................................................................... 52 PROGRAMA Nª17 ....................................................................................................................................... 54 PROGRAMA Nª18 ....................................................................................................................................... 56
Página 2
PROGRAMACIÓN II.
PROGRAMA Nª 1 ENUNCIADO
Utilizando el lenguaje de programación orientado a objetos JAVA realizar una suma ingresando dos números enteros desde teclado ANALISIS
En este programa realizamos la suma de dos números enteros ingresados por teclado, primero necesitamos dos variables String (dato1, dato2), y dos variables de enteras para el primero y segundo números ingresados y una para que se guarde los datos sumados int num1, num2, suma; luego ingresamos las variables enteras y realizamos la respectiva suma suma=num1+num2; finalmente visualizamos la respuesta. CODIGO package suma;
Nombre del programa anteriormente dado
import javax.swing.JOptionPane; public class Suma public static void main(String[] args)
Librería librerias
Inicializamos el programa principal
{ String dato1, dato2; int n1, n2, suma;
Declaración de variable tipo caracter Declaración de variables de tipo enteras
dato1=JOptionPane.showInputDialog("1° numero"); n1=Integer.parseInt(dato1); dato2=JOptionPane.showInputDialog("2° numero"); n2=Integer.parseInt(dato2); suma=n1+n2; Proceso para realizar la suma JOptionPane.showMessageDialog(null,"La Suma es= "+suma); } }
Culminación del programa
CORRIDO
Página 3
Ingreso de la primera variable (primer número) Ingreso de la segunda variable (segundo número)
Visualización de la respuesta
PROGRAMACIÓN II.
PROGRAMA Nª 2 ENUNCIADO
Diseñar un programa en JAVA que me permita resolver las operaciones básicas. ANALISIS
En este programa realizamos la suma de dos números enteros ingresados por teclado, primero necesitamos dos variables String (dato1, dato2), y dos variables de enteras para el primero y segundo números ingresados y una para que se guarde los datos sumados int num1, num2, suma; luego ingresamos las variables enteras y realizamos la respectiva suma suma=num1+num2; finalmente visualizamos la respuesta.
CODIGO package operbasicas;
Nombre del programa anteriormente dado
import javax.swing.JOptionPane;
Librería
public class OperBasicas { public static void main(String[] args)
Inicializamos el programa principal
{ String dato1, dato2, dato3, dato4, dato5, dato6, dato7, dato8; int num1, num2, num3, num4, num5, num6, num7, num8;
Declaración de variable tipo caracter Declaración de variables de tipo enteras
int suma,resta, multi, division; dato1=JOptionPane.showInputDialog("Ingrese el 1er sumando : "); num1=Integer.parseInt(dato1); Culminación del programa
dato2=JOptionPane.showInputDialog("Ingrese el 2do sumando : ");
Proceso para realizar la suma
num2=Integer.parseInt(dato2); suma=num1+num2; JOptionPane.showMessageDialog(null, "La suma es "+ suma); dato3=JOptionPane.showInputDialog("Ingrese el minuendo : "); num3=Integer.parseInt(dato3); dato4=JOptionPane.showInputDialog("Ingrese el sustraendo 4 : "); num4=Integer.parseInt(dato4); resta=num3-num4;
Página 4
Proceso para realizar la resta
PROGRAMACIÓN II. JOptionPane.showMessageDialog(null, "La resta es "+ resta); dato5=JOptionPane.showInputDialog("Ingrese el 1er factor : "); num5=Integer.parseInt(dato5); dato6=JOptionPane.showInputDialog("Ingrese el 2do factor : "); num6=Integer.parseInt(dato6); multi=num5*num6; JOptionPane.showMessageDialog(null, "El producto es: "+ multi); dato7=JOptionPane.showInputDialog("Ingrese el dividendo : "); num7=Integer.parseInt(dato7); dato8=JOptionPane.showInputDialog("Ingrese el divisor : "); num8=Integer.parseInt(dato8); division=num7/num8; JOptionPane.showMessageDialog(null, "El cociente es "+ division); } } CORRIDO
Página 5
Proceso para realizar la multiplicación
Proceso para realizar la división
PROGRAMACIÓN II.
PROGRAMA 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. ANALISIS En este programa podremos calcular el área y perímetro de las 4 figuras básicas, primero ingresamos la variable de tipo carácter después ingresamos las variables de tipo flotante, después ingresamos el radio, el lado, la base la altura para cada figura a la que se la deba ingresar por cada figura, para que después se pueda realizar el proceso de cada figura y visualizar las áreas y perímetros de cada figura básica.
Página 6
PROGRAMACIÓN II.
CODIGO package figuras;
Nombre del programa import javax.swing.JOptionPane; Liberia public class Figuras { public static void main(String[] args)
Inicio del programa principal
{ String radio;
Declaración de variable tipo caracter
float r,area,perimetro;
Ingreso de variables tipo float
JOptionPane.showMessageDialog(null, "El Circulo"); radio=JOptionPane.showInputDialog("Ingrese el radio:");
Ingresamos el Radio
r=Integer.parseInt(radio); Calculamos el área
area=(float)((3.1416)*r*r); perimetro=(float)((3.1416)*r*2);
Calculamos el perímetro
JOptionPane.showMessageDialog(null,"El area es:"+area);
Visualizamos el área y perímetro
JOptionPane.showMessageDialog(null,"El perimetro es:"+perimetro);
String lado;
Declaración de variable tipo caracter
float l, area2, perimetro2;
Ingreso de variables tipo float
JOptionPane.showMessageDialog(null, "El Cuadrado"); lado=JOptionPane.showInputDialog("El Lado");
Ingresamos el Lado
l=Integer.parseInt(lado); area2=((float)l*l); perimetro2=((float)l*4);
Calculamos el área Calculamos el perímetro
JOptionPane.showMessageDialog(null,"El area es="+area2);
Visualizamos el área y perímetro
JOptionPane.showMessageDialog(null,"El perimetro es="+perimetro2); String base,altura;
Declaración de variable tipo caracter
float b,h,area3,perimetro3;
Ingreso de variables tipo float JOptionPane.showMessageDialog(null, "El Rectangulo"); base=JOptionPane.showInputDialog("La base: ");
Ingresamos la Base
b=Integer.parseInt(base); altura=JOptionPane.showInputDialog("La altura: ");
Página 7
Ingresamos la Altura
PROGRAMACIÓN II. h=Integer.parseInt(altura); Calculamos el área
area3=b*h;
Calculamos el perímetro
perimetro3=(2*(b+h));
JOptionPane.showConfirmDialog(null, "Area es="+area3);
Visualizamos el área y perímetro
JOptionPane.showConfirmDialog(null, "Perimetro es="+perimetro3); Declaración de variable tipo caracter
String base1,altura1,lado1; float b1,h1,l1,area4,perimetro4;
Ingreso de variables tipo float
base=JOptionPane.showInputDialog("La base: "); b1=Integer.parseInt(base);
Ingresamos la Base
altura1=JOptionPane.showInputDialog("La altura: "); h1=Integer.parseInt(altura); lado1=JOptionPane.showInputDialog("El lado: ");
Ingresamos la Altura Ingresamos el Lado
l1=Integer.parseInt(lado); area4=((b1*h1)/2);
perimetro4=l*4;
Calculamos el área Calculamos el perímetro
JOptionPane.showConfirmDialog(null, "Area es="+area4); JOptionPane.showConfirmDialog(null, "Perimetro es="+perimetro4); }} CORRIDO
Página 8
Visualizamos el área y perímetro
PROGRAMACIÓN II.
PROGRAMA 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;
Nombre del programa o proyecto
import javax.swing.JOptionPane;
Librería
public class PoteyRadi { public static void main(String[] args)
Inicio del programa
{ String dato1, dato2;
Declaración de variables de tipo caracter
double base, expo, resp;
Declaración de variables de tipo JOptionPane.showMessageDialog(null,"Potenciacion"); doble dato1=JOptionPane.showInputDialog("Ingrese una base: "); base=Integer.parseInt(dato1); dato2=JOptionPane.showInputDialog("Ingrese el exponente: ");
Ingresamos la base de la potenciación Ingresamos el exponente
expo=Integer.parseInt(dato2); resp=Math.pow(base, expo);
Formula o proceso para poder realizar la potenciación
JOptionPane.showMessageDialog(null, "El resultado es: "+resp);
Visualizamos el resultado
JOptionPane.showMessageDialog(null,"Radicación"); double radicando, raiz; dato1=JOptionPane.showInputDialog("Ingrese un indice: "); radicando=Integer.parseInt(dato1); raiz=Math.sqrt(radicando);
Ingresamos el índice de la raíz
Formula o proceso para poder realizar la radicación
JOptionPane.showConfirmDialog(null,"La raiz es: "+raiz);
Página 9
Visualizamos el resultado
PROGRAMACIร N II. }} CORRIDO
Pรกgina 10
PROGRAMACIÓN II. PROGRAMA 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
En este programa podremos realizar la verificación si un número ingresado por teclado es par o impar, pero el número ingresado debe estar entre 6 y 65; esto se llama validación de datos esto se lo realiza con d-while. Al final solo se realiza el proceso de verificación si el número ingresado es par o impar. CODIGO package ifparimpar;
Nombre del programa anteriormente dado
import javax.swing.JOptionPane; public class IfParImpar {
Librería Inicio del programa principal
public static void main(String[] args) { String dato1,dato2; int n,op;
Declaración de variables de tipo caracter
Declaración de variables de tipo enteras
JOptionPane.showMessageDialog(null, "---→PAR O IMPAR←---"); do{ do{ dato1=JOptionPane.showInputDialog("Numero entre 6 y 65: "); n=Integer.parseInt(dato1); Validación de datos con un DO-WHILE
if(n<6 || n>65) { JOptionPane.showMessageDialog(null,"ERROR ingr. un #del rango"); } }while(n<6 || n>65); if(n%2==0) {
Verificación del número ingresado si es o no divisible para dos
JOptionPane.showMessageDialog(null,"#PAR: ");
Impresión de Mensaje “PAR”
}
else { JOptionPane.showMessageDialog(null,"#IMPAR");
Impresión de Mensaje “IMPAR”
}
dato2=JOptionPane.showInputDialog(null,"Repetir 1 o salir 0: ");
Página 11
Proceso para poder repetir todo el programa y por último fin del programa
PROGRAMACIÓN II. op=Integer.parseInt(dato2); } while(op==1); }}
CORRIDO
PROGRAMA 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 Si el promedio es > 5 y < 7 Si el promedio es < =5
Aprobado Suspenso Reprobado
Página 12
PROGRAMACIÓN II. 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 CODIGOutilizaremos otro do While para repetir el proceso las veces que el usuario desee. package prom ediovalidacion; Importación de librerías import javax.swing.JOptionPane; del programa public class Promediovalidacion { public static void main(String[] args) { String dato1, dato2,dato3,dato4, nom, mat; Ingreso de variables float num, nombre, materia, nota1, nota2, nota3,pro; int op; do { Ingreso de datos nom=JOptionPane.showInputDialog("INGRESE EL NOMBRE:"); nombre y materia mat=JOptionPane.showInputDialog("INGRESE EL MATERIA:"); del estudiante do { dato1= JOptionPane.showInputDialog("INGRESE LA NOTA1:"); Ingreso de la nota1= Float.parseFloat(dato1); primera nota if(nota1<1||nota1>11) { Condición de la nota ingresada JOptionPane.showInputDialog("VALOR INCORRECTO:"); } } while(nota1<1||nota1>11); do
{
Mensaje
Validación de la nota entre 1 y 10
dato2= JOptionPane.showInputDialog("INGRESE LA NOTA2:"); Ingreso de la segunda nota
nota2= Float.parseFloat(dato2);
if(nota2<1||nota2>11) {
Condición de la nota ingresada
JOptionPane.showInputDialog("VALOR INCORRECTO:"); }
while(nota2<1||nota2>11); do
Mensaje
} Validación de la nota entre 1 y 10
{
dato3= JOptionPane.showInputDialog("INGRESE LA NOTA3:"); Ingreso de la tercera nota Página 13
PROGRAMACIÓN II. nota3= Float.parseFloat(dato3); if(nota3<1||nota3>11) { JOptionPane.showInputDialog("VALOR INCORRECTO:");
mensaje
} } Validación de la nota entre 1 y 10
while(nota3<1||nota3>11);
Procesos promedio de notas
pro= (nota1+nota2+nota3)/3;
JOptionPane.showMessageDialog(null,"EL PROMEDIO ES:"+pro ); if(pro>=7)
{
Condición de la nota >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)
Impresión datos aprobado: Nombre Promedio Materia
de de
Impresión datos suspenso: Nombre Promedio Materia
de de
{
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); }
Impresión de datos de reprobado: Nombre Promedio Materia Ciclo repetitivo n veces para el proceso.
while(op==1); }
CORRIDO
Página 14
PROGRAMACIÓN II.
PROGRAMA 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
ANALISIS
En este programa podemos realizar las tablas de multiplicar; debemos declarar las variables de tipo enteras, luego ingresamos el límite y el factor, por último visualizamos la respuesta.
CODIGO public class Tabla { public static void main(String[] args) { Declaración de variables String, int
String dato1,dato2,dato3,dato4; int limite,factor,i,mult,op=0,opci,a,b,c,factorial; do
Inicio del ciclo do-while
{ JOptionPane.showMessageDialog(null, " << SERIE DE DATOS >> \n" + "TABLA DE MULTIPLICAR"); dato1=JOptionPane.showInputDialog("INGRESE EL LIMITE:");
Ingreso de Datos
limite=Integer.parseInt(dato1); dato2=JOptionPane.showInputDialog("INGRESE EL FACTOR:"); factor=Integer.parseInt(dato2); for(i=1;i<=limite;i++) {
Proceso de multiplicación e impresión de resultado
mult=i*factor; JOptionPane.showMessageDialog(null, " LA TABLA DE MULTIPLICAR ES: \n" + factor + "*" + i + " = " + mult); }
Página 15
PROGRAMACIร N II. dato3=JOptionPane.showInputDialog(" PULSE 1 PARA CONTINUAR O 0 PARA SALIR "); op=Integer.parseInt(dato3); Fin del ciclo do-while
} while(op==1); } } CORRIDO
Pรกgina 16
PROGRAMACIÓN II.
PROGRAMA Nª8 ENUNCIADO Diseñe un programa que me permita resolver un sistema de ecuaciones de 2° grado (ax^2 + bx +c)
ANALISIS
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 CODIGO o si desea salir CODIGO package ecuacion; import javax.swing.JOptionPane;
public class Ecuacion { public static void main(String[] args) { String dato2; int op ;
do{
Declaración de variables
Nombre del proyecto
Librería Inicio del programa
Proceso de repetición
JOptionPane.showMessageDialog (null,"ECUACION DE SEGUNDO GRADO" );
Impresión de un mensaje
double a = Double.parseDouble (JOptionPane.showInputDialog ("Ingrese el primer valor de a: ")); double b = Double.parseDouble (JOptionPane.showInputDialog ("Ingrese el segundo valor de b: "));
Ingresamos los tres valores
double c = Double.parseDouble
Página 17
PROGRAMACIÓN II. (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);
Realizamos el proceso para sacar la ecuación
Este es el proceso para sacar la raíz cuadrada de la ecuación
JOptionPane.showMessageDialog (null, "valor de x1 y x2: " + x1 +" \n"+x2 ); x1=-b/(2*a);
Visualizamos el resultado
double resultado= Math.sqrt((-interno/(2*a))); 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); } }} CORRIDO
Proceso para que el usuario realice otro proceso o si desea salir
Página 18
PROGRAMACIÓN II.
PROGRAMA 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 kwattio 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
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. Ingreso del valor anterior e inicialización del ciclo do while. Ingreso del valor actual, fin ciclo do while y validación del valor anterior debe ser mayor que el valor actual. Obtención de los impuestos de bomberos, taza municipal y otros los mismos que su porcentaje será multiplicado y dividido para 100. 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 , Finalización del ciclo do while principal y preguntamos si el usuario desea realizar nuevamente otros procesos o si desea salir.
Página 19
PROGRAMACIÓN II. CODIGO packageplanilla.de.luz; importjava.text.DecimalFormat;
Importación de librerías del programa
importjavax.swing.JOptionPane; Paquetes del programa
public static void main (String[] args) { String dato1, dato2, dato4;
Declaración de variables String y double
double valor1, valor2, dif, cost,bomb,tasa,otros,tot,op ; DecimalFormat f = new DecimalFormat ("00.00"); DecimalFormat g = new DecimalFormat ("0.00"); Instrucción formato para decimales
do Inicio ciclo do while principal
{ JOptionPane.showMessageDialog (null," << PLANILLA DE LUZ >> "); dato1=JOptionPane.showInputDialog (" INGRESE EL VALOR ANTERIOR: "); valor1=Integer.parseInt (dato1); do Inicio del ciclo do while { dato2=JOptionPane.showInputDialog ("<< INGRESE EL VALOR ACTUAL: "); valor2=Integer.parseInt (dato2); } While (valor1>valor2);
Impresión de titulo Escaneo del primer valor
Escaneo del segundo valor
Validación del valor 1 y valor 2
Dif =valor2-valor1; Cost=dif*0.89; Bomb= (cost*3)/100;
Procesos para operaciones
Tasa= (cost*4)/100; Otros = (cost*2)/100; Tot=cost+bomb+tasa+otros;
JOptionPane.showMessageDialog (null," CONSUMO ANTERIOR: " +valor1+"\n CONSUMO ACTUAL:
"
+valor2+ "\n CONSUMO REAL:
"
+ dif + "\n COSTO: + "\n << VALOR CONSUMO:
Impresión de resultados
0.89” "
+ 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:
"
Página 20
PROGRAMACIÓN II. +f.format (tot); dato4=JOptionPane.showInputDialog ("PULSE 1 PARA CONTINUAR O 0 PARA SALIR "); Op=Integer.parseInt (dato4); } While (op==1);
Fin ciclo do while validado a 1
} Fin del programa
}
CORRIDO
PROGRAMA 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.
Página 21
Escaneo de opción para repetición del proceso
PROGRAMACIÓN II.
ANALISIS
Debemos importar las bibliotecas que vayamos a utilizar en el programa, en este caso deberemos importar la librería principal (import javax.swing.JOptionPane ;). 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. Convertimos 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 ingresar los dos valores que usaremos para las operaciones y convertirlos a datos de tipo entero. 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. Imprimimos la variable resultante del proceso Utilizamos un do while para preguntar al usuario si desea volver a realizar el proceso con diferentes valores. Repetimos el proceso en cada case con la variación de realizar las posteriores operaciones a la suma. En el último case utilizamos una instrucción que nos permitirá salir del programa mientras este corriendo, esto es: System.exit(0); Preguntamos si el usuario desea realizar nuevamente otros procesos CODIGO o si desea salir.
Importación de librerías del programa
package comision; import javax.swing.JOptionPane; public class Comision { public static void main(String[] args) {
Paquetes del programa
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;
Declaración de variables String, int y double
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);
Transformación de variables String a int
Página 22
Impresión del Menú de Opciones
PROGRAMACIÓN II.
switch(menu) Incio del Switch con { Case1 case 1: do { ventj=JOptionPane.showInputDialog("EMPRESA DON LUCHO" + "\n \n VENDEDOR JUAN" + "\n \n Valor de la venta"); vjuan=Integer.parseInt(ventj); Procesos para operaciones numj=numj+1; totventj=totventj+vjuan; if(vjuan>=8000 && vjuan<=11000) { Decisión if y procesos comj=vjuan*0.03; comjuan=comjuan+comj; c JOptionPane.showMessageDialog(null, "EMPRESA DON LUCHO" + "\n \n VENDEDOR JUAN" + "\n \n # VENTA: " + numj + "\n \n Venta=" + vjuan + "\n Comisión= " + comj); } else Decisión if y procesos { respectivos para obtener if(vjuan>11000 && vjuan<=25000) sus distintos resultados { 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 Decisión if y procesos { respectivos para if(vjuan>25000 && vjuan<=45000) obtener sus distintos { resultados 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 Decisión if y procesos { respectivos para if(vjuan>45000) obtener sus distintos { resultados 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); } }
Cierre de sentencias if
Página 23
PROGRAMACIÓN II. } } opj=JOptionPane.showInputDialog Proceso de repetición, ("Desea realizar una nueva venta con nuestro vendedor Juan mensaje y cierre del do while (1 SI/0 NO)"); op=Integer.parseInt(opj); } while(op==1); 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: Case 2 y Do While do { Impresión del nombre y ventmarc=JOptionPane.showInputDialog("EMPRESA DON LUCHO" datos subtitulos + "\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"
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 Página 24
PROGRAMACIÓN II. + "\n \n VENDEDOR MARCELO" + "\n \n # VENTA: " + nummarc + "\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); } } Cierre de sentencias if } } 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 Case 3 y Do While { 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 { if(vmar>11000 && vmar<=25000)
Página 25
Decisión if y procesos respectivos para obtener sus distintos resultados
Impresión del nombre y datos subtitulos
Proceso de repetición, mensaje y cierre del 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
PROGRAMACIÓN II. { 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); } } Cierre de sentencias if } } 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 + "\n Comisiones ganadas= " + commaria); break; case 4: Case 4 System.exit(0); Opción Salir break;
Página 26
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
Proceso de repetición, mensaje y cierre del do while
Impresión del nombre y datos subtitulos
PROGRAMACIÓN II. } rept=JOptionPane.showInputDialog("Desea realizar una nueva compra (1 SI/0 NO)"); op=Integer.parseInt(rept); } while(op==1);
Repetir el Programa n veces
Suma total de las comisiones de vendedores
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 ); }} Cierre del programa con sus respectivas llaves ves Corrido
Página 27
Impresión de subtítulos, para cada vendedor y en forma general, total, comisiones ganadas y respuestas finales
PROGRAMACIร N II.
Pรกgina 28
PROGRAMACIÓN II.
PROGRAMA 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
Página 29
PROGRAMACIÓN II.
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. CODIGO
package matriculas; import javax.swing.JOptionPane; import java.text.DecimalFormat;
Importación de librerías del programa
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 Do-while proceso de { repetición
Paquetes del programa Inicio del programa
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:
Transformación de variables String a int
Incio del Switch con Case1 (primera opción)
Página 30
Declaración de variables String, int y double
Impresión del Menú de Opciones
PROGRAMACIÓN II. 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; Procesos 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) );
Ingreso de Datos
Impresión de resultados
Break cierre de la primera opción (case 1)
break;
Inicio Case2 (segunda opción)
case 2: prt=prt+pr; con2=con2+1;
Contadores
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;
Ingreso de Datos
Procesos
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:
Break cierre de la primera opción (case 2) Inicio Case3 (tercera opción) Contadores Página 31
Impresión de resultados
PROGRAMACIÓN II. 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;
Ingreso de Datos
Procesos
JOptionPane.showMessageDialog(null," Nombre: "+ nombre + "\n Institucion: Pribada"+ "\n Costo de matricula: $ " + f1 +"\n Servicio Médico: $ "+f.format(sm3)+"Servicio Internt: $ "+f.format(si3)+"Servicio Deportes"+f.format(si3)+"Total: $" +f.format(t3 ));
break;
Impresión de resultados
Break cierre de la primera opción (case 2)
case 4: System.exit(0); break; }
Case4 (Opción Salir) Cierre del switch
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;
Procesos Finales
Página 32
Fin del proceso de repeticion
PROGRAMACIÓN II. 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));
Impresión final
Fin del Programa
} }
CORRIDO
Página 33
PROGRAMACIÓN II.
PROGRAMA Nª 12 ENUNCIADO 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
ANALISIS
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. CODIGO package prueba; import java.text.DecimalFormat; librerías
import javax.swing.JOptionPane; public class Prueba {
Inicio del programa
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;
Declaración de variables
int a,op; do{
Inicio del do-while
DecimalFormat df=new DecimalFormat(".00"); opc=JOptionPane.showInputDialog("
LIQUIDO TOTAL DE EMPLEADOS\n"+"1.-Administrativo\n"
+"2.-Ejeutivo\n"+"3.-Obrero\n"+"5.-Salir"); Ingreso de la opción Página 34
Diseño del menú
PROGRAMACIÓN II. op=Integer.parseInt(opc); switch(op)
Inicio del switch
{ case 1: nom=JOptionPane.showInputDialog("Nombre: ");
Ingreso del nombre
do{ Ingreso de las horas extras
he=Double.parseDouble(JOptionPane.showInputDialog("Horas extras: ")); }while(he>8); ph=he*3.50;
Ingreso del número de hijos
h=Double.parseDouble(JOptionPane.showInputDialog("Hijos: ")); if(h>2) { pi=h*4.50; } else {
Proceso
pi=h*6.20; } ti=ph+pi; ie=ad*0.115; co=ad*0.025; te=ie+co;
Proceso
sp=ad+ph+pi; st=sp-ie-co; JOptionPane.showMessageDialog(null,"
REPORTE
GENERAL\n"+nom+"\nAdministrativo"+"\nSueldo " Impresión de resultados
+ad+"\n\nIngresos "+ti+"\nHoras extras " +ph+"\nCargas familiares "+pi+"\n\nEgresos "+te+"\nIESS "+ie+ "\nComisiariato "+co+"\nSueldo a recibir "+st); break;
Cierre del case
case 2: nom=JOptionPane.showInputDialog("Nombre: ");
Ingreso del nombre
do{ he=Double.parseDouble(JOptionPane.showInputDialog("Horas extras: ")); }while(he>8); ph=he*3.50; h=Double.parseDouble(JOptionPane.showInputDialog("Hijos: "));
Página 35
Ingreso de las horas extras
PROGRAMACIÓN II. if(h>2) { pi=h*4.50; } else { pi=h*6.20; }
Proceso para calcular el iess,internet y doctor
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 Impresión de resultados
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;
Cierre del case 2
case 3: nom=JOptionPane.showInputDialog("Nombre: ");
Ingreso del nombre
do{ he=Double.parseDouble(JOptionPane.showInputDialog("Horas extras: "));
Ingreso de las horas extras
}while(he>8); ph=he*3.50; h=Double.parseDouble(JOptionPane.showInputDialog("Hijos: "));
if(h>2) { pi=h*4.50; } else
Proceso
{ pi=h*6.20; }
Página 36
Ingreso del número de hijos
PROGRAMACIÓN II. ti=ph+pi; ie=ob*0.115; Proceso
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;
Cierre del case 3
case 4: Proceso para salir
System.exit(0); break;
Cierre del case 4
}
opc1=JOptionPane.showInputDialog("Salir 1/0: "); op1=Integer.parseInt(opc1); }while(op1==1);
Cierre del while
} }
CORRIDO
Página 37
Ingreso para la opción do-while
PROGRAMACIÓN II.
PROGRAMA Nª 13 ENUNCIADO Diseñe un programa que me permita realizar las operaciones básicas a través de un menú de opciones
ANALISIS
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;)
CODIGO
Programa principal. package seisop; import javax.swing.JOptionPane; import seisop.funcionesop;
Importación de librerías del programa y paquete
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;
Paquetes del programa
Declaración de variables
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);
Transforma de String a int para switch
Página 38
Menú de Opciones
PROGRAMACIÓN II.
switch(op1) { 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-while para el control en la do resta { 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);
Impresión del mensaje
Llamamos a la clase
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;
Página 39
Llamamos a la clase
Ingreso de datos
JOptionPane.showMessageDialog(null,"La resta es:"+res1); break;
case 4: do Control para el proceso de la división { dato1=JOptionPane.showInputDialog("Dato 1 :"); a=Integer.parseInt(dato1); dato2=JOptionPane.showInputDialog("Dato 2 :"); b=Integer.parseInt(dato2); }while(a<b);
Ingreso de datos
Impresión del mensaje
Ingreso de datos
Llamamos a la clase Impresión del mensaje
Ingreso de datos
PROGRAMACIÓN II. div1=funcionesop.division(a, b); Impresión del mensaje JOptionPane.showMessageDialog(null,"La division es:"+div1); break; case 5: dato1=JOptionPane.showInputDialog("Base :"); a=Integer.parseInt(dato1); Ingreso de datos dato2=JOptionPane.showInputDialog("Exponente :"); b=Integer.parseInt(dato2); pot1=funcionesop.potencia(a, b); Llamamos a la clase JOptionPane.showMessageDialog(null,"La potencia es:"+pot1); Impresión del mensaje break; case 6: dato1=JOptionPane.showInputDialog("Numero :"); a=Integer.parseInt(dato1); rad1=funcionesop.radicacion(a); Llamamos a la clase 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); }}
Ingreso de datos
Impresión del mensaje
Mensaje de do-while para enviar un mensaje si desea repetir
Clase del programa: package seisop; public class funcionesop {
Nombre del programa principal
public static int suma1(int a1, int b1) { int sumar; sumar=(a1+b1); return sumar; }
Proceso de suma
public static int resta(int a1, int b1) { int restar; restar=(a1-b1); return restar; }
Proceso de resta
public static int multiplicacion(int a1, int b1) { int multiplicar; multiplicar=(a1*b1);
Proceso de multiplicación
Página 40
PROGRAMACIÓN II. 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;
Proceso de división
Proceso de potencia
Proceso de radicación
radical=Math.sqrt(a1); return radical; }} CORRIDO
Página 41
PROGRAMACIÓN II.
PROGRAMA 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
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 kg13.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. Convertimos 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 ingresar los dos valores que usaremos para las operaciones (a excepción de la radicación) y convertirlos a datos de tipo entero. 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. Imprimimos la variable resultante del proceso. Utilizamos un do while para preguntar al usuario si desea volver a realizar el proceso con diferentes valores. Repetimos el proceso en cada case con la variación de realizar las posteriores operaciones a la suma. En el último case utilizamos una instrucción que nos permitirá salir del programa mientras este corriendo, esto es: System.exit(0); Preguntamos si el usuario desea realizar nuevamente otros procesos o si desea salir.
Debemos importar las bibliotecas q vayamos a utilizar en nuestro programa en este caso CODIGO (import javax.swing.JOptionPane;) //PROGRAMA PRINCIPAL package pkg13.operacionesmenu; import javax.swing.JOptionPane; import pkg13.operacionesmenu.operaciones;
Importación de librerías del programa
public class Operacionesmenu { Paquetes del programa
Página 42
PROGRAMACIÓN II. 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);
Declaración de variables String, int y double
Impresión del Menú de Opciones
Transformación de variables String a int
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); break;
Incio del Switch con Case1
Ingreso de Datos
Llamado de clase o función
DO WHILE y break
case 2 do{ do{ dato1=JOptionPane.showInputDialog ("Ingrese el primer valor: "); num1=Integer.parseInt(dato1); dato2=JOptionPane.showInputDialog ("Ingrese el segundo valor: ");
Case 2 y Do While
Ingreso de Datos
num2=Integer.parseInt(dato2);
Validación de datos
}while(num1<num2);
Página 43
PROGRAMACIÓN II. resta=operaciones.restar(num1, num2); JOptionPane.showMessageDialog (null, "La Resta es: "+ resta);
Llamado de clase o función
opcion=JOptionPane.showInputDialog ("Desea realizar otra resta: 1=si / 0=no"); op=Integer.parseInt(opcion); }while(op==1); break;
DO WHILE y break
case 3: do{
Case 3 y Do While
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
Ingreso de Datos
Llamado de clase o función
DO WHILE y break
Case 4 y Do While
("Ingrese el primer valor: "); num1=Integer.parseInt(dato1); dato2=JOptionPane.showInputDialog ("Ingrese el segundo valor: ");
Ingreso de Datos
Validación de datos
num2=Integer.parseInt(dato2); }while(num1<num2); division=operaciones.dividir(num1, num2); JOptionPane.showMessageDialog (null, "La División es: "+ division);
DO WHILE y break
Página 44
PROGRAMACIÓN II.
opcion=JOptionPane.showInputDialog ("Desea realizar otra division 1=si / 0=no"); op=Integer.parseInt(opcion); }while(op==1); break; case 5:
Case 5 y Do While
do{ dato1=JOptionPane.showInputDialog ("Ingrese la base: "); num1=Integer.parseInt(dato1); dato2=JOptionPane.showInputDialog ("Ingrese el exponente: ");
Ingreso de Datos
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: System.exit(0); break;
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
Fin del Switch
}// fin del switch
Página 45
PROGRAMACIÓN II. opcion=JOptionPane.showInputDialog ("Desea volver al menu: 1=si / 0=no"); op=Integer.parseInt(opcion); }while(op==1);
Repetir el Programa n veces
}// fin del paquete }// fin de la aplicación
Fin del Programa
//CLASE DEL PROGRAMA package pkg13.operacionesmenu; Nombre del Programa principal public class operaciones {
Inicio de Clase o Función
public static int sumar(int a, int b) { int sumar; sumar=(a+b); return sumar; }
Proceso de suma
public static int restar(int a, int b) { int restar; restar=(a+b); return restar; }
Proceso de resta
public static int multi(int a, int b) { int multi; multi=(a+b); return multi; }
Proceso de multiplicación
public static double dividir(double a, double b) { double dividir; dividir=(a/b); return dividir;
Proceso de división
}
Página 46
PROGRAMACIÓN II.
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 potenciación
Proceso de radicación
CORRIDO
Página 47
PROGRAMACIÓN II. PROGRAMA Nª 15 ENUNCIADO Diseñe un menú de opciones utilizando clases de un conjunto de series de datos: 1. 2. 3. 4. 5.
Primo Factorial Fibonacci Pares 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. Debemos importar las bibliotecas q vayamos a utilizar en nuestro programa en este caso (import javax.swing.JOptionPane;) CODIGO
package menuseries; import javax.swing.JOptionPane;
Importación de librerías del programa
import menuseries.series; public class Menuseries {
public static void main(String[] args)
Declaración de variables String, int y double
{ 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
Impresión del Menú de Opciones
\n 3. FIBONACCI \n 4. PARES \n 5. SALIR \n Ingrese una opcion: "); op=Integer.parseInt(dato1); switch(op)
Inicio del Switch con Case1
{ case 1: dato2=JOptionPane.showInputDialog("Ingrese un limite"); limite=Integer.parseInt(dato2);
Página 48
Ingreso del límite y Llamado de clase o función
PROGRAMACIÓN II. primos=series.primos(limite); break;
Inicio del Switch con Case 2
case 2: dato2=JOptionPane.showInputDialog("Ingrese un limite"); limite=Integer.parseInt(dato2); factor=series.facto(limite); break;
Ingreso del límite y Llamado de clase o función
Inicio del Switch con Case 3
case 3: dato2=JOptionPane.showInputDialog("Ingrese un limite"); limite=Integer.parseInt(dato2);
Ingreso del límite y Llamado de clase o función
fibo=series.fibo(limite); break;
case 4: Inicio del Switch con Case 4 dato2=JOptionPane.showInputDialog("Ingrese un limite");
Ingreso del límite y Llamado de clase o función
limite=Integer.parseInt(dato2); pares=series.par(limite); break; Fin del Switch con Case 5
case 5: System.exit(0); break; }
dato3=JOptionPane.showInputDialog("Volver al menu 1 Salir 0: "); opc=Integer.parseInt(dato3); } while(opc==1);
}
Fin del Programa
}
CLASE DEL PROGRAMA package menuseries; import javax.swing.JOptionPane;
Nombre del Programa principal
public class series
Página 49
Repetir el Programa n veces
PROGRAMACIÓN II.
{ public static int par (int limite) { int p; int i; p=0;
Serie de números pares
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++) Serie de números primos
{ conta=0; for(j=1;j<=i;j++) { residuo=i%j; if(residuo==0) { conta=conta+1; } } if(conta==2) {
Serie de números primos
JOptionPane.showMessageDialog(null, +i); } } return 0; }
Página 50
PROGRAMACIร N II. public static int facto(int limite) { int f,i; f=1; Serie de la factorial
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;
Serie del Fibonacc i
} for(i=0;i<=limite-2;i++) { c=a+b; a=b; b=c; JOptionPane.showMessageDialog(null, +a); } return 0; } }
Pรกgina 51
PROGRAMACIÓN II. CORRIDO
PROGRAMA Nª 16 ENUNCIADO Diseñe un programa utilizando clases que me permita verificar si un número 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. CODIGO
Página 52
PROGRAMACIÓN II. package edades; import javax.swing.JOptionPane; public class Edades {
Paquetes del programa
public static void main(String[] args) { String opcion,dato; int edad1,op,edades;
Declaración de variables String y double
do Inicio ciclo do while principal 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);
LLAMA A LAS FUNCIONES
dato=JOptionPane.showInputDialog(null,"DESEA REPETIR 1 O 0 PARA SALIR: "); op=Integer.parseInt(dato);
SE CIERRA EL LAZO REPETITIVO
}while(op==1); } }
CLASES package edades;
Importación de librerías del programa
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 {
PROCESO
if(edad1>=18 && edad1<=45) { JOptionPane.showMessageDialog(null, "ADULTO: "+edad1); } else { if(edad1>45) { JOptionPane.showMessageDialog(null, "ADULTO MAYOR: "+edad1); } }
}
} }
Página 53
PROGRAMACIÓN II. return 0;
SE CIERRA LA CLASE
} } CORRIDO
PROGRAMA 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.)
ANALISIS
Necesitaremos una variable tipo int para generar la descomposición en sus unidades la cual va ir dividiendo para mil, para cien y para diez… Después nos imprimirá de acuerdo a como dividimos en su respectivo orden
CODIGO
package decompocicion;
Importación de librerías del programa
import javax.swing.JOptionPane;
Página 54
PROGRAMACIÓN II. import decompocicion.descomponer; public class Decompocicion { public static void main(String[] args) {
Paquetes del programa
String num; int a,res; do{ num=JOptionPane.showInputDialog("NUMERO");
Declaración de variables tipo int y string
a=Integer.parseInt(num); }while(a<1 || a>9999); res=descomponer.descomponer(a); }
Fin del programa principal
} Clases package decompocicion; import javax.swing.JOptionPane;
Programa principal importación de librerías e inicio de clases
public class descomponer { public static int descomponer(int a) { int um,c,d,u; um=a; um=(um/1000)*1000; Clase descomposición con su respectivo proceso para realizar una descomposición en sus unidades
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 +"\nUnidad de mil "+um+"\nTotal "+a); return 0; } } CORRIDO
Página 55
PROGRAMACIÓN II. PROGRAMA Nª18 ENUNCIADO Diseñe un programa en java 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
Se necesita convertir un número entero a octal
Se necesita convertir un número 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 conversión, también con la opción de repetir el proceso las veces que desee el usuario presentando al fin los resultados respectivos que queremos. CODIGO 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;
Importación de librerías del programa Declaración de variables String, int y double
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);
Inicio del Switch con switch(opc) Case1 { 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: ");
Página 56
Impresión del Menú de Opciones
Ingreso el número que deseo transformar a octal y llamamos a la clase Inicio del Switch con Case 3
PROGRAMACIÓN II. a=Integer.parseInt(dato1); Ingreso el número que deseo transformar hexa=convers.he(a); break; a hexadecimal y llamamos a la clase case 4: System.exit(0); Fin del Switch con Case 4 break; } dato2= JOptionPane.showInputDialog("VOLVER AL MENU 1 SALIR 0: "); Repetir el op=Integer.parseInt(dato2); Programa n } veces while(op==1); } }
Fin del Programa
CLASE DEL PROGRAMA Nombre del package conversiones; import javax.swing.JOptionPane; Programa principal 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; } } CORRIDO :
Página 57
Transformación de un número decimal a binario
Transformación de un número decimal a octal Transformació n de un número decimal a hexadecimal