Jump to content

Find first and last set bit of a long integer: Difference between revisions

Find first and last set bit of a long integer en FreeBASIC
m (→‎machine-sized integers: removed errant tag)
(Find first and last set bit of a long integer en FreeBASIC)
Line 573:
111110010100011000010100000 5 26
</pre>
 
 
=={{header|FreeBASIC}}==
{{trans|Python}}
<lang freebasic>Function MSB(i As Integer) As Integer
Return Len(Bin(i))-1
End Function
 
Function LSB(i As Integer) As Integer
Return MSB(i And -i)
End Function
 
Dim As Integer p = 1
For j As Integer = 0 To 11
Print Using "################## & MSB: ## LSB: ##"; p; Bin(p,64); MSB(p); LSB(p)
p *= 42
Next j
Sleep</lang>
{{out}}
<pre>
1 0000000000000000000000000000000000000000000000000000000000000001 MSB: 0 LSB: 0
42 0000000000000000000000000000000000000000000000000000000000101010 MSB: 5 LSB: 1
1764 0000000000000000000000000000000000000000000000000000011011100100 MSB: 10 LSB: 2
74088 0000000000000000000000000000000000000000000000010010000101101000 MSB: 16 LSB: 3
3111696 0000000000000000000000000000000000000000001011110111101100010000 MSB: 21 LSB: 4
130691232 0000000000000000000000000000000000000111110010100011000010100000 MSB: 26 LSB: 5
5489031744 0000000000000000000000000000000101000111001010111111101001000000 MSB: 32 LSB: 6
230539333248 0000000000000000000000000011010110101101001101110000111010000000 MSB: 37 LSB: 7
9682651996416 0000000000000000000010001100111001101011000010000110000100000000 MSB: 43 LSB: 8
406671383849472 0000000000000001011100011101110110001111010111111110101000000000 MSB: 48 LSB: 9
17080198121677824 0000000000111100101011100101100110000101101111000110010000000000 MSB: 53 LSB: 10
717368321110468608 0000100111110100100110101010111111110000111010000110100000000000 MSB: 59 LSB: 11
</pre>
 
 
=={{header|Go}}==
2,169

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.