Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Math Problem ...

Math Problem ...

Scheduled Pinned Locked Moved The Lounge
helpquestioncsharp
61 Posts 15 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Paul Conrad

    You get a division by zero if you are dealing with vertical lines.

    E Offline
    E Offline
    Ed Poore
    wrote on last edited by
    #25

    Paul Conrad wrote:

    You get a division by zero if you are dealing with vertical lines.

    You get division by zero if you deal with horizontal lines.  Since tanθ = opposite / adjacent (i.e. vertical over horizontal).  But it's only a couple of ifs to sort this out.  To be honest I'm suprised that so many people seem to be accepting the incorrect versions here.  All you need to know is Pythagoras (a²+o² = h²) to prove that the simpler formulae they've come up with are nonsense.


    Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

    Last modified: 13 June 2006 15:56:59 --

    P 1 Reply Last reply
    0
    • E Ed Poore

      Paul Conrad wrote:

      You get a division by zero if you are dealing with vertical lines.

      You get division by zero if you deal with horizontal lines.  Since tanθ = opposite / adjacent (i.e. vertical over horizontal).  But it's only a couple of ifs to sort this out.  To be honest I'm suprised that so many people seem to be accepting the incorrect versions here.  All you need to know is Pythagoras (a²+o² = h²) to prove that the simpler formulae they've come up with are nonsense.


      Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

      Last modified: 13 June 2006 15:56:59 --

      P Offline
      P Offline
      Paul Conrad
      wrote on last edited by
      #26

      Ed.Poore wrote:

      You get division by zero if you deal with horizontal lines. Let A=(a,b) Let B=(c,d) Let P=(x,y) (the point where you want to find) |AB| = √((c - a)²+(d - b)² θ = arctan((d - b) / (c - a))

      Check your one post because when c-a = 0, the line is vertical :) -- modified at 17:02 Tuesday 13th June, 2006

      E 1 Reply Last reply
      0
      • P Paul Conrad

        Ed.Poore wrote:

        You get division by zero if you deal with horizontal lines. Let A=(a,b) Let B=(c,d) Let P=(x,y) (the point where you want to find) |AB| = √((c - a)²+(d - b)² θ = arctan((d - b) / (c - a))

        Check your one post because when c-a = 0, the line is vertical :) -- modified at 17:02 Tuesday 13th June, 2006

        E Offline
        E Offline
        Ed Poore
        wrote on last edited by
        #27

        Oops, maybe your right, did things in a bit of rush because I've got annoyed that people can't see that the "complex" formula is the correct one, you can't get any simpler. Anyway I'm not going to argue just yet, I'm off to have some supper, I'll come back later and see if people have finally accepted it.


        Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

        P 1 Reply Last reply
        0
        • P Paul Conrad

          Though both are correct, I'd go with the simpler way since there is no worries in regards to division by zero. PJC

          E Offline
          E Offline
          Ed Poore
          wrote on last edited by
          #28

          How can both be correct, I've just posted the proof that they aren't.


          Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

          1 Reply Last reply
          0
          • E Ed Poore

            Oops, maybe your right, did things in a bit of rush because I've got annoyed that people can't see that the "complex" formula is the correct one, you can't get any simpler. Anyway I'm not going to argue just yet, I'm off to have some supper, I'll come back later and see if people have finally accepted it.


            Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

            P Offline
            P Offline
            Paul Conrad
            wrote on last edited by
            #29

            Ed.Poore wrote:

            the "complex" formula is the correct one

            The solution by Jun Du is also correct. Tried both your solution and his for several different points and I get the same answers from both. Consider if this problem was being programmed on some weird machine where no square root functions or trig functions were available via hardware, then Jun Du's solution would be best.

            E 1 Reply Last reply
            0
            • J Jun Du

              This is a perfect example that how people make things more complicated than they should be:omg: This is how it works:

              x = a + (0.2*|AB|*cos(θ))) = a + 0.2*(c-a);
              y = b + (0.2*|AB|*sin(θ))) = b + 0.2*(d-b);

              BTW, I like your "θ". How come It shows "θ" in my editing panel, but not in the post? ...maybe because of my Linux (I'm using RedHat 8 at work). Signature for today: "Don't discuss math problems with a methematician."

              E Offline
              E Offline
              Ed Poore
              wrote on last edited by
              #30

              Jun Du wrote:

              Signature for today: "Don't discuss math problems with a methematician."

              Who's a methematician?


              Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog

              1 Reply Last reply
              0
              • E Ed Poore

                Jun Du wrote:

                This is a perfect example that how people make things more complicated than they should be

                Maybe it's more complicated but it works. Here's the proof using simple Pythagorean trig and his theorem.

                Start with a 3,4,5 triangle with height 3 and width 4 (and hypotenuse 5).
                If A is the bottom left-corner, located over an "origin" of (0,0) then it follows that
                    A = (0,0) (bottom-left corner)
                    B = (4,3) (top-right corner)
                    C = (4,0) (bottom-right corner)
                    θ = Angle BAC (i.e. bottom-left)
                Also it can be shown (through Pythagorean Trigonometry) that:
                    sin(θ)=3/5
                    cos(θ)=4/5
                    tan(θ)=3/4

                So you require 20% of the line AB (in this case it is (0.2*5) = 1).
                We can let the co-ordinates of the end point of this line (from A along AB for 20% of AB) be X=(x,y).
                It then follows that since we have a hypotenuse equal to 1 and the angle has remained the same that:

                x = 1*cos(θ) = 4/5
                    y = 1*sin(θ) = 3/5

                So from A the new point X which is 20% of the line AB is A+X, i.e: X = (0 + 4/5, 0 + 3/5) = (4/5, 3/5).

                If you take you're equations of:
                    x = a + 0.2 * (c - a)
                    y = b + 0.2 * (d - b)
                You will get the following answers for this case:
                    x = 0 + 0.2 * (4 - 0) = 0.2 * 2 = 2/5
                    y = 0 + 0.2 * (3 - 0) = 0.2 * 3 = 9/10
                Which is not the same as the ones above.

                The simplest proof that the previous equations are wrong can be shown quite simply by Pythagoras' Theorem.
                If we assume that the triangle formed is of height and width 1 then, your equations show that the height and width of the "new" triangle which provides 20% of AB are both 0.2.
                If you use Pythagoras on these you get a hypotenuse of √(0.2²+0.2²) which gives √0.08 which is ~0.2828, not 0.2 as you require.


                Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                C Offline
                C Offline
                Chris Losinger
                wrote on last edited by
                #31

                Ed.Poore wrote:

                x = 0 + 0.2 * (4 - 0) = ... = 2/5

                .2 * 4 = .8

                Ed.Poore wrote:

                y = 0 + 0.2 * (3 - 0) = 0.2 * 3 = 9/10

                .2 * 3 = .6 Cleek | Image Toolkits | Thumbnail maker

                P 1 Reply Last reply
                0
                • C Chris Losinger

                  Ed.Poore wrote:

                  x = 0 + 0.2 * (4 - 0) = ... = 2/5

                  .2 * 4 = .8

                  Ed.Poore wrote:

                  y = 0 + 0.2 * (3 - 0) = 0.2 * 3 = 9/10

                  .2 * 3 = .6 Cleek | Image Toolkits | Thumbnail maker

                  P Offline
                  P Offline
                  Paul Conrad
                  wrote on last edited by
                  #32

                  Chris Losinger wrote:

                  .2 * 4 = .8

                  Chris Losinger wrote:

                  .2 * 3 = .6

                  Last time I checked, these are the correct answers.

                  C 1 Reply Last reply
                  0
                  • P Paul Conrad

                    Chris Losinger wrote:

                    .2 * 4 = .8

                    Chris Losinger wrote:

                    .2 * 3 = .6

                    Last time I checked, these are the correct answers.

                    C Offline
                    C Offline
                    Chris Losinger
                    wrote on last edited by
                    #33

                    yup. he was right up until the last little bit of arithmetic. Cleek | Image Toolkits | Thumbnail maker

                    E P 2 Replies Last reply
                    0
                    • P Paul Conrad

                      Ed.Poore wrote:

                      the "complex" formula is the correct one

                      The solution by Jun Du is also correct. Tried both your solution and his for several different points and I get the same answers from both. Consider if this problem was being programmed on some weird machine where no square root functions or trig functions were available via hardware, then Jun Du's solution would be best.

                      E Offline
                      E Offline
                      Ed Poore
                      wrote on last edited by
                      #34

                      Paul Conrad wrote:

                      The solution by Jun Du is also correct.

                      :wtf: How?  Can you provide some proof!


                      Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                      P 1 Reply Last reply
                      0
                      • E Ed Poore

                        Paul Conrad wrote:

                        The solution by Jun Du is also correct.

                        :wtf: How?  Can you provide some proof!


                        Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                        P Offline
                        P Offline
                        Paul Conrad
                        wrote on last edited by
                        #35

                        Can't you just accept the fact someone else came up with an easier solution than yours (and yours is correct, too)? You can't even get horizontal and vertical lines correct. Division by zero occurs when you have a vertical line. I knew this BEFORE you were even born. Mr. Losinger even pointed out math errors in your one post.

                        E 2 Replies Last reply
                        0
                        • P Paul Conrad

                          Can't you just accept the fact someone else came up with an easier solution than yours (and yours is correct, too)? You can't even get horizontal and vertical lines correct. Division by zero occurs when you have a vertical line. I knew this BEFORE you were even born. Mr. Losinger even pointed out math errors in your one post.

                          E Offline
                          E Offline
                          Ed Poore
                          wrote on last edited by
                          #36

                          If I've understood the post correctly he wants to get 20% of the line between the two points.  Agree? If so then how can you simply take 20% of the width of the "triangle" formed and "20%" of the height to get a hypotenuse that is 20% of the original triangle? If you use Pythagoras it'll show you that if you do that you'll actually get a hypotenuse that's ~28% of the original rather than 20%.


                          Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                          P 1 Reply Last reply
                          0
                          • P Paul Conrad

                            Can't you just accept the fact someone else came up with an easier solution than yours (and yours is correct, too)? You can't even get horizontal and vertical lines correct. Division by zero occurs when you have a vertical line. I knew this BEFORE you were even born. Mr. Losinger even pointed out math errors in your one post.

                            E Offline
                            E Offline
                            Ed Poore
                            wrote on last edited by
                            #37

                            Oooooooooopppppppppppssssssssssssssss :doh::doh::doh::doh::doh: :-O:-O:-O:-O:-O Now I know I should go to bed, sorry I've completely ballsed this up havn't I, just got a pencil and paper out to work it out, forgot to substitute for cos and sin :doh: Combination of too much revision and a late night.


                            Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                            1 Reply Last reply
                            0
                            • R Ray Kinsella

                              Hey Guys, I have a math issue, I know how you like brain teasers so I thought I would post it here, say I have two points ab & cd, how do I find the point 20% of distance between these two points on the same slope ? Regards Ray "Je Suis Mort De Rire" Blogging @ Keratoconus Watch

                              D Offline
                              D Offline
                              Denevers
                              wrote on last edited by
                              #38

                              man.. these guys like complicated solutions :) let's p be the proportion of the line (0.2) x = (a * (1-p)) + (c * p) y = (b * (1-p)) + (d * p) unless I blew it.. this should work with any lines. Denevers -- modified at 18:08 Tuesday 13th June, 2006

                              1 Reply Last reply
                              0
                              • E Ed Poore

                                If I've understood the post correctly he wants to get 20% of the line between the two points.  Agree? If so then how can you simply take 20% of the width of the "triangle" formed and "20%" of the height to get a hypotenuse that is 20% of the original triangle? If you use Pythagoras it'll show you that if you do that you'll actually get a hypotenuse that's ~28% of the original rather than 20%.


                                Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                                P Offline
                                P Offline
                                Paul Conrad
                                wrote on last edited by
                                #39

                                Though it does not qualify as an actual mathematical proof, I've tested your approach and Jun Du's approach in Excel with 10-15 different values and I get the same results. Remember that: θ = arctan( y / x ) x = cos( θ ) y = sin( θ ) from Inverse Tangent[^] You wrote: θ = arctan((d - b) / (c - a)) x = a + (0.2*|AB|*cos(θ) y = b + (0.2*|AB|*sin(θ) and based on the link from MathWorld, (c-a) = cos( θ ) and (d-b) = sin( θ ) PJC

                                E 1 Reply Last reply
                                0
                                • C Chris Losinger

                                  yup. he was right up until the last little bit of arithmetic. Cleek | Image Toolkits | Thumbnail maker

                                  E Offline
                                  E Offline
                                  Ed Poore
                                  wrote on last edited by
                                  #40

                                  Chris Losinger wrote:

                                  he was right up until the last little bit of arithmetic.

                                  Yep, I've now confirmed that I've been a complete and utter nincompoop, see http://www.codeproject.com/lounge.asp?msg=1530321#xx1530321xx[^] for my explanation and excuses.  I now realise I was barking up the wrong tree :doh:


                                  Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                                  1 Reply Last reply
                                  0
                                  • P Paul Conrad

                                    Though it does not qualify as an actual mathematical proof, I've tested your approach and Jun Du's approach in Excel with 10-15 different values and I get the same results. Remember that: θ = arctan( y / x ) x = cos( θ ) y = sin( θ ) from Inverse Tangent[^] You wrote: θ = arctan((d - b) / (c - a)) x = a + (0.2*|AB|*cos(θ) y = b + (0.2*|AB|*sin(θ) and based on the link from MathWorld, (c-a) = cos( θ ) and (d-b) = sin( θ ) PJC

                                    E Offline
                                    E Offline
                                    Ed Poore
                                    wrote on last edited by
                                    #41

                                    I just wrote it out on paper, basically if you substitute adjacent / hypotenuse in place of cos then the root will cancel out and you'll get what Jun Du gave.  I'm just too exhausted from 12 hours revision plus a 2 hour shooting walk with my father and the dog. I stand corrected and apologise if I was dogmatic :-O.


                                    Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                                    P C 3 Replies Last reply
                                    0
                                    • E Ed Poore

                                      I just wrote it out on paper, basically if you substitute adjacent / hypotenuse in place of cos then the root will cancel out and you'll get what Jun Du gave.  I'm just too exhausted from 12 hours revision plus a 2 hour shooting walk with my father and the dog. I stand corrected and apologise if I was dogmatic :-O.


                                      Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                                      P Offline
                                      P Offline
                                      Paul Conrad
                                      wrote on last edited by
                                      #42

                                      Ed.Poore wrote:

                                      I stand corrected and apologise if I was dogmatic .

                                      Hey it's cool. It happens.

                                      1 Reply Last reply
                                      0
                                      • C Chris Losinger

                                        yup. he was right up until the last little bit of arithmetic. Cleek | Image Toolkits | Thumbnail maker

                                        P Offline
                                        P Offline
                                        Paul Conrad
                                        wrote on last edited by
                                        #43

                                        Chris Losinger wrote:

                                        he was right up until the last little bit of arithmetic.

                                        I had that happen when I was in Calculus 15 years ago. It happens. The teacher dinged everyone on arithmetic mistakes even if we displayed knowledge of the material. Now I look back at those old midterm exams and laugh. PJC

                                        1 Reply Last reply
                                        0
                                        • E Ed Poore

                                          I just wrote it out on paper, basically if you substitute adjacent / hypotenuse in place of cos then the root will cancel out and you'll get what Jun Du gave.  I'm just too exhausted from 12 hours revision plus a 2 hour shooting walk with my father and the dog. I stand corrected and apologise if I was dogmatic :-O.


                                          Formula 1 - Short for "F1 Racing" - named after the standard "help" key in Windows, it's a sport where participants desperately search through software help files trying to find actual documentation. It's tedious and somewhat cruel, most matches ending in a draw as no participant is able to find anything helpful. - Shog9

                                          C Offline
                                          C Offline
                                          Chris Losinger
                                          wrote on last edited by
                                          #44

                                          happens to the best of us... and the least :) without sitting down and working it through, i don't see how DU's solution works. maybe i'll give it some time later tonight. Cleek | Image Toolkits | Thumbnail maker

                                          P E 2 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups