# Calculation in c++

• C/++/#

## Main Question or Discussion Point

I am doing my homework regarding calculation in c++.
I am confused by the below question.
Int A=2 B=3 C=4
B-C && (B-A) /C
I think the answer is 0 because the first part is negative.
But,my friends say the answer is 1 because -1 not mean false.
Thanks.

Related Programming and Computer Science News on Phys.org
Borek
Mentor
Your friend is right - -1 doesn't mean false. 0 and only 0 means false.

• 1 person
CompuChip
Homework Helper
You and your friend are both incorrect. You could easily check this by running it through a C++ compiler.

In C++, there is implicit conversion from ints to bools. && has pretty low precedence, so first the following expressions are evaluated: B - C is 3 - 4 = -1, and (B - A) / C is 1 / 4 = 0 (in integer division).
So the resulting expression is -1 && 0 which is equivalent to true && false, hence the result you get is false (0).

Last edited:
• 1 person
Borek
Mentor
Ah, I referred just to the small part of the post, I have not actually bothered to evaluate whole expression :shy: