public boolean armarRamo( String nombreFlor1, int cant1, String nombreFlor2, int cant2 ) { boolean seArmo = false; // Se valida HELICONIA CON ORQUIDEA if( nombreFlor1.equals( HELICONIA ) && nombreFlor2.equals( ORQUIDEA ) ) { // Al menos un 10% de orquídeas if( cant2 >= ( ( 10 * cant1 ) / 100 ) ) { // Se actualiza la cantidad de flores flor1.reducirCantidad( cant1 ); if( flor1.darCantidad( ) == 0 ) { flor1 = null; } flor2.reducirCantidad( cant2 ); if( flor2.darCantidad( ) == 0 ) { flor2 = null; } seArmo = true; } } // TODO // Completar el caso en el que se valida HELICONIA CON GINGER // Se valida HELICONIA CON GINGER else if ( nombreFlor1.equals ( HELICONIA)&& nombreFlor2.equals (GINGER)) { // un 5 % de gingers if ( cant2 == ( ( 5 * cant1 )/100 )) { //Se actualiza la cantidad de flores flor1.reducirCantidad(cant1); if (flor1.darCantidad( ) == 0) { flor1 = null; } flor3.reducirCantidad(cant2); if(flor3.darCantidad( )== 0) { flor3 = null; } seArmo= true; } } // Se valida HELICONIA CON STRELITZIA else if( nombreFlor1.equals( HELICONIA ) && nombreFlor2.equals( STRELITZIA ) ) { // menos del 40% de strelitzias if( cant2 < ( ( 40 * cant1 ) / 100 ) ) { // Se actualiza la cantidad de flores flor1.reducirCantidad( cant1 ); if( flor1.darCantidad( ) == 0 ) { flor1 = null; } flor4.reducirCantidad( cant2 ); if( flor4.darCantidad( ) == 0 ) { flor4 = null; } seArmo = true; } } // Se valida ORQUIDEA CON HELICONIA else if( nombreFlor1.equals( ORQUIDEA ) && nombreFlor2.equals( HELICONIA ) ) { // 10% de heliconias if( cant2 == ( ( 10 * cant1 ) / 100 ) ) { // Se actualiza la cantidad de flores flor2.reducirCantidad( cant1 ); if( flor2.darCantidad( ) == 0 ) { flor2 = null; } flor1.reducirCantidad( cant2 ); if( flor1.darCantidad( ) == 0 ) { flor1 = null; } seArmo = true; } } // Se valida ORQUIDEA CON GINGER // TODO // Completar el caso en el que se valida ORQUIDEA CON GINGER else if ( nombreFlor1.equals (ORQUIDEA) && nombreFlor2.equals( GINGER )) { // la tercera parte de gingers if ( cant2 == (cant1/3) ) { // Se actualiza la cantidad de flores flor2.reducirCantidad( cant1 ); if( flor2.darCantidad( ) == 0 ) { flor2 = null; } flor3.reducirCantidad( cant2 ); if( flor3.darCantidad( ) == 0 ) { flor3 = null; } seArmo = true; } } // Se valida ORQUIDEA CON STRELITZIA else if( nombreFlor1.equals( ORQUIDEA ) && nombreFlor2.equals( STRELITZIA ) ) { // más del 30% strelitzias if( cant2 > ( ( 30 * cant1 ) / 100 ) ) { // Se actualiza la cantidad de flores flor2.reducirCantidad( cant1 ); if( flor2.darCantidad( ) == 0 ) { flor2 = null; } flor4.reducirCantidad( cant2 ); if( flor4.darCantidad( ) == 0 ) { flor4 = null; } seArmo = true; } } // Se valida GINGER CON HELICONIA else if( nombreFlor1.equals( GINGER ) && nombreFlor2.equals( HELICONIA ) ) { // menos del 25% de heliconias if( cant2 < ( ( 25 * cant1 ) / 100 ) ) { // Se actualiza la cantidad de flores flor3.reducirCantidad( cant1 ); if( flor3.darCantidad( ) == 0 ) { flor3 = null; } flor1.reducirCantidad( cant2 ); if( flor1.darCantidad( ) == 0 ) { flor1 = null; } seArmo = true; } } // TODO // Completar el caso en el que se valida GINGER CON ORQUIDEA // Se valida GINGER CON ORQUIDEA else if (nombreFlor1.equals(GINGER) && nombreFlor2.equals (ORQUIDEA)) { // Entre un 5 % y un 10% de orquideas if ((cant2 >= ((5*cant1)/100)) && (cant2 <= ((10* cant1)/100))) { // Se actualiza la cantidad de flores flor3.reducirCantidad( cant1 ); if( flor3.darCantidad( ) == 0 ) { flor3 = null; } flor2.reducirCantidad( cant2 ); if( flor2.darCantidad( ) == 0 ) { flor2 = null; } seArmo = true; } } // Se valida GINGER CON STRELITZIA else if( nombreFlor1.equals( GINGER ) && nombreFlor2.equals( STRELITZIA ) ) { // no existe ninguna restricción sobre las strelitzias que pueda // llevar el ramo. // Se actualiza la cantidad de flores flor3.reducirCantidad( cant1 ); if( flor3.darCantidad( ) == 0 ) { flor3 = null; } flor4.reducirCantidad( cant2 ); if( flor4.darCantidad( ) == 0 ) { flor4 = null; } seArmo = true; } // Se valida STRELITZIA CON HELICONIA else if( nombreFlor1.equals( STRELITZIA ) && nombreFlor2.equals( HELICONIA ) ) { // cualquier número de heliconias // Se actualiza la cantidad de flores flor4.reducirCantidad( cant1 ); if( flor4.darCantidad( ) == 0 ) { flor4 = null; } flor1.reducirCantidad( cant2 ); if( flor1.darCantidad( ) == 0 ) { flor1 = null; } seArmo = true; } // TODO // Completar el caso en el que se valida STRELITZIA CON ORQUIDEA // Se valida STRELITZIA CON ORQUIDEA else if (nombreFlor1.equals( STRELITZIA ) && nombreFlor2.equals( ORQUIDEA ) ) { // las orquideas no deben superar a la flor principal if (cant2 <= cant1) { // se actualiza la cantidad de flores flor4.reducirCantidad(cant1); if (flor4.darCantidad()== 0) { flor4 = null; } flor2.reducirCantidad(cant2); if (flor2.darCantidad()== 0) { flor2 = null; } seArmo= true; } } // TODO // Completar el caso en el que se valida STRELITZIA CON GINGER // Se valida STRELITZIA CON GINGER else if ( nombreFlor1.equals(STRELITZIA)&& nombreFlor2.equals (GINGER)) { // las gingers no pueden estar en igual proporción que la principal if (cant2 <= cant1) { // se actualiza la cantidad de flores flor4.reducirCantidad(cant1); if (flor4.darCantidad()== 0) { flor4 = null; } flor3.reducirCantidad(cant2); if (flor3.darCantidad()== 0) { flor3 = null; } seArmo = true; } } return seArmo; }