Revision: 32663
Updated Code
at October 1, 2010 09:14 by Physlet
Updated Code
//Importación de la API java.io para usar BufferedReader import java.io.*; class Container{ //Cantidad total de monos introducida por el usuario private int monos; //Método asignar public void set(int totalMonos){ monos = totalMonos; } //Obtener cantidad de contenedores public int getCont(int maxCant){ if(monos%maxCant == 0) return monos/maxCant; else return monos/maxCant+1; } //Obtener cantidad de barriles, jaulas o cocos public int getCant(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 1; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad por contenedor if(total > maxCont) return maxCont; //Si la cantidad total es menor o igual que la cantidad por contenedor else return total; } } } //Obtener cantidad de residuo de monos public int getDif(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 0; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad permitida por contenedor if(total > maxCont) return (total-maxCont)*maxCant+monosDif%maxCant; //Si la cantidad total es menor o igual que la cantidad por contenedor else return 0; } } } //Método que trae los monos al programa principal public int getMonos(){ return monos; } } public class Monos{ public static void main(String[] x) throws IOException, InterruptedException{ //CONSTANTES => Cantidad de monos por contenedores, barriles, jaulas o cocos final int MAX_CONT = 245, MAX_BAR = 11, MAX_JAU = 7, MAX_COCO = 1; //CONSTANTES => Cantidad de barriles, jaulas o cocos por contenedor final int CANT_BAR = 10, CANT_JAU = 5, CANT_COCO = 100; //Variables a utilizar int barril=0, jaula=0, coco=0, contenedor, monos, read, total; //Monos por barriles, jaulas, cocos int mbar=0, mjau=0, mco=0; //Declaración del objeto gestion instanciando a la clase Container Container gestion = new Container(); //Declaración del objeto tipo BufferedReader y asignación de espacio de memoria BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //Mensaje de bienvenida System.out.println("\t\t\t¡Es la hora de ordenar monitos!\n"+ "En esta aplicación deberás introducir un total de monos"+ "que desees ordenar en contenedores. Esta aplicación te dirá"+ "cuántos contenedores deberás usar para ordenar tus monos"+ "recordando que cada contenedor permite 10 barriles, 5 jaulas"+ "100 cocos. Y que cada barril permite 11 monos, cada jaula 7 monos"+ "y cada coco 1 mono.\n"); //Petición al usuario para iniciar la operación System.out.print("¿Listo para comenzar? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); if(read == 'N'){ System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } else { do{ //Lectura de la cantidad de monos totales System.out.print("\n\n-----------------------\n"+ "Introduzca la cantidad de monos: "); read = Integer.parseInt(br.readLine()); //Llamado al método asignar y enviar la variable read con la cantidad de monos gestion.set(read); //Asignación de la cantidad de monos monos = gestion.getMonos(); //Cantidad de contenedores contenedor = gestion.getCont(MAX_CONT); //Hacer un breve delay para que se vea bonito el programa System.out.println("\n\n-----------------------\n"+ "Procesando información... Por favor espere.."); Thread.sleep(2000); while(monos != 0){ //Acumula cantidad de barriles mbar += monos; barril += gestion.getCant(monos, MAX_BAR, CANT_BAR); //Asigna a monos la cantidad del residuo luego de depositarlos en barriles monos = gestion.getDif(monos, MAX_BAR, CANT_BAR); mbar -= monos; //Acumula cantidad de jaulas mjau += monos; jaula += gestion.getCant(monos, MAX_JAU, CANT_JAU); //Asigna a monos la cantidad del residuo luego de depositarlos en jaulas monos = gestion.getDif(monos, MAX_JAU, CANT_JAU); mjau -= monos; //Acumula cantidad de cocos mco += monos; coco += gestion.getCant(monos, MAX_COCO, CANT_COCO); //Asigna a monos la cantidad del residuo luego de depositarlos en cocos monos = gestion.getDif(monos, MAX_COCO, CANT_COCO); mco -= monos; } total = mbar + mjau + mco; System.out.println("\n\n-----------------------\n"+ "Cantidad de contenedores: "+contenedor+"\n\n"+ "Cantidad de barriles: "+barril+"\n\tMonos por barriles: "+mbar+"\n\n"+ "Cantidad de jaulas: "+jaula+"\n\tMonos por jaulas: "+mjau+"\n\n"+ "Cantidad de cocos: "+coco+"\n\tMonos por cocos: "+mco+"\n\n"+ "Total de monos: "+total); System.out.println("\n\n-----------------------\n"+ "¿Desea probar otra vez? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); }while(read == 'S'); System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } } }
Revision: 32662
Updated Code
at October 1, 2010 09:13 by Physlet
Updated Code
//Importación de la API java.io para usar BufferedReader import java.io.*; class Container{ //Cantidad total de monos introducida por el usuario private int monos; //Método asignar public void set(int totalMonos){ monos = totalMonos; } //Obtener cantidad de contenedores public int getCont(int maxCant){ if(monos%maxCant == 0) return monos/maxCant; else return monos/maxCant+1; } //Obtener cantidad de barriles, jaulas o cocos public int getCant(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 1; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad por contenedor if(total > maxCont) return maxCont; //Si la cantidad total es menor o igual que la cantidad por contenedor else return total; } } } //Obtener cantidad de residuo de monos public int getDif(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 0; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad permitida por contenedor if(total > maxCont) return (total-maxCont)*maxCant+monosDif%maxCant; //Si la cantidad total es menor o igual que la cantidad por contenedor else return 0; } } } //Método que trae los monos al programa principal public int getMonos(){ return monos; } } public class Monos{ public static void main(String[] x) throws IOException, InterruptedException{ //CONSTANTES => Cantidad de monos por contenedores, barriles, jaulas o cocos final int MAX_CONT = 245, MAX_BAR = 11, MAX_JAU = 7, MAX_COCO = 1; //CONSTANTES => Cantidad de barriles, jaulas o cocos por contenedor final int CANT_BAR = 10, CANT_JAU = 5, CANT_COCO = 100; //Variables a utilizar int barril=0, jaula=0, coco=0, contenedor, monos, read, total; //Monos por barriles, jaulas, cocos int mbar=0, mjau=0, mco=0; //Declaración del objeto gestion instanciando a la clase Container Container gestion = new Container(); //Declaración del objeto tipo BufferedReader y asignación de espacio de memoria BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //Mensaje de bienvenida System.out.println("\t\t\t¡Es la hora de ordenar monitos!\n"+ "En esta aplicación deberás introducir un total de monos"+ "que desees ordenar en contenedores. Esta aplicación te dirá"+ "cuántos contenedores deberás usar para ordenar tus monos"+ "recordando que cada contenedor permite 10 barriles, 5 jaulas"+ "100 cocos. Y que cada barril permite 11 monos, cada jaula 7 monos"+ "y cada coco 1 mono.\n"); //Petición al usuario para iniciar la operación System.out.print("¿Listo para comenzar? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); if(read == 'N'){ System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } else { do{ //Lectura de la cantidad de monos totales System.out.print("\n\n-----------------------\n"+ "Introduzca la cantidad de monos: "); read = Integer.parseInt(br.readLine()); //Llamado al método asignar y enviar la variable read con la cantidad de monos gestion.set(read); //Asignación de la cantidad de monos monos = gestion.getMonos(); //Cantidad de contenedores contenedor = gestion.getCont(MAX_CONT); //Hacer un breve delay para que se vea bonito el programa System.out.println("\n\n-----------------------\n"+ "Procesando información... Por favor espere.."); Thread.sleep(2000); while(monos != 0){ //Acumula cantidad de barriles mbar += monos; barril += gestion.getCant(monos, MAX_BAR, CANT_BAR); //Asigna a monos la cantidad del residuo luego de depositarlos en barriles monos = gestion.getDif(monos, MAX_BAR, CANT_BAR); mbar -= monos; //Acumula cantidad de jaulas mjau += monos; jaula += gestion.getCant(monos, MAX_JAU, CANT_JAU); //Asigna a monos la cantidad del residuo luego de depositarlos en jaulas monos = gestion.getDif(monos, MAX_JAU, CANT_JAU); mjau -= monos; //Acumula cantidad de cocos mco += monos; coco += gestion.getCant(monos, MAX_COCO, CANT_COCO); //Asigna a monos la cantidad del residuo luego de depositarlos en cocos monos = gestion.getDif(monos, MAX_COCO, CANT_COCO); mco -= monos; } total = mbar + mjau + mco; System.out.println("\n\n-----------------------\n"+ "Cantidad de contenedores: "+contenedor+"\n\n"+ "Cantidad de barriles: "+barril+"\n\tMonos por barriles: "+mbar+"\n\n"+ "Cantidad de jaulas: "+jaula+"\n\tMonos por jaulas: "+mjau+"\n\n"+ "Cantidad de cocos: "+coco+"\n\tMonos por cocos: "+mco+"\n\n"+ "Total de monos: "+total); System.out.println("\n\n-----------------------\n"+ "¿Desea probar otra vez? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); }while(read == 'S'); System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } } }
Revision: 32661
Updated Code
at October 1, 2010 09:11 by Physlet
Updated Code
//Importación de la API java.io para usar BufferedReader import java.io.*; class Container{ //Cantidad total de monos introducida por el usuario private int monos; //Método asignar public void set(int totalMonos){ monos = totalMonos; } //Obtener cantidad de contenedores public int getCont(int maxCant){ if(monos%maxCant == 0) return monos/maxCant; else return monos/maxCant+1; } //Obtener cantidad de barriles, jaulas o cocos public int getCant(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 1; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad por contenedor if(total > maxCont) return maxCont; //Si la cantidad total es menor o igual que la cantidad por contenedor else return total; } } } //Obtener cantidad de residuo de monos public int getDif(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 0; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad permitida por contenedor if(total > maxCont) return (total-maxCont)*maxCant+monosDif%maxCant; //Si la cantidad total es menor o igual que la cantidad por contenedor else return 0; } } } //Método que trae los monos al programa principal public int getMonos(){ return monos; } } public class Monos{ public static void main(String[] x) throws IOException, InterruptedException{ //CONSTANTES => Cantidad de monos por contenedores, barriles, jaulas o cocos final int MAX_CONT = 245, MAX_BAR = 11, MAX_JAU = 7, MAX_COCO = 1; //CONSTANTES => Cantidad de barriles, jaulas o cocos por contenedor final int CANT_BAR = 10, CANT_JAU = 5, CANT_COCO = 100; //Variables a utilizar int barril=0, jaula=0, coco=0, contenedor, monos, read, total; //Monos por barriles, jaulas, cocos int mbar=0, mjau=0, mco=0; //Declaración del objeto gestion instanciando a la clase Container Container gestion = new Container(); //Declaración del objeto tipo BufferedReader y asignación de espacio de memoria BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //Mensaje de bienvenida System.out.println("\t\t\t¡Es la hora de ordenar monitos!\n"+ "En esta aplicación deberás introducir un total de monos"+ "que desees ordenar en contenedores. Esta aplicación te dirá"+ "cuántos contenedores deberás usar para ordenar tus monos"+ "recordando que cada contenedor permite 10 barriles, 5 jaulas"+ "100 cocos. Y que cada barril permite 11 monos, cada jaula 7 monos"+ "y cada coco 1 mono.\n"); //Petición al usuario para iniciar la operación System.out.print("¿Listo para comenzar? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); if(read == 'N'){ System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } else { do{ //Lectura de la cantidad de monos totales System.out.print("\n\n-----------------------\n"+ "Introduzca la cantidad de monos: "); read = Integer.parseInt(br.readLine()); //Llamado al método asignar y enviar la variable read con la cantidad de monos gestion.set(read); //Asignación de la cantidad de monos monos = gestion.getMonos(); //Cantidad de contenedores contenedor = gestion.getCont(MAX_CONT); //Hacer un breve delay para que se vea bonito el programa System.out.println("\n\n-----------------------\n"+ "Procesando información... Por favor espere.."); Thread.sleep(2000); while(monos != 0){ //Acumula cantidad de barriles mbar += monos; barril += gestion.getCant(monos, MAX_BAR, CANT_BAR); //Asigna a monos la cantidad del residuo luego de depositarlos en barriles monos = gestion.getDif(monos, MAX_BAR, CANT_BAR); mbar -= monos; //Acumula cantidad de jaulas mjau += monos; jaula += gestion.getCant(monos, MAX_JAU, CANT_JAU); //Asigna a monos la cantidad del residuo luego de depositarlos en jaulas monos = gestion.getDif(monos, MAX_JAU, CANT_JAU); mjau -= monos; //Acumula cantidad de cocos mco += monos; coco += gestion.getCant(monos, MAX_COCO, CANT_COCO); //Asigna a monos la cantidad del residuo luego de depositarlos en cocos monos = gestion.getDif(monos, MAX_COCO, CANT_COCO); mco -= monos; } total = mbar + mjau + mco; System.out.println("\n\n-----------------------\n"+ "Cantidad de contenedores: "+contenedor+"\n\n"+ "Cantidad de barriles: "+barril+"\n\tMonos por barriles: "+mbar+"\n\n"+ "Cantidad de jaulas: "+jaula+"\n\tMonos por jaulas: "+mjau+"\n\n"+ "Cantidad de cocos: "+coco+"\n\tMonos por cocos: "+mco+"\n\n"+ "Total de monos: "+total); System.out.println("\n\n-----------------------\n"+ "¿Desea probar otra vez? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); }while(read == 'S'); System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } } }
Revision: 32660
Updated Code
at October 1, 2010 09:10 by Physlet
Updated Code
//Importación de la API java.io para usar BufferedReader import java.io.*; class Container{ //Cantidad total de monos introducida por el usuario private int monos; //Método asignar public void set(int totalMonos){ monos = totalMonos; } //Obtener cantidad de contenedores public int getCont(int maxCant){ if(monos%maxCant == 0) return monos/maxCant; else return monos/maxCant+1; } //Obtener cantidad de barriles, jaulas o cocos public int getCant(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 1; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad por contenedor if(total > maxCont) return maxCont; //Si la cantidad total es menor o igual que la cantidad por contenedor else return total; } } } //Obtener cantidad de residuo de monos public int getDif(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 0; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad permitida por contenedor if(total > maxCont) return (total-maxCont)*maxCant+monosDif%maxCant; //Si la cantidad total es menor o igual que la cantidad por contenedor else return 0; } } } //Método que trae los monos al programa principal public int getMonos(){ return monos; } } public class Monos{ public static void main(String[] x) throws IOException, InterruptedException{ //CONSTANTES => Cantidad de monos por contenedores, barriles, jaulas o cocos final int MAX_CONT = 245, MAX_BAR = 11, MAX_JAU = 7, MAX_COCO = 1; //CONSTANTES => Cantidad de barriles, jaulas o cocos por contenedor final int CANT_BAR = 10, CANT_JAU = 5, CANT_COCO = 100; //Variables a utilizar int barril=0, jaula=0, coco=0, contenedor, monos, read, total; //Monos por barriles, jaulas, cocos int mbar=0, mjau=0, mco=0; //Declaración del objeto gestion instanciando a la clase Container Container gestion = new Container(); //Declaración del objeto tipo BufferedReader y asignación de espacio de memoria BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //Mensaje de bienvenida System.out.println("\t\t\t¡Es la hora de ordenar monitos!\n"+ "En esta aplicación deberás introducir un total de monos"+ "que desees ordenar en contenedores. Esta aplicación te dirá"+ "cuántos contenedores deberás usar para ordenar tus monos"+ "recordando que cada contenedor permite 10 barriles, 5 jaulas"+ "100 cocos. Y que cada barril permite 11 monos, cada jaula 7 monos"+ "y cada coco 1 mono.\n"); //Petición al usuario para iniciar la operación System.out.print("¿Listo para comenzar? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); if(read == 'N'){ System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } else { do{ //Lectura de la cantidad de monos totales System.out.print("\n\n-----------------------\n"+ "Introduzca la cantidad de monos: "); read = Integer.parseInt(br.readLine()); //Llamado al método asignar y enviar la variable read con la cantidad de monos gestion.set(read); //Asignación de la cantidad de monos monos = gestion.getMonos(); //Cantidad de contenedores contenedor = gestion.getCont(MAX_CONT); //Hacer un breve delay para que se vea bonito el programa System.out.println("\n\n-----------------------\n"+ "Procesando información... Por favor espere.."); Thread.sleep(2000); while(monos != 0){ //Acumula cantidad de barriles mbar += monos; barril += gestion.getCant(monos, MAX_BAR, CANT_BAR); //Asigna a monos la cantidad del residuo luego de depositarlos en barriles monos = gestion.getDif(monos, MAX_BAR, CANT_BAR); mbar -= monos; //Acumula cantidad de jaulas mjau += monos; jaula += gestion.getCant(monos, MAX_JAU, CANT_JAU); //Asigna a monos la cantidad del residuo luego de depositarlos en jaulas monos = gestion.getDif(monos, MAX_JAU, CANT_JAU); mjau -= monos; //Acumula cantidad de cocos mco += monos; coco += gestion.getCant(monos, MAX_COCO, CANT_COCO); //Asigna a monos la cantidad del residuo luego de depositarlos en cocos monos = gestion.getDif(monos, MAX_COCO, CANT_COCO); mco -= monos; } total = mbar + mjau + mco; System.out.println("\n\n-----------------------\n"+ "Cantidad de contenedores: "+contenedor+"\n\n"+ "Cantidad de barriles: "+barril+"\n\tMonos por barriles: "+mbar+"\n\n"+ "Cantidad de jaulas: "+jaula+"\n\tMonos por jaulas: "+mjau+"\n\n"+ "Cantidad de cocos: "+coco+"\n\tMonos por cocos: "+mco+"\n\n"+ "Total de monos: "+total); System.out.println("\n\n-----------------------\n"+ "¿Desea probar otra vez? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); }while(read == 'S'); System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } } }
Revision: 32659
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at October 1, 2010 09:09 by Physlet
Initial Code
//Importación de la API java.io para usar BufferedReader import java.io.*; class Container{ //Cantidad total de monos introducida por el usuario private int monos; //Método asignar public void set(int totalMonos){ monos = totalMonos; } //Obtener cantidad de contenedores public int getCont(int maxCant){ if(monos%maxCant == 0) return monos/maxCant; else return monos/maxCant+1; } //Obtener cantidad de barriles, jaulas o cocos public int getCant(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 1; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad por contenedor if(total > maxCont) return maxCont; //Si la cantidad total es menor o igual que la cantidad por contenedor else return total; } } } //Obtener cantidad de residuo de monos public int getDif(int monosDif, int maxCant, int maxCont){ int total; //Si la diferencia de monos es igual a 0 if(monosDif == 0) return 0; else { //Si la cantidad de monos es menor o igual a la cantidad total if(monosDif <= maxCant) return 0; //Si la cantidad de monos es mayor que la cantidad total else { //Cantidad de contenedores, barriles, jaulas o cocos sin tomar en cuenta el residuo total = monosDif/maxCant; //Si la cantidad total es mayor que la cantidad permitida por contenedor if(total > maxCont) return (total-maxCont)*maxCant+monosDif%maxCant; //Si la cantidad total es menor o igual que la cantidad por contenedor else return 0; } } } //Método que trae los monos al programa principal public int getMonos(){ return monos; } } public class Monos{ public static void main(String[] x) throws IOException, InterruptedException{ //CONSTANTES => Cantidad de monos por contenedores, barriles, jaulas o cocos final int MAX_CONT = 245, MAX_BAR = 11, MAX_JAU = 7, MAX_COCO = 1; //CONSTANTES => Cantidad de barriles, jaulas o cocos por contenedor final int CANT_BAR = 10, CANT_JAU = 5, CANT_COCO = 100; //Variables a utilizar int barril=0, jaula=0, coco=0, contenedor, monos, read, total; //Monos por barriles, jaulas, cocos int mbar=0, mjau=0, mco=0; //Declaración del objeto gestion instanciando a la clase Container Container gestion = new Container(); //Declaración del objeto tipo BufferedReader y asignación de espacio de memoria BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //Mensaje de bienvenida System.out.println("\t\t\t¡Es la hora de ordenar monitos!\n"+ "En esta aplicación deberás introducir un total de monos"+ "que desees ordenar en contenedores. Esta aplicación te dirá"+ "cuántos contenedores deberás usar para ordenar tus monos"+ "recordando que cada contenedor permite 10 barriles, 5 jaulas"+ "100 cocos. Y que cada barril permite 11 monos, cada jaula 7 monos"+ "y cada coco 1 mono.\n"); //Petición al usuario para iniciar la operación System.out.print("¿Listo para comenzar? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); if(read == 'N'){ System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } else { do{ //Lectura de la cantidad de monos totales System.out.print("\n\n-----------------------\n"+ "Introduzca la cantidad de monos: "); read = Integer.parseInt(br.readLine()); //Llamado al método asignar y enviar la variable read con la cantidad de monos gestion.set(read); //Asignación de la cantidad de monos monos = gestion.getMonos(); //Cantidad de contenedores contenedor = gestion.getCont(MAX_CONT); //Hacer un breve delay para que se vea bonito el programa System.out.println("\n\n-----------------------\n"+ "Procesando información... Por favor espere.."); Thread.sleep(2000); while(monos != 0){ //Acumula cantidad de barriles mbar += monos; barril += gestion.getCant(monos, MAX_BAR, CANT_BAR); //Asigna a monos la cantidad del residuo luego de depositarlos en barriles monos = gestion.getDif(monos, MAX_BAR, CANT_BAR); mbar -= monos; //Acumula cantidad de jaulas mjau += monos; jaula += gestion.getCant(monos, MAX_JAU, CANT_JAU); //Asigna a monos la cantidad del residuo luego de depositarlos en jaulas monos = gestion.getDif(monos, MAX_JAU, CANT_JAU); mjau -= monos; //Acumula cantidad de cocos mco += monos; coco += gestion.getCant(monos, MAX_COCO, CANT_COCO); //Asigna a monos la cantidad del residuo luego de depositarlos en cocos monos = gestion.getDif(monos, MAX_COCO, CANT_COCO); mco -= monos; } total = mbar + mjau + mco; System.out.println("\n\n-----------------------\n"+ "Cantidad de contenedores: "+contenedor+"\n\n"+ "Cantidad de barriles: "+barril+"\n\tMonos por barriles: "+mbar+"\n\n"+ "Cantidad de jaulas: "+jaula+"\n\tMonos por jaulas: "+mjau+"\n\n"+ "Cantidad de cocos: "+coco+"\n\tMonos por cocos: "+mco+"\n\n"+ "Total de monos: "+total); System.out.println("\n\n-----------------------\n"+ "¿Desea probar otra vez? S/N: "); read = Character.toUpperCase(br.read()); br.skip(1); }while(read == 'S'); System.out.println("\n\n-----------------------\n"+ "¡Hasta la próxima!"); System.exit(0); } } }
Initial URL
Initial Description
Un barril contendrá 11 monos, una jaula contendrá 7 monos y un coco contendrá 1 mono. Pida de entrada al usuario una cantidad de monos, y luego distribuya a los monos con el fin de minimizar el número de contenedores usados. En un contenedor pueden ir 10 barriles, 5 jaulas y 100 cocos.
Initial Title
Monos en contenedores
Initial Tags
Initial Language
Java