changeset 4981 | 0c60ade27a0a |
parent 4976 | 088d40d8aba2 |
child 5118 | 9cfdb9bc6140 |
4980:3b40c80c0fe3 | 4981:0c60ade27a0a |
---|---|
183 end; |
183 end; |
184 |
184 |
185 |
185 |
186 function isPowerOf2(i: Longword): boolean; |
186 function isPowerOf2(i: Longword): boolean; |
187 begin |
187 begin |
188 if i = 0 then exit(true); |
188 isPowerOf2:= (i and (i - 1)) = 0 |
189 while not odd(i) do i:= i shr 1; |
|
190 isPowerOf2:= (i = 1) |
|
191 end; |
189 end; |
192 |
190 |
193 function toPowerOf2(i: Longword): Longword; |
191 function toPowerOf2(i: Longword): Longword; |
194 begin |
192 begin |
195 toPowerOf2:= 1; |
193 toPowerOf2:= 1; |