Convertire un numero in binario in Java

Articolo scritto lunedì 1 dicembre 2008

Si da il caso che quest’anno all’università mi ritrovo a scrivere programmi in Java, dato che il modulo di Laboratorio di Programmazione della mia facoltà prevede questo linguaggio.

Sebbene io disprezzi questo linguaggio di programmazione per una serie di motivi validi, al contrario scrivere, compilare e vedere che un mio programmino in Java funziona bene, è una soddisfazione troppo grande.
Ne avrò scritti una trentina finora, molti di prova e pochi realmente utili e funzionanti.

Come, in questo caso, quello della conversione da numero intero decimale a binario. All’inizio pensavo che richiedeva una grande mole di codice, e invece quando mi si è accesa la famosa lampadina stile “Eureka!” tutto mi era chiaro. E il codice è quasi una bazzecola. Eccovelo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class convertbin {
    public static void main (String[]args) {
        int b = Integer.parseInt(args[0]);
        String s = new String();
        System.out.print("Il valore binario di "+b+" è ");
        if (b == 0) System.out.println("0");
        else {
            while (b > 0) {
                int m = b % 2;
                b = b / 2;
                if (m == 1){
                    s = 1+s;
                }
                else {
                   s = 0+s;
                }
            }
        }
        System.out.println(s);
    }
}

Per usarlo bisogna avere JDK installato, compilarlo con un “javac convertbin.java” e farlo partire con un bel “java convertbin numero“, dove numero è il parametro args di input. Ovvero il numero che verrà trascritto in binario da java. ;)

Vi pregherei di non linciarmi se il codice dovesse risultarvi “così banale” o “imperfetto“, o ancora “da stupidi“, ma se avete suggerimenti o segnalazioni più in basso esiste il form per scrivere commenti. Coraggio, scatenatevi! ;)

Adesso che questo pezzetto di codice è stato “archiviato”, posso dedicarmi a scrivere un altro programma di ben altro calibro. Staremo a vedere. :P

EDIT: Come volevasi dimostrare, ecco che mi hanno appena massacrato con un codice ancora più snello, fornito da scimmia:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class convertbin {
    public static void main (String[]args) {
        int b = Integer.parseInt(args[0]);
        String s = new String();
        System.out.print("Il valore binario di "+b+" è ");
        if (b == 0) System.out.println("0");
        else {
            while (b > 0) {
                int m = b % 2;
                b = b / 2;
                s = m+s;
            }
        }
        System.out.println(s);
    }
}

O qualcun’altro vuole massacrare anche scimmia? :D

Condividi articolo su:
  • Digg
  • del.icio.us
  • Facebook
  • Google
  • E-mail this story to a friend!
  • Live
  • MySpace
  • Netvibes
  • Pownce
  • StumbleUpon
  • Technorati
  • Tumblr
  • Wikio IT
  • Segnalo
  • Upnews
  • TwitThis

11 commenti in “Convertire un numero in binario in Java”

Lascia un commento


Non sai cosa sono i feeds? Oppure preferisci avere gli articoli via mail?



Ricevi gratis gli articoli sulla tua casella di posta elettronica:



Oops!CubaLibre and Spritz AperolA little ride on the riverViottoloPeroniTaking that expressRainy day in AprilTrain leaving RomeStanding behind the windowScattered sheets
Vai all'album di Piplos su Flickr!


Per informazioni sulla licenza utilizzata in questo blog leggere le Note Legali.


Questo blog ha 4 anni e 8 giorni.


Grafica realizzata interamente da Piplos.

Feed RSSRimani aggiornato via feedFlickrGuarda le mie foto su FlickrInfoInformazioni sul blog