| Bill Allombert on Wed, 29 Jan 2025 15:51:29 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: 2^[1,3] |
On Wed, Jan 29, 2025 at 03:24:02PM +0100, Ruud H.G. van Tol wrote: > > On 2025-01-29 14:42, Bill Allombert wrote: > > On Wed, Jan 29, 2025 at 02:28:46PM +0100, Ruud H.G. van Tol wrote: > > >> ? vecsum(2^[1,3]) > >> % 10.000000000000000000000000000000000000 > > > > Use fromdigits: > > ? fromdigits([1,3],2) > > % = 10 > > Doesn't work: > > ? fromdigits([1,3],2) > % = 5 > (because 1*2^1 + 3*2^0 = 2+3 = 5) > > > The (distinct) digits are exponents, are not positional. > 2^1 + 2^3 = 10. Ah sorry! > Example quest: > > >> How to best convert something like (int) 6131786 to (int) 2^1 + 2^3 + 2^6 > + > >> 2^7 + 2^8? > > > > You can use the binary() function. > > I don't see yet how. ? select(i->i,binary(6131786),1) %3 = Vecsmall([1,3,4,5,7,8,11,17,20,22]) Cheers, Bill.