elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  [Aporte] Java-Leer cantidades (consola)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Aporte] Java-Leer cantidades (consola)  (Leído 2,895 veces)
Senior++


Desconectado Desconectado

Mensajes: 957

Ama y haz lo que te de la gana


Ver Perfil
[Aporte] Java-Leer cantidades (consola)
« en: 14 Julio 2012, 18:08 pm »

Bueno aquí os traigo un nuevo aporte, pero antes de publicarlo tengo que decir 2 cosas.

1.- El código que voy a poner ahora es por consola y lo intentare reducir con operador ternario(cuando tenga un poco mas de tiempo lo publicare aquí en el foro. ::)


2.- Ejemplo de lo que hace el programa: pongo 480 ej. y las otras 5 cajas me diara cuantos billetes de cada uno retirr utilizando la cantidad menos de billetes a retirar por este caso seria  2 en caja de 200, 1 en caja de 50, 1 en caja de 20 y 1 en caja de 10.

Aquí el aporte:

Código
  1. package empezarr;
  2. public class Empezarr {
  3.    public static void main(String[] args) {
  4.     int numero = 505;
  5.     int total = 0;
  6.     while(numero>=200){
  7.    total = total +1 ;
  8.    numero-=200;
  9.    }
  10.     System.out.println(total+" en caja de 200");
  11.  
  12.     while(numero>=100){
  13.         total = 0;
  14.         total = total + 1;    
  15.                 if (numero>=100 && numero<200){
  16.                     numero-=100;
  17.                 System.out.println(total+" en caja de 100");
  18.                 }      
  19.     }
  20.      while(numero>=50){
  21.      total = 0;
  22.      total=total+1;
  23.              if(numero>=50 && numero<100){
  24.                  numero-= 50;
  25.              System.out.println(total+" en caja de 50");
  26.              }
  27.      }
  28.      while(numero>=20){
  29.      total = 0;
  30.      total=total+1;
  31.              if(numero>=20 && numero<50){
  32.                  numero-= 20;
  33.              System.out.println(total+" en caja de 20");
  34.              }
  35.      }
  36.     while(numero>=10){
  37.      total = 0;
  38.      total=total+1;
  39.              if(numero>=10 && numero<20){
  40.                  numero-= 10;
  41.              System.out.println(total+" en caja de 10");
  42.              }
  43.      }
  44.     if(numero<=10 && numero>0){
  45.     System.out.println(numero+" euros sobra");
  46.     }
  47.      }
  48.    }

Saludos y cuando haga el programa con menos código pues lo pongo aquí debajo de este :D


« Última modificación: 15 Julio 2012, 10:13 am por Senior++ » En línea

Vendo cuenta de LEAGUE OF LEGENDS lvl 30, EU west, muy barata
Senior++


Desconectado Desconectado

Mensajes: 957

Ama y haz lo que te de la gana


Ver Perfil
Re: [Aporte] Java-Leer cantidades (consola)
« Respuesta #1 en: 15 Julio 2012, 13:08 pm »

Bueno para mi es imposible hacerlo con operador ternario no tengo ni idea :xD

ya que por ejemplo me sale así en la consola:

Código:
2 en caja de 200
1en caja de 100
1 en caja de 20
1 en caja de 20

lo que quiero que me salga es así:

Código:
2 en caja de 200
1en caja de 100
2 en caja de 20

Aquí el código donde me da error:

Código
  1. while(numero>=20){
  2.      total = 0;
  3.      total=total+1;
  4.              mensaje = (numero>=20 && numero<50)? " en la caja 20":"";
  5.  
  6.  
  7.                  numero-= 20;
  8.           System.out.println(total+mensaje);
  9.               }

Entonces lo que me sale en consola es obvio.. ¿entonces no se podría hacer el programa que hice con operador ternario? yo no logro conseguirlo, por el simple hecho de que no permite el System.out.print (si se pudiera lo sabría hacer).

Saludos


En línea

Vendo cuenta de LEAGUE OF LEGENDS lvl 30, EU west, muy barata
hucruz

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: [Aporte] Java-Leer cantidades (consola)
« Respuesta #2 en: 16 Julio 2012, 06:26 am »

El operador ternario no tiene inconveniente en ser usado en System.out.println.

Podrias intentar esto:
Código:
 total=0;
 while(numero>=20){
      total=total+1;
      numero-= 20;
      }
    mensaje = (total>0)? total+" en la caja 20":"";
    System.out.println(mensaje);

como sugerencia podrias hacerlo asi.

Código:
public class Empezarr{
public static void main(String []args){
long cantidad=393;
long [] billetes={200,100,50,20,10};
for(long b:billetes){
int cont=0;
while(cantidad>=b){
cont++;
cantidad-=b;
}
if(cont!=0) System.out.println(cont+" en caja de "+b);
}
System.out.println(((cantidad>0)?cantidad+" Euros de sobra":""));
}
}
« Última modificación: 16 Julio 2012, 06:30 am por hucruz » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines