1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Reading a programming book

  1. Nov 17, 2004 #1
    i'm reading a programming book and one of the problems it asks me to solve is to write a program that determines the larger and smaller values of two integers that the user inputs. I could not use if statements in the program.

    I checked the answer and they had used this expression to come solve it.

    long larger = (a*(a/b) + b*(b/a))/(a/b + b/a);
    long smaller = (b*(a/b) + a*(b/a))/(a/b + b/a);

    i was wondering how they have gone about finding those expressions? i'm not a math whiz so i was wondering if there was something in my mathematics education that was lacking.
  2. jcsd
  3. Nov 17, 2004 #2
    sorry for the ambiguous title
  4. Nov 18, 2004 #3

    matt grime

    User Avatar
    Science Advisor
    Homework Helper

    max(a,b)+min(a,b) = a+b
    max(a,b)-min(a,b)= |a-b|

    solve for an easier answer
  5. Nov 18, 2004 #4
    No there's nothing in your education that is lacking, it's just that writers of programming books have to show how clever they are by inventing silly tricks. This has several problems:

    1) When I tried it with negative numbers it didn't work - it may do if you define division using negative integers in a different way, but not with the program I was using.

    2) Suppose that you changed your integers to floating point, and your program had this code in. There would be no obvious reason why it needs changing - but suddenly people start finding mysterious errors when running the program.
  6. Nov 18, 2004 #5
    hmm, i should have been more specific. it only wanted positive whole numbers and things ive learned in that chapter. this was a very neat trick.
    Last edited: Nov 18, 2004
  7. Nov 24, 2004 #6
    An 'if' statement doesn't take as much computationally (and works with all number), so I'd never use that method if I were you.
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?

Similar Discussions: Reading a programming book
  1. Beginner Books? (Replies: 12)

  2. Linear Programming (Replies: 2)

  3. Reading Span (Replies: 1)

  4. Langlands Programs (Replies: 4)