Free Essay

Proyecto Final Logica Comp2120 Ejercicio #2

In:

Submitted By Adnelon1
Words 1034
Pages 5
Análisis del problema:

Problema:
Crea un programa que presente el estado de cuenta al final del trimestre para el cliente. Solicita el balance del trimestre anterior, el total de gastos realizados durante el trimestre y el total de depósitos hechos durante el mismo. Calcula los intereses ganados en la cuenta al finalizar el trimestre a un 2%. Pregunta si desea donar con la CASA de Apoyo a la Niñez (CAN) y de cuanto seria el donativo en el caso que desee aportar.

Referencias: https://docs.fajardo.inter.edu/Acad/mortiz/COMP2120/Proyectos1/Proyecto%20-%20nov%202014.pdf (Pregunta #2)

Fórmulas para la calculación de cada proceso:

1) //Proceso para balance actual balActual = ((balAnterior - retiros) + depositos);

2) //Proceso para Balance total, intereses ganados y balance final si respuesta a donación fue “si” balTotal = (((balAnterior - retiros) + depositos) - donativos) ; interesGan = (balTotal * INTERES); balFinal = balTotal + interesGan;

3) //Si la repuesta a la donación fue “no” balTotal = (((balAnterior - retiros) + depositos)) ; interesGan = (balTotal * INTERES); balFinal = balTotal + interesGan;

Lista de variables y constantes:

// Declaracion de Variables double balAnterior; double retiros; double depositos; double donativos; double balTotal; double interesGan; double balNuevo; double balActual; double balFinal; String respuesta; String respuesta2; String respuesta3; //Declaracion de Constantes double INTERES = 0.02;

IPO Chart:

A) Entradas:
-En caso de responder “si” para la donación a CAN: 6 entradas totales
-De lo contrario: 5 entradas totales

B) Procesos: * En ambos casos donde la repuesta a la donación sea “si” o “no”: 5 procesos en total * Declaración de variable * Declaración de constante * Proceso para calcular: balActual antes de preguntar por donativo * Proceso para calcular: balActual, interesGan, balFinal CON donativo * Proceso para calcular: balActual, interesGan, balFinal SIN donativo * Procesos principales: 3 * Proceso del while loop * Proceso para calcular balActual antes de preguntar por donativo * Proceso para cuando cliente dona a CAN y para cuando no dona a CAN

C) Salidas: * Total de salidas para cuando respuesta a donación es “si”: 13 * Total de salidas para cuando respuesta a donación es “no”: 11 * Salidas principales: * Cuando respuesta a donación es “si”: 5 * Balance total * Intereses ganados * Balance final * Mensaje de agradecimiento por CAN * Mensaje de repetición del programa para cliente nuevo * Cuando respuesta a donación es “no”: 4 * Balance total * Intereses ganados * Balance final * Mensaje de repetición del programa para cliente nuevo

Diagrama de dirección (flowchart)
Diagrama de dirección (flowchart)

Código Fuente

/**
* @(#)Project_One_Prog.java
*
* Project_One_Prog application
*
*
*/

import java.util.*;

public class Project_One_Prog {

static Scanner console = new Scanner(System.in); public static void main(String[] args) {

// Declaracion de Variables double balAnterior; double retiros; double depositos; double donativos; double balTotal; double interesGan; double balNuevo; double balActual; double balFinal;
String respuesta;
String respuesta2;
String respuesta3;

//Declaracion de Constantes double INTERES = 0.02;

//Imprime el título
System.out.println();
System.out.println("************************************************************************************");
System.out.println("***Esto es un systema automatizado para calcular el balance trimestral de cliente***");
System.out.println("************************************************************************************");
System.out.println();

//Preguntar si desea realizar balance de cliente. Comienzo de loop
System.out.print("Desea calcular balance de cliente? (Y , N): "); respuesta = console.nextLine();
System.out.println();

//Tarea que realiza si la respuesta es cierta. while(respuesta.equalsIgnoreCase("y")){ //Balance Anterior
System.out.print("Ingrese BALANCE de trimestre ANTERIOR:$ "); balAnterior = console.nextDouble();

//Retiros
System.out.print("Indique cantidad total de RETIROS registradas en la cuenta:$ "); retiros = console.nextDouble();

//depositos
System.out.print("Indique cantidad total de DEPOSITOS registrados a la cuenta:$ "); depositos = console.nextDouble();

//Proceso para balance actual balActual = ((balAnterior - retiros) + depositos);

//Muestra balance actual
System.out.println("-----------------------------------------");
System.out.println("Este es su balance ACTUAL:$ " + balActual);
System.out.println("-----------------------------------------");
System.out.println();

//Preguntar para donar
System.out.print("Deseas cooperar con la CASA de APOYO a la NIÑEZ (CAN)?: "); respuesta2 = console.next();
System.out.println();

//Si la respuesta es cierta if(respuesta2.equalsIgnoreCase("y")){ System.out.print("Cuanto desea donar?:$ "); donativos = console.nextDouble();
System.out.println();

//Proceso para la calculacion del Balance total, intereses ganados y balance final balTotal = (((balAnterior - retiros) + depositos) - donativos) ; interesGan = (balTotal * INTERES); balFinal = balTotal + interesGan;

//muestra los valores en la pantalla
System.out.println();
System.out.println("#################################");
System.out.println();
System.out.println("Balance Total:$ " + balTotal);
System.out.println("Interes Ganado:$ " + interesGan);
System.out.println("Balance Final:$ " + balFinal);
System.out.println();
System.out.println("CAN le da las gracias por la donación de:$ " + donativos);
System.out.println();
System.out.println("#################################");
System.out.println();

} else{ //Si la repuesta a la donacion fue falsa balTotal = (((balAnterior - retiros) + depositos)) ; interesGan = (balTotal * INTERES); balFinal = balTotal + interesGan;

//muestra los valores en la pantalla
System.out.println("###############################");
System.out.println();
System.out.println("Balance Total:$ " + balTotal);
System.out.println("Interes Ganado:$ " + interesGan);
System.out.println("Balance Final:$ " + balFinal);
System.out.println();
System.out.println("###############################");
System.out.println();

}

//Preguntar si desea calcular nuevamente (repetir loop)
System.out.println();
System.out.print("Desea repetir nuevamente el proceso?: "); respuesta = console.next();
System.out.println();
}
//En el caso de que la repuesta de comenzar el programa sea falsa
System.out.println("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^");
System.out.println("¡Gracias por utilizar el sistema automatizado! ¡Vuelva Pronto!");
System.out.println();
System.out.println("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^");
System.exit(0);
}
}

Copia de la Salida

Con Donativo

************************************************************************************
***Esto es un sistema automatizado para calcular el balance trimestral de cliente***
************************************************************************************

Desea calcular balance de cliente? (Y , N): y

Ingrese BALANCE de trimestre ANTERIOR:$ 1369.99
Indique cantidad total de RETIROS registradas en la cuenta:$ 578.25
Indique cantidad total de DEPOSITOS registrados a la cuenta:$ 600
-----------------------------------------
Este es su balance ACTUAL:$ 1391.74
-----------------------------------------

Deseas cooperar con la CASA de APOYO a la NIÑEZ (CAN)?: y

Cuanto desea donar?:$ 10

#################################

Balance Total: $ 1381.74
Interés Ganado: $ 27.634800000000002
Balance Final: $ 1409.3748

CAN le da las gracias por la donación de: $ 10.0
-------------------------------------------------

Sin Donativo

************************************************************************************
***Esto es un sistema automatizado para calcular el balance trimestral de cliente***
************************************************************************************

Desea calcular balance de cliente? (Y , N): y

Ingrese BALANCE de trimestre ANTERIOR:$ 1369.99
Indique cantidad total de RETIROS registradas en la cuenta:$ 578.25
Indique cantidad total de DEPOSITOS registrados a la cuenta:$ 600
-----------------------------------------
Este es su balance ACTUAL:$ 1391.74
-----------------------------------------

Deseas cooperar con la CASA de APOYO a la NIÑEZ (CAN)?: n

###############################

Balance Total: $ 1391.74
Intéres Ganado: $ 27.8348
Balance Final: $ 1419.5748
-------------------------------------------------

Cuando programa termina su loop. (Mensaje de despedida)

Desea repetir nuevamente el proceso? : n

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
¡Gracias por utilizar el sistema automatizado! ¡Vuelva Pronto!

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Process completed.

Similar Documents