class NumeraleNumero{ public static void main( String[ ] aa ){ final String cifre = "0123456789abcdef"; Leggi.emettiMessaggio( "Ora sceglierai la base" ); int base = Leggi.leggiInt( ); // base di numerazione String numerale; if ( base > 1 && base <= 16 ) { do{ numerale = Leggi.leggi( "numerale" ); int num = 0; for( int i = 0; i < numerale.length() && num >= 0; i++ ){ char cifra = numerale.charAt( i ); int valCifra = ( cifra >= '0' && cifra <= '9' ) ? (cifra-'0') : ( cifra >= 'A' && cifra < 'G' ) ? (10+cifra-'A') : ( cifra >= 'a' && cifra < 'g' ) ? (10+cifra-'a') : base; if ( valCifra >= base ) num = -1; else num = num * base + valCifra; } Leggi.emettiMessaggio( "Il numerale " + numerale + " in base " + base + " rappresenta il numero " + num ); } while ( ! numerale.equals("") ); System.out.println( "Ciao." ); } else System.out.println( "Mi hai dato una base che non posso gestire." ); } }