Results 1 to 11 of 11
- 10-04-2008, 07:43 PM #1
[SOLVED] How can I dynanically change math signs
Hi Gang:
What I'm looking for is a way to dynamically change the plus "+" or minus "-" signs in my program (I searched the forum and didn't see anything similiar).
Explanation:
- If the condition is x, then use "+" in all math operations
- If the condition is y, then use "-" in all math operations
I know that I can have two sections in the program, one that adds and the other that subtracts, but it would be easier (and more efficient) if could establish this from the begining since the two sections are the same except for the math operations.
Thanks
Chris
- 10-04-2008, 07:47 PM #2
- Join Date
- Jul 2007
- Location
- Colombo, Sri Lanka
- Posts
- 11,370
- Blog Entries
- 1
- Rep Power
- 26
- 10-04-2008, 08:29 PM #3
Senior Member
- Join Date
- Aug 2008
- Posts
- 384
- Rep Power
- 13
Indeed, I don't really see the problem here either...
Just use if statements or multiply some variables with -1...I die a little on the inside...
Every time I get shot.
- 10-04-2008, 08:35 PM #4
Agreed, but I'm trying to avoid repeating the same code twice where the only difference is the math sign. Something like (simple pseudo code):
Java Code:if (conditon = x) { mathSign = +; } else if (conditon = y) { mathSign = -; } result = 100 mathSign 10; //depending on the value of mathSign the answer //could be 90 or 110
Chris
- 10-04-2008, 08:56 PM #5
Using the ternary operator
Java Code:result = 100 + 10 * (conditon ? 1 : -1);
Java Code:int sign = 0; if (conditon) { sign = 1; } else { sign = -1; } result = 100 + 10 * sign;
Last edited by DarrylBurke; 10-04-2008 at 09:01 PM. Reason: missed a code tag
- 10-04-2008, 09:29 PM #6
[SOLVED] How can I dynanically change math signs
Supamagier & Darryl.Burke... thanks for the responses. Multiplying by the Sign variable will do the job.
Thanks,
Chris
- 10-05-2008, 05:41 AM #7
- Join Date
- Jul 2007
- Location
- Colombo, Sri Lanka
- Posts
- 11,370
- Blog Entries
- 1
- Rep Power
- 26
- 10-05-2008, 08:51 PM #8
OK... here we go again
I will try to be as explicit as possible:
Problem: I needed to be able to change the math sign (+ or -) depending on some established condition:
- If the condition is x, then use "+" in all math operations
- If the condition is y, then use "-" in all math operations
What I didn't want to do was program two separate sections, one using the plus sign and the other using the minus sign, since the logic is the same in both sections.
Solution: Establishing a variable (sign variable) that contains a 1 or -1 (see sign variable used in Daryl Burkes example below) provides the solution I was looking for:
Java Code:int sign = 0; if (conditon) { sign = 1; } else { sign = -1; } //logic follows here... result = 100 + 10 * sign;
Thanks
- 10-06-2008, 10:10 AM #9
- Join Date
- Jul 2007
- Location
- Colombo, Sri Lanka
- Posts
- 11,370
- Blog Entries
- 1
- Rep Power
- 26
You can use the ternary operator to define the sign as well.
- 10-06-2008, 06:03 PM #10
Senior Member
- Join Date
- Aug 2008
- Posts
- 384
- Rep Power
- 13
ternary operator, what's that?
EDIT: nvmLast edited by Supamagier; 10-06-2008 at 06:08 PM.
I die a little on the inside...
Every time I get shot.
- 10-07-2008, 05:07 AM #11
- Join Date
- Jul 2007
- Location
- Colombo, Sri Lanka
- Posts
- 11,370
- Blog Entries
- 1
- Rep Power
- 26
Similar Threads
-
Math Class
By ritwik07 in forum New To JavaReplies: 2Last Post: 09-14-2009, 05:06 PM -
need help with math for a new program
By gotenks05 in forum New To JavaReplies: 13Last Post: 09-26-2008, 08:32 AM -
Math.Random
By Java Tip in forum Java TipReplies: 0Last Post: 11-23-2007, 03:09 PM -
Help with math in java
By fernando in forum New To JavaReplies: 1Last Post: 08-06-2007, 07:05 AM -
Date math
By orchid in forum New To JavaReplies: 2Last Post: 04-18-2007, 08:01 AM
Bookmarks