Вы находитесь на странице: 1из 9

ValorMatricula

//paquete al que pertenece la clase


package matricula;

//librerías que se utilizaron


import java.text.Normalizer;

public class ValorMatricula {


//Se declararán los atributos de la clase
String nombre, carrera;
int estrato, numCreditos;
char modalidad;
static final int valorCredito = 15;

//Inicializamos los atributos en el método contructor de la clase


public ValorMatricula() {
this.nombre = "";
this.carrera = "";
this.estrato = 0;
this.numCreditos = 0;
this.modalidad = ' ';
}

//Se crean los métodos que guardarán los valores


//Métodos set
public void setNombre(String nombre) {
this.nombre = nombre;
}

public void setCarrera(String carrera) {


this.carrera = carrera;
}

public void setEstrato(int estrato) {


this.estrato = estrato;
}

public void setNumCreditos(int numCreditos) {


this.numCreditos = numCreditos;
}

public void setModalidad(char modalidad) {


this.modalidad = modalidad;
}
//Declaración de los métodos de obtención
//Métodos get
public String getNombre() {
return nombre;
}

public String getCarrera() {


return carrera;
}

public int getEstrato() {


return estrato;
}

public int getNumCreditos() {


return numCreditos;
}

public char getModalidad() {


return modalidad;
}

//Método para calcular el valor base de la matrícula


public double valorBruto(){
double val = 0;
val = valorCredito * getNumCreditos();
return val;
}

//Método que calculará el 15%, si se aplica, por el estrato del estudiante


public double descEstrato(){
double desc = 0;
if (getEstrato() == 1 || getEstrato() == 2){
desc = (valorBruto() * 0.15);
}
return desc;
}
//Método para calcular el 5 % si la carrera pertenece a la facultad de ingenierías
public double descFacultad(){
double desc = 0;
String crr = getCarrera();
String replace = "ingenieria";
String nw = "Ingeniería";
setCarrera(crr.replace(replace, nw));
String ingS = "Ingeniería de Sistemas";
String ingM = "Ingeniería Mecanica";
String ingI = "Ingeniería Industrial";
if(getCarrera().equalsIgnoreCase(ingS) || getCarrera().equalsIgnoreCase(ingM)
|| getCarrera().equalsIgnoreCase(ingI) ){
desc = valorBruto() * 0.05;
}
return desc;
}
//metodo que calcula el 10% de descuento por modalidad virtual
public double descModalidad(){
double desc = 0;
if(getModalidad() == 'v'){
desc = valorBruto() * 0.10;
}
return desc;
}
//Método que Calculará el valor total a pagar de la matricula.
public double valorNetoMatricula(){
double valNeto;
valNeto = valorBruto() - descEstrato() - descFacultad() - descModalidad();
return valNeto;
}

Juan Delgado
Gabriel Argel
SerieNumeros
/*paquete al que pertenece la clase*/
package serie;

//librerias que se usaron


import javax.swing.JOptionPane;

public class SerieNumeros {


/ /declaracion de los atributos
private int cantNumeros;

//constructor de la clase
public SerieNumeros(){
cantNumeros = 0;
}

//metodo de modificación set


public void setCantNumeros(int cantNumeros) {
this.cantNumeros = cantNumeros;
}
//metodo de obtención get
public int getCantNumeros() {
return cantNumeros;
}
//metodo que realiza la operación de serie de números
public int cantNSerie(){
//variables auxiliares
int c = 0, d = 1;
int i = 0;
//vector en dónde se almacena la serie deseada
int serie[] = new int [getCantNumeros()];
String datoVector = "";

do{
d = (d * 2);
c = c + (d/2);
i++;
//este bucle recorre el vector, donde se encuentra la succesión de números
for(int x=0;x<getCantNumeros();x++) {
serie[x] = c;
}
datoVector = datoVector+String.valueOf(serie[i-1]+"\n");

}while(getCantNumeros()>i);
JOptionPane.showMessageDialog(null, datoVector,"=SUCESIÓN DE
NÚMEROS=",JOptionPane.INFORMATION_MESSAGE);
return c;
}
}

Juan Delgado
Gabriel Argel
Main.java
//Paquete al que pertenece esta clase
package main;

//librerias que se usaron para la resolución del problema


import javax.swing.JoptionPane; //Libreria que nos permite usar ventanas emergentes
import matricula.ValorMatricula; //esta linea nos importa la clase ValorMatricula.java
import serie.SerieNumeros; //esta linea nos importa la librería SerieNumeros.java

public class Main {

/* método que nos muestra la opciones a elegir en el menú principal, y que a su vez nos retorna la
opción a elegir dentro del mismo */
public static int opciones() {
int opcion = 0;
do { /* el bucle do while permite que el bucle se ejecute infinitamente, y poder elegir una opción
valida, cuando se elige la opción 3 este finaliza*/
opcion = Integer.parseInt(JOptionPane.showInputDialog("===MENÚ TALLER==="+"\n"
+"Elija el ejercicio a visualizar"+"\n\n"
+"1. Valor Matricula"+"\n"
+"2. Serie de números"+"\n"
+"3. Salir"+"\n\n"
+"Elija una opcion 1 - 3"));
}while(opcion<=0 || opcion>3);
return opcion;
}
/*este método contiene las opciones las opciones que se podrán elegir dentro del primer sub-menú,
primer ejercicio */
public static int menu1() {

int opcionM1 = 0;
do {
opcionM1 = Integer.parseInt(JOptionPane.showInputDialog("===MENÚ
MATRICULA==="+"\n"
+"1. Ingresar Datos"+"\n"
+"2. Matricula"+"\n"
+"3. Salir"+"\n\n"
+"Elija una opción 1 - 3"));
}while(opcionM1<=0 || opcionM1>3);
return opcionM1;
}
/*este método contiene las opciones que se podrán elegir en el segundo sub-menú, el cual contiene
el segundo ejercicio */
public static int menu2() {

int opcionM2 = 0;
do {
opcionM2 = Integer.parseInt(JOptionPane.showInputDialog("===MENÚ SERIE DE
NÚMEROS==="+"\n"
+"1. Ingresar cantidad de números a visualizar"+"\n"
+"2. Ver Serie de números"+"\n"
+"3. Salir"+"\n\n"
+"Elija una opción 1 - 3"));
}while(opcionM2<=0 || opcionM2>3);
return opcionM1;
}
//metodo principal, main
public static void main(String[] args){
ValorMatricula mat = new ValorMatricula(); //instancia del primer ejercicio
SerieNumeros sn = new SerieNumeros(); //instancia del segundo ejercicio

/*variables que permiten elegir una opcion dentro de los menús*/


int opcion = 0;
int menu1 = 0;
int menu2 = 0;

/*fíjese que dentro de cada caso del switch se hacen las respectivas llamadas a los métodos
declarado en las clases lógicas, los cuales nos podran llenar o mostrar la información de cada uno*/
do {
opcion = opciones(); //variable igualada al valor que retorna el menú principal
//switch programado con los casos posibles
switch(opcion) {
case 1:
do {
menu1 = menu1();
/*en este switch se encuentran todas las opciones referentes al ejercicio número 1 */
switch(menu1) {
case 1:
String name = JOptionPane.showInputDialog("Ingrese el Nombre del
Estudiante");
mat.setNombre(name);

int status = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el Estrato


del Estudiante"));
mat.setEstrato(status);

String career = JOptionPane.showInputDialog("Ingrese la carrera del


Estudiante");
mat.setCarrera(career);

char mode = JOptionPane.showInputDialog("Ingrese la modalidad del


Estudiante\n\n"+
"p. presencial\n"+"d. distancia\n"+"v. virtual").charAt(0);
mat.setModalidad(mode);

int credits = Integer.parseInt(JOptionPane.showInputDialog("Ingrese Cantidad


de Créditos Matriculados"));
mat.setNumCreditos(credits);
break;
case 2:
String md = "";
if(mat.getModalidad() == 'v'){
md = "Virtual";
}else{
if(mat.getModalidad() == 'd'){
md = "Distancia";
}else{
if(mat.getModalidad() == 'p'){
md = "Presencial";
}
}
}
String crr = mat.getCarrera();
String replace = "ingenieria";
String nw = "Ingeniería";
mat.setCarrera(crr.replace(replace, nw));
JOptionPane.showMessageDialog(null, "Valor de la Matrícula\n\n"+"Nombre:
"+mat.getNombre()+"\n"+
"Carrera: "+mat.getCarrera()+"\n"+"Estrato: "+mat.getEstrato()+"\n"+"Créditos
Inscritos: "+mat.getNumCreditos()+"\n"+
"Modalidad: "+md+"\n"+"Valor a Pagar: "+mat.valorNetoMatricula()+"
USD","Resultado",JOptionPane.INFORMATION_MESSAGE);
break;
case 3:
break;
}

}while(menu1 != 3);
break;

case 2:
do {
menu2 = menu2();
//este switch contiene las opciones referente al ejercicio numero 2
switch(menu2) {
case 1:
int n = Integer.parseInt(JOptionPane.showInputDialog("Ingrese cantidad de
numeros"));
sn.setCantNumeros(n);
break;
case 2:
sn.cantNSerie();
}
}while(menu2 != 3);
break;
case 3:
break;
}
}while(opcion != 3);

}
}

Juan Delgado
Gabriel Argel

Вам также может понравиться