Sapere quanti bit posti ad 1 sono presenti in un numero
Da Gambas-it.org - Wikipedia.
Versione del 20 nov 2016 alle 09:47 di Vuott (Discussione | contributi)
Per sapere quanti bit posti ad 1 sono presenti in un numero, è possibile utilizzare alcune modalità.
Uso delle funzioni Bin( ) e Mid( )
Public Sub Main() Dim i, numero, c As Integer Dim binario As String numero = 1234567890 binario = Bin(numero) For i = 1 To len(binario) If Mid(binario, i, 1) = "1" Then Inc c Next Print numero; " contiene "; c; " bit posti a 1 ("; binario; ")" End
Uso dell'operatore aritmetico Mod
Public Sub Main() [nota 1] Dim n, b, c As Integer n = 165 Print "La rappresentazione binaria di "; n; " è "; While n > 0 b = n Mod 2 Print b; If b <> 0 Then Inc c n = n \ 2 Wend Print " e contiene "; c; " bit posti a 1" End
Note
[1] Questa soluzione è stata proposta dal membro Gianluigi del forum gambas-it.org