Hot answers tagged

11

You can input numbers in any base up to 36 using the notation base^^digits. Digits over 9 are represented using a, b, c, ... You can print numbers in any base up to 36 using BaseForm. Thus, In[1]:= a=2^^0.10101 Out[1]= 0.65625 In[2]:= BaseForm[a^2,2] Out[2]//BaseForm= Subscript[0.0110111001, 2] Note that the internal representation of numbers doesn't ...


6

I feel like I should be prefacing this answer with three confessions, considering that this is an arithmetic question. First, I had a hard time with the multiplication tables until I was nine years old. Second, even after I finally got the hang of multiplication, I was never a fan of multiplying from right-to-left; I preferred going left-to-right. (Arthur ...


6

You can enter a number in an arbitrary base using base^^digits: alpha = 2^^0.10101; BaseForm[alpha, 2] BaseForm[alpha^2, 2]


6

It's not a bug and it's not so uncommon. For an explanation have a look here. This and some related issues also appear in this MathGroup thread. Also relevant: 1 2.


3

They are not identical computations. With the first form, (mu/2 gt).gt Mathematica can take advantage of vector arithmetic, usually going through specialized routines like LAPACK. The second form, Sum[(mu[[i]]/2 gt[[i]]) gt[[i]], {i, Length@mu}] however, will usually be calculated term by term because there is a possibility that the input can change ...


2

If I understand your question, there is no need of Mathematica to solve your problem for $x_0$ given, we know that $y_{n+1} = y_{n} + 5$. We know also that $y_0 y_1 = 12500$. That is to say that $y_0 y_1 = y_0 (y_0 + 5) = y_0^2 + 5 y_0 = 12500$. You can ask Mathematica to solve this second order equation to obtain $x_0 = 109.331$ --- there is also a ...


1

At the moment, this is just some random thoughts and observations. I will try to morph it into a coherent answer, soon. First, a determinant can be reasonably calculated using LUDecomposition, e.g. Clear[ludet]; ludet[nn_] := ludet[nn] = Block[{u, s1}, u = First@LUDecomposition@Table[s1[i1, i2], {i1, 1, nn}, {i2, 1, nn}]; Times @@ Diagonal[u ...


1

You have quite a small data set, so a really inefficient brute force search will still run pretty fast (<1 sec on my computer). I stress that this is STUPID way to do it, and with list manipulation you can surely make it MUCH more efficient. But as I said - it works. First, transform the data so that you could retrieve the data by calling f[x1,x2,x3], ...



Only top voted, non community-wiki answers of a minimum length are eligible