[ Foro de Java ]

Estructuras de control

03-Jun-2020 16:11
Invitado (kEhuitl)
0 Respuestas

Saludos. Tengo un código en Java que sólo resuelve mi problema parcialmente, sólo funciona hasta las veintenas, es decir, después del cuatrocientos sigue incluyendo los símbolos de las veintenas como si el 400 y 8000 no existiesen. El código es el siguiente:
/**
Hacer un programa que utilice un sistema numérico de base 20 para expresarlo acorde al siguiente patrón y simbología:
~ = 8000
¬ = 400
O = 20
| = 5
• = 1
*/
import java.util.Scanner;

public class Conversor_a_base_20
{
 public static void main(String[] args)
 {
   String Number_name = "Number name: ";
   int numero, i, ocho_millares, cuatro_centenas, veintenas, pentenas, unidades;
   
       Scanner entrada = new Scanner(System.in);
       
       System.out.println("This program shows an equivalent B20 number.\n\n");
       System.out.println("Enter an 'integer number': ");
       
       numero = entrada.nextInt();
       unidades = numero%5;
       pentenas = ((numero%20)-unidades)/5;
       veintenas = (numero/20);
       cuatro_centenas = ((numero%400)-veintenas)/20;
       cuatro_centenas = (numero/400);
       ocho_millares = ((numero%8000)-veintenas)/400;
       ocho_millares = (numero/8000);
       
       System.out.println("B20 number: ");
       
       for(i=1;i<=ocho_millares;i++)
       {
        System.out.printf("~");
       }
       for(i=1;i<=cuatro_centenas;i++)
       {
        System.out.printf("¬");
       }
       for(i=1;i<=veintenas;i++)
       {
        System.out.printf("O");
       }
       for(i=1;i<=pentenas;i++)
       {
        System.out.printf("|");
       }
       for(i=1;i<=unidades;i++)
       {
        System.out.printf("•");
       }
 }
}




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)