All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars    
perplexus dot info

Home > Just Math
Probably Acute (Posted on 2018-12-21) Difficulty: 4 of 5
Three points are randomly selected inside a sphere.

What is the probability that the three points form an acute angled triangle?

No Solution Yet Submitted by Danish Ahmed Khan    
Rating: 5.0000 (1 votes)

Comments: ( Back to comment list | You must be logged in to post comments.)
comments | Comment 5 of 12 |
1st - I completely agree that specifying "randomly chosen points in a sphere" is unambiguous. 
2nd - I bet there is an analytic way of getting the result
3rd - I am getting a different result than Charlie simulating the problem: 47% acute. I haven't checked very thoroughly, however.
(I didn't see the z coord used in C's code.... Here is my code

rabbit-3:~ lord$ acu

  total triangles, fraction acute :       10000  0.472000003    

  total triangles, fraction acute :      100000  0.471520007    

  total triangles, fraction acute :     1000000  0.470748007    

  total triangles, fraction acute :    10000000  0.471305400    

        program acu

        implicit none

        real pi,s(3),a(3),x(3),y(3),z(3),f,fok,dum,an,suman

        integer iseed,i,j,tot,totok,allcnt,acnt,power,in(2,3),k1,k2

        data in/2,3,1,3,1,2/

        pi=3.1415926

        iseed=time8()

        call srand(iseed)


        do power = 4,7

           acnt=0

           tot=0

           totok=0

        allcnt=0

           do 2 i=1,10**power

c          do 2 i=1,20

                do j=1,3

1               x(j)=rand()-0.5

                y(j)=rand()-0.5

                z(j)=rand()-0.5

                tot=tot+1

                dum = (sqrt(x(j)**2+y(j)**2+z(j)**2))

c               print*,'length= ',dum

                if(sqrt(x(j)**2+y(j)**2+z(j)**2).gt.0.5)go to 1

                totok=totok+1

c               print*,'yes'

                enddo


           allcnt=allcnt+1


                do j=1,3

                k1=in(1,j)

                k2=in(2,j)

                s(j)=sqrt((x(k1)-x(k2))**2+(y(k1)-y(k2))**2+(z(k1)-z(k2))**2)

c               print*, 'j side(j) = ',j,s(j)

                enddo


c               suman=0

                do j=1,3


                k1=in(1,j)

                k2=in(2,j)

c               print*,'three sides ',j,k1,k2

                a(j)=acos( (s(k1)**2+s(k2)**2-s(j)**2 ) / (2*s(k1)*s(k2)) )

c               an=a(j)*180./pi

c               if(i.lt.11)print*,i,j,an

c               suman=suman+an

c               print*,' vertex, angle ',j,an

c               if(j.eq.3)print*,' sum interior angles',suman

                if (a(j).gt.3.141592/2.)go to 2

                enddo

           acnt=acnt+1

2          continue

        fok=(1.*totok)/tot

c       print*,'tot totok fok = ',tot,totok,fok

        f=(1.*acnt)/allcnt

        print*,' total triangles, fraction acute :',allcnt,f


        enddo

        end



Edited on December 23, 2018, 4:08 am
  Posted by Steven Lord on 2018-12-22 13:50:18

Please log in:
Login:
Password:
Remember me:
Sign up! | Forgot password


Search:
Search body:
Forums (0)
Newest Problems
Random Problem
FAQ | About This Site
Site Statistics
New Comments (12)
Unsolved Problems
Top Rated Problems
This month's top
Most Commented On

Chatterbox:
Copyright © 2002 - 2024 by Animus Pactum Consulting. All rights reserved. Privacy Information