my program lets a user compute two numbers then performs a simple calculation based on operator inputted by the user. so my source code is:
System.out.print("Enter First Number: ");
int num1 = scanNum.nextInt();
System.out.print("Enter Second Number: ");
int num2 = scanNum.nextInt();
System.out.print("Enter Operator (+, -, * or /): ");
char opt = scanOpt.next().charAt(0);
scanNum.close();
scanOpt.close();
switch (opt)
{
case '+':
float result = num1 + num2;
System.out.println(num1 + " " + opt + " " + num2 + " = " +result);
break;
case '-':
result = num1 - num2;
System.out.println(num1 + " " + opt + " " + num2 + " = " +result);
break;
case '*':
result = num1 * num2;
System.out.println(num1 + " " + opt + " " + num2 + " = " +result);
break;
case '/':
result = num1 / num2;
System.out.println(num1 + " " + opt + " " + num2 + " = " +result);
break;
default:
System.out.println("Invalid Operator!");
break;
it works well but whenever it divides two numbers like for example " 6.0 / 4.0 " the tenth decimal doesn't appear. the correct output should be:
Enter First Number: 6
Enter Second Number: 4
Enter Operator (+, -, * or /): /
6 / 4 = 1.5
but using my own source code the output is:
Enter First Number: 6
Enter Second Number: 4
Enter Operator (+, -, * or /): /
6 / 4 = 1.0