package com.jlm.ccb.ejercicios.capitulocinco; import java.util.Scanner; /** * Clase encargada de calcular el valor total de venta * de todos los productos vendidos. * Ejercicio 5.17 * @author LorettoTG * @version 1.0 */ public class Almacen { /** * Método encargad de calcular el valor total de * venta de todos los productos vendidos. * @return resultado double con el total de la venta. */ public double calcular() { /** * Contiene el total de la venta. */ double resultado = 0.0; //Se crea un objeto Scanner para obtener la entrada //de datos del usuario. Scanner entrada = new Scanner(System.in); /** * Contiene el numero del producto. */ int numeroProducto = 0; do { System.out.println("Deme el numero del producto: "); numeroProducto = entrada.nextInt(); switch (numeroProducto) { case 0: break; case 1: resultado += cantidad() * 2.98; break; case 2: resultado += cantidad() * 4.5; break; case 3: resultado += cantidad() * 9.98; break; case 4: resultado += cantidad() * 4.49; break; case 5: resultado += cantidad() * 6.87; break; default: System.out.println("No es un producto valido"); } } while (numeroProducto != 0); return resultado; } /** * Método encargado de verificar que la cantidad que * da el usuario sea mayor a cero. * @return cantidad int con la cantidad validada. */ private int cantidad() { /** * Contiene la cantidad que se vendio de un producto. */ int cantidad = 0; //Se crea un objeto Scanner para obtener la entrada //de datos del usuario. Scanner entrada = new Scanner(System.in); while (true) { System.out.println("Deme la cantidad vendida del producto: "); cantidad = entrada.nextInt(); if (cantidad > 0) { return cantidad; } else { System.out.println("Escriba una cantidad mayor a cero."); } } } /** * Punto de entrada a la clase y a la aplicación. * @param args matriz de argumentos de cadena. */ public static void main(String[] args) { //El operador new es el encargado de crear instancias de //una clase, es decir los objetos que tienen las caracteristicas //de la clase. El operador new de Java es capaz de reservar la //memoria para un objeto de este tipo sabiendo los atributos que //tiene según la definición de la clase. Almacen almacen = new Almacen(); //%.2f indica que espera un double y que tendra en el area de //decimales solo dos digitos. System.out.printf("El total de ventas es: %.2f", almacen.calcular()); } }
Un blog dedicado a los bytes, al lenguaje java y diferentes frameworks que se emplearan poco a poco.
jueves, 22 de septiembre de 2011
Como Programar en Java: Ejercicio 5.17
Aquí esta el ejercicio 5.17 de Como Programar en Java séptima edición.
Etiquetas:
Como Programar en Java,
Deitel,
do - while,
double,
Java,
Println,
Scanner,
static. new,
switch,
While
Suscribirse a:
Enviar comentarios (Atom)
Hola,,,el programa no se detiene nunca?
ResponderEliminarHola,,,el programa no se detiene nunca?
ResponderEliminar