Quote Originariamente inviata da el92 Visualizza il messaggio
Il mio programma valuta solo il primo numero,infatti stampa 1;come posso far si che il ciclo while valuti anche le altre cifre con l'operatore <<?
Alcune questioni:
- con n&1 stai testando il bit 0 (meno significativo). Quindi a rigor di logica dovresti shiftare a destra .... non a sinistra.
- al primo bit con valore 0 esci dal ciclo, non ha senso. O fai sempre 32 cicli (tutti i bit) o puoi fare la logica un po' più furba ovvero esci dal ciclo solo quando l'intero valore è 0 (ovvero non potrai avere altri bit a 1).
- 0111 non è binario (se così pensavi) .... è ottale!
- non dovresti "sporcare" la variabile di istanza n per fare il calcolo.