|
I tried much in this, but I couldn't get to any thing.
I want to get 21000 and put it in an integer, when I put it in a double it give something like 1.80934987391E+301, I want all the 302 digits, so I tried parsing in a string but it parses the same thing, I heard that something like this can be done by catching the overrun exception, but I really can't do it. Can any one help ?
|
|
|
|
|
Hi,
2^1000 has more than 300 decimal digits, obviously it wont fit in an int or a long.
2^1000 = 10,715,086,071,862,673,209,484,250,490,600,018,105,614,048,117,
055,336,074,437,503,883,703,510,511,249,361,224,931,983,788,
156,958,581,275,946,729,175,531,468,251,871,452,856,923,140,
435,984,577,574,698,574,803,934,567,774,824,230,985,421,074,
605,062,371,141,877,954,182,153,046,474,983,581,941,267,398,
767,559,165,543,946,077,062,914,571,196,477,686,542,167,660,
429,831,652,624,386,837,205,668,069,376
(302 digits)
there are basically three ways to get all the digits:
1.
use very clever code, based on mathematics, to calculate one or a few digits at a time,
without ever holding them all. Hint: the last digit can easily be predicted, the powers of
two end on 2/4/8/6/2/4/8/6/...
2.
use a library that can handle "big integers"; there are some on CP, and many more on Google.
Only a very small part of such a lib is actually needed here, since 2^1000 simply gets
represented as a 1 followed by a thousand zeroes in binary. So the one thing that remains
to be done is the ToString() of that...
3.
cheat and go to http://www.newdream.net/~sage/old/numbers/pow2.htm[^]
|
|
|
|
|
Luc Pattyn wrote: 2^1000 = 10,715,086,071,862,673,209,484,250,490,600,018,105,614,048,117,
055,336,074,437,503,883,703,510,511,249,361,224,931,983,788,
156,958,581,275,946,729,175,531,468,251,871,452,856,923,140,
435,984,577,574,698,574,803,934,567,774,824,230,985,421,074,
605,062,371,141,877,954,182,153,046,474,983,581,941,267,398,
767,559,165,543,946,077,062,914,571,196,477,686,542,167,660,
429,831,652,624,386,837,205,668,069,376
Can you please tell how do you calculate such a big number?
Regards,
Arun Kumar.A
|
|
|
|
|
I don't know how Luc did it, but using any large integer library will allow you to do it. Some languages support large integers, e.g. in Python (free), typing pow(2,1000) gives:
<br />
>>> pow(2,1000)<br />
1071508607186267320948425049060001810561404811705533607443750388370351051124936122493198378815695858<br />
1275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954<br />
1821530464749835819412673987675591655439460770629145711964776865421676604298316526243868372056680693<br />
76L<br />
I know that mathematica also supports large integers.
To do it in say c++, you need to write code, or use a large integer library - type large integer into the search box at the top of the page.
If you are asking how it is done, simply by using long multiplication / division. If the native int representation is 32 bits, then to represent a 1001 bit number needs 32 ints. You can write routines to do standard +,=,* and / operations on these numbers, it is much the same as in base 10 - you need to worry about carrying and borrowing. It is not that hard - I did it some years ago when I wrote some crypto routines (one of the major uses for large integer libraries these days), but libraries are readily available these days. Long division is the tricky one - I confess to resorting to Donald Knuth's book to get my algorithm right.
To work out 2^1000 is simply a number with 1 followed by 1000 '0's as Luc noted, the decimal representation is probably worked out using long division.
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
|
|
|
|
|
|
|
|
Another one to look into is MIRACL[^].
"This perpetual motion machine she made is a joke. It just keeps going faster and faster. Lisa, get in here! In this house, we obey the laws of thermodynamics!" - Homer Simpson
Web - Blog - RSS - Math - LinkedIn - BM
|
|
|
|
|
Hi
I have a bit of a math problem (related to graphics)
If i have three vectors and an origin representing an orthonormal system, how do i get the rotation matrix that would rotate the regular orthonormal system to this new one?
(by regular i mean at O(0,0,0) through i(1,0,0), j(0,1,0), and k(0,0,1) )
thanks for your time
|
|
|
|
|
The columns of the matrix are the orthonormal vectors of the new basis. So if the transformation is
i->V1
j->V2
k->V3
where {V1,V2,V3} are an orthonormal set, then the matrix
R={V1,V2,V3}
where V1 is the first column etc, is want you want. Check by using R to transform each of the original basis vectors i,j,k and check they end up in the right place.
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
|
|
|
|
|
Add Mathworld[^] to your bookmark. Been some time since I've done matrices :->
|
|
|
|
|
You need to apply a unitary matrix transform to your coordinates (http://en.wikipedia.org/wiki/Unitary_matrix). that is, if you have a point in R3 represented by the vector v_o, then v = U v_o is a rotated coordinate. You need a unitary matrix so that no coordinate in the new basis is scaled with respect to the original basis. Concretely, if you start with an orthonormal system you want to end with an orthonormal system.
See rotation matrices on wikipedia: http://en.wikipedia.org/wiki/Rotation_matrix for more details of making the appropriate R3 rotation matrix.
good luck
|
|
|
|
|
Why are you making this complicated? If he has the three new basis vectors then these are simply the columns of the transformation matrix. Simple matrix multiplication shows that the vector (1,0,0) goes to a vector equal to the first column of the matrix, (0,1,0) to the second etc. So if he has these three vectors (normalized) then he has his matrix.
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
|
|
|
|
|
Matrix Rotation
Rotation of the plane at the origin by angle @ has the following form
x |--> R@x
where R@ is the matrix
( cos@ -sin@ )
( sin@ cos@ )
This is a 2 x 2 matrix on for a unit square (0,0), (0,1) , (1,0) and (1,1).
|
|
|
|
|
I need a solution to a tedious problem please. I need to find a suitable equation that will model the Gateway Arch in St. Louis using suitable axes. I can use what is known as a catenary which is y=a/2(e^(x/a)+e^(-x/a)). Can you help me? I am desperate!!!!
|
|
|
|
|
Jbones wrote: I need to find a suitable equation
Sounds like you have found it:
Jbones wrote: y=a/2(e^(x/a)+e^(-x/a))
What's the problem?
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
|
|
|
|
|
if you need to fit catenary parameters then use least squares.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
|
|
|
|
|
Have you tried regression
|
|
|
|
|
maybe was for the OP...wasn't it?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
|
|
|
|
|
There was me talking about linear regression and trend lines
|
|
|
|
|
Frank Kerrigan wrote: Grady Booch: I told Google to their face...what you need is some serious adult supervision.
|
|
|
|
|
I hate to admit that you don't get the best advice here, but if you google "Gateway Arch in St. Louis equation" and take the first hit....
Peter
"Until the invention of the computer, the machine gun was the device that enabled humans to make the most mistakes in the smallest amount of time."
|
|
|
|
|
I'm interested in earth map programming .
For instance , on a rectangular projected earth map ,
its easy to place cities by lat & long ,
but harder to draw great & small earth circles
like sunlight perimeters .
Also for earth pictures taken from space :
? what is "map" projection
? math for lat&long points
? math for earth circles
Please recommend good sphere math book for this .
Thanks , Jim D
|
|
|
|
|
|
I disagree. Well, not completelly, but suficiently.
In a growing civilization we are bound to always find people ready to go beyond. Their number will never reach zero. And I propose that the ability to solve problems and imagine solutions to problems is increasing not because people are becoming smarter but, instead, because generation upon generation we are allowed to build where others left off.
My proposition is not a simple one. Even the definition of "smartness" (is this a word??) is hard to define in this context. We need not only traditional "smartness" but also large amounts of memory, speed of reasoning, ability to correlate the uncorrelated, and (depending on the area of interest) a close contact to physics and the real world or the largest possible distance from it. We also need to find science interesting, and very often we have to be "smart enough" to select the right topic to research on.
Anyway, my proposition implies that as science (including mathematics) becomes more complex, we will always find people that are able to understand it and expand it. This is simple, we just have to start where others left off and resist the temptation of understanding everything from scratch. Many are good at that. This makes me confident that science as an art is not destined to disapear.
However, science as an art is becoming less and less important in our society. Today I see a booming necessity for the pragmatics. I call them that because they are people who know enough to get things to work, have a very developed intuition about where to focus their attention, and an extremely important ability to take complex abstract results that others developed and strip them down to the point where it becomes practical to do something with them (this strip down is an expansion in knowledge, not a reduction).
Please note that what I meant is that science as an art will probably never disapear, but there will be a breed that will be ready to take control of the progress of our civilization by using scientific results and findings and expanding them to aplicability.
Anyway, even if you (or your source) were right, if science as an art disapeared that would simply mean that it had become useless and uninteresting to absolutely everyone. That has not happened yet to the disco sound, so what is the real possibility of science as an art becoming useless and uninteresting to absolutely everyone?
Rilhas
|
|
|
|
|