Solutions for Class 10 ICSE Logix Kips Computer Applications with BlueJ Java | IT Developer <?php echo $page_title; ?>
IT Developer

Operators in Java

Chapter 4

Operators in Java

Class 10 - Logix Kips ICSE Computer Applications with BlueJ


Share with a Friend

Assignment Questions


Question 1

We have two variables x and y. Write Java statements to calculate the result of division of y by x and calculate the remainder of the division.

Answer

int quotient = y / x;int remainder = y % x;

Question 2

Assign the value of pi (i.e., 3.142) to a variable with requisite data type.

Answer

float pi = 3.142f;

Question 3

What are logical operators? Give an example of each.

Answer

Logical operators operate only on boolean operands and are used to construct complex decision-making expressions. Some of the logical operators are given below:

Operator Symbol
Logical AND

&&

Logical OR

||

Logical NOT

!

Question 4

What is an assignment operator? Give an example.

Answer

Assignment operator is used to assign the value of an expression to a variable. It has the following syntax:

variable = expression;

For example,

totalMarks = 780;

The above statement assigns the value of 780 to the variable totalMarks. Any previous value stored in totalMarks variable is overwritten by this new value.

Question 5

Explain the shorthand assignment operator with an example.

Answer

Java provides shorthand assignment operators for all the arithmetic binary operators. Shorthand assignment operators follow the below syntax:

variable = variable operation expression;

Taking the example of shorthand addition operator, the expression x = x + 3 can be rewritten as x += 3;

Question 6

What is the purpose of the new operator?

Answer

The new operator is used to allocate memory for the object.

Question 7

What is the use and syntax of a ternary operator?

Answer

Ternary operator is used to check if a condition is true and false. Depending on whether the condition tests true or false, expression 1 or expression 2 is evaluated. Its syntax is:

boolean-expression ? expression1 : expression2;

Question 8

State the difference between = and ==.

Answer

= ==

It is the assignment operator used for assigning a value to a variable.

It is the equality operator used to check if a variable is equal to another variable or literal.

E.g. int a = 10; assigns 10 to variable a.

E.g. if (a == 10) checks if variable a is equal to 10 or not.

Question 9

If a = 5, b = 9, calculate the value of:
    a += a++ - ++b + a

Answer

    a += a++ - ++b + a
⇒ a = a + (a++ - ++b + a)
⇒ a = 5 + (5 - 10 + 6)
⇒ a = 5 + 1
⇒ a = 6

a++ first uses the current value of a (which is 5) in the expression and then increments it to 6. ++b first increment the current value of b to 10 and uses this incremented value in the expression.

Question 10

Distinguish between the following:

a. Prefix and Postfix Increment

Answer

Prefix Increment Postfix Increment

It works on the principle of first increment, then use.

It works on the principle of first use, then increment.

It (++) is written before the operand.

It (++) is written after the operand.

Example:
int a = 99;
int b = ++a;
After the execution of these two statements, both a and b will have the value of 100.

Example:
int a = 99;
int b = a++;
After the execution of these two statements, a will have the value of 100 and b will have the value of 99.

b. Prefix and Postfix Decrement

Answer

Prefix Decrement Postfix Decrement

It works on the principle of first decrement, then use.

It works on the principle of first use, then decrement.

It (--) is written before the operand.

It (--) is written after the operand.

Example:
int a = 100;
int b = --a;
After the execution of these two statements, both a and b will have the value of 99.

Example:
int a = 100;
int b = a--;
After the execution of these two statements, a will have the value of 99 and b will have the value of 100.

c. Unary and Binary Operators

Answer

Unary Operators Binary Operators

It operates on a single operand

It operates on two operands

Increment (++) and Decrement (--) operators are examples of Unary Arithmetic Operators

Multiplication (*) and Division (/) are examples of Binary Arithmetic Operators

d. Increment and Decrement Operator

Answer

Increment Operator Decrement Operator

Increment operators increment the value of their operand by 1.

Decrement operators decrement the value of their operand by 1.

Increment operators are represented by ++ symbol.

Decrement operators are represented by -- symbol.

e. / and % operator

Answer

/ %

It is the Division operator

It is the Modulus operator

Returns the quotient of division operation

Returns the remainder of division operation

Example: int a = 5 / 2;
Here a will get the value of 2 which is the quotient of this division operation

Example: int b = 5 % 2;
Here b will get the value of 1 which is the remainder of this division operation

Question 11

If m=5, n=2; what will be the output of m and n after execution?
i. m -= n       ii. n = m + m/n

Answer

i. m -= n
⇒ m = m - n
⇒ m = 5 - 2
⇒ m = 3

 

ii. n = m + m/n
⇒ n = 5 + 5/2
⇒ n = 5 + 2
⇒ n = 7

Question 12

If x = 3, y = 7, calculate the value of:
x -= x++ - ++y

Answer

    x -= x++ - ++y
⇒ x = x - (x++ - ++y)
⇒ x = 3 - (3 - 8)
⇒ x = 3 - (-5)
⇒ x = 3 + 5
⇒ x = 8

Question 13

What will be the output of the following if x=5?
i. 5 * ++x
ii. 5 * x++

Answer

i. 5 * ++x
⇒ 5 * 6
⇒ 30

 

ii. 5 * x++
⇒ 5 * 5
⇒ 25

Question 14

What is type conversion? How is an implicit type conversion different from explicit type conversion?

Answer

Type conversion is a process that converts a value of one data type to another data type.

In an implicit conversion, the result of a mixed mode expression is obtained in the higher most data type of the variables without any intervention by the user. For example:

int a = 10;

float b = 25.5f, c;

c = a + b;

 

In case of explicit type conversion, the data gets converted to a type as specified by the programmer. For example:

 

int a = 10;

double b = 25.5;

float c = (float)(a + b);

Question 15

What do you understand by type conversion?

Answer

Type conversion is a process that converts a value of one data type to another data type.

Question 16

Explain the term 'typecasting'.

Answer

The process of converting a value of one data type to another data type is called typecasting.

Question 17

What are precedence and associativity?

Answer

Precedence of operators refers to the order in which the operators are applied to the operands in an expression.
Associativity of operators refers to the direction of execution of operators ("Left to Right" or "Right to Left") when operators in an expression have the same precedence.

Question 18

Evaluate the following expressions, if the values of the variables are a = 2, b = 3 and c = 3

i. a - (b++) * (--c)

ii. a * (++b) %c

Answer

i. a - (b++) * (--c)
⇒ 2 - 3 * 2
⇒ 2 - 6
⇒ -4

ii. a * (++b) %c
⇒ 2 * 4 % 3
⇒ 8 % 3
⇒ 2

Question 19

Write the Java expressions for the following:

i. (a + b)2+ b

Answer

Math.pow(a+b, 2) + b

 

ii. a2+ b2

Answer

a * a + b * b

 

iii. z = x3 + y3 + (xy) / 3

Answer

z = Math.pow(x, 3) + Math.pow(y, 3) + x * y / 3

 

iv. f = a2+ b2/ a2 - b2

Answer

f = (a * a + b * b) / (a * a - b * b)

 

v. z = ab + bc + ca / 3abc

Answer

z = (a * b + b * c + c * a) / (3 * a * b * c)

 

vi. 0 <= x <= 50

Answer

x >= 0 && x <= 50

 

vii. a = (0.05 - 2y3) / x - y

Answer

a = (0.05 - 2 * y * y * y) / (x - y)

 

viii. (a + b)n / √3 + b

Answer

Math.pow(a+b, n) / (Math.sqrt(3) + b)

 

ix. ax+ by/ ∛x + ∛y

Answer

(Math.pow(a, x) + Math.pow(b, y)) / (Math.cbrt(x) + Math.cbrt(y))

Question 20

Rewrite the following statements without using shorthand operators.

a. p /= q
b. p -= 1
c. p *= q + r
d. p -= q - r

Answer

a. p = p / q
b. p = p - 1
c. p = p * (q + r)
d. p = p - (q - r)

Question 21

Determine the output of the following program.

public class Test

  {

      public static void main(String[] args)

        {

              int a = 1, b = 2;

              System.out.println("Output1: " + a + b);

              System.out.println("Output2: " + (a + b));

        }

  }

Output

Output1: 12

Output2: 3

Explanation

In the first println statement, the expression is "Output1: " + a + b. First "Output1: " + a is evaluated. As one operand of addition operator is string and other is int so int is casted to string and concatenated giving the result as "Output1: 1". After that, "Output1: 1" + 2 is evaluated and similarly the result is Output1: 12.


In second println statement, the expression is "Output2: " + (a + b). Due to brackets, (a + b) is evaluated first. As both operands are integers so they are added giving the result as 3. After that, "Output2: " + 3 is evaluated, resulting in "Output2: 3".

Question 22

What is the difference between the following two statements in terms of execution? Explain the results.
x -= 5;
x =- 5;

Answer

The first statement, x -= 5; subtracts 5 from x and assigns the result back to x. It is equivalent to x = x - 5;
The second statement, x =- 5; assigns the value of -5 to x.

Question 23

What is concatenation? On which data type is concatenation performed?

Answer

Concatenation means joining two strings together. It is performed on String data type.

Question 24

Determine the output of the following program.

public class PredictOutput1

  {

       public static void main(String args[])

         {

              int a = 4, b = 2, c = 3;

              System.out.println("Output 1: " + (a = b * c));

              System.out.println("Output 2: " + (a = (b * c)));

          }

 }

Output

Output 1: 6

Output 2: 6

Explanation

In the first println statement, the expression is (a = b * c). * has higher precedence than = so first b and c are multiplied and after that the result is assigned to a. Assignment operator returns the value of the assignment so the result of this (a = b * c) entire expression is 6.
In the second println statement, the expression is (a = (b * c)). Putting b * c in brackets causes b * c to be evaluated first but the result is same as the first println statement as * has higher precedence than =.

Question 25

Determine the output of the following program.

public class PredictOutput2

  {

      public static void main(String args[])

        {

             int a = 6, b = 2, c = 3;

             System.out.println("Output 1: " + (a == b * c));

             System.out.println("Output 2: " + (a == (b * c)));

         }

   }

Output

Output 1: true

Output 2: true

Explanation

b * c results in 6 which is equal to the value of a so true is printed in both the cases.

Question 26

Determine the output of the following program.

public class PredictOutput3

  {

     public static void main(String args[])

      {

          int a = 2, b = 2, c = 2;

          System.out.println("Output 1: " + (a + 2 < b * c));

          System.out.println("Output 2: " + (a + 2 < (b * c)));

      }

  }

Output

Output 1: false

Output 2: false

Explanation

In the first println statement, the expression is (a + 2 < b * c). b * c is evaluated first as * has higher precedence than + and <. After that a + 2 is evaluated as between + and <, + has higher precedence. Comparison is done in the end. As 4 < 4 is false so false is printed. The case of second println statement is similar.