How do I change my output to 1 decimal place?
I need a bit of help setting one of my programmes outputs to only the 1 decimal place each time the doubleResult displays it's result it is to like 12 decimal places or something like that. How do I set it so that it only displays as 3.2? Below is my programme code.
import java.util.Scanner;
public class Casting {
public static void main(String[] orcs) {
double number1 = 0;
double number2 = 0;
int integerResult;
double doubleResult;
Scanner scan = new Scanner(System.in);
System.out.print("Enter number 1: ");
number1 = scan.nextDouble();
int i1 = (int) number1;
int i2 = (int) number2;
System.out.print("Enter number 2: ");
number2 = scan.nextDouble();
System.out.println("integerResult:" + i2 / i1);
System.out.println("doubleResult" + number2 / number1);
}
}
Re: How do I change my output to 1 decimal place?
Code :
DecimalFormat df = new DecimalFormat("#.#");
df.format(value[0]);
Re: How do I change my output to 1 decimal place?
Sorry to be a pain but where about in the code do I put it or does that not matter?
Re: How do I change my output to 1 decimal place?
Code :
import java.util.Scanner;
public class Casting {
public static void main(String[] orcs) {
DecimalFormat df = new DecimalFormat("#.#");
double number1 = 0;
double number2 = 0;
int integerResult;
double doubleResult;
Scanner scan = new Scanner(System.in);
System.out.print("Enter number 1: ");
number1 = scan.nextDouble();
int i1 = (int) number1;
int i2 = (int) number2;
System.out.print("Enter number 2: ");
number2 = scan.nextDouble();
System.out.println("integerResult: " + i2 / i1);
double finalValue = number2 / number 1;
System.out.println("doubleResult: " + df.format(finalValue));
}
}
Just copy and paste this to replace your code..
Re: How do I change my output to 1 decimal place?
Everything is fine from that piece of code you gave me apart from one line of code.....
double finalValue = number2 / number 1;
There is an error here and the programme wont run.
Re: How do I change my output to 1 decimal place?
That's because when you initialize a double its got to be 0.0 not 0....
Code :
double number1 = 0;
double number2 = 0;
CORRECT:
double number1 = 0.0;
double number2 = 0.0;
Re: How do I change my output to 1 decimal place?
Yeah I tried doing that but it still has a problem with that line of code. I don't get why?
Re: How do I change my output to 1 decimal place?
What's the problem exactly please?
Re: How do I change my output to 1 decimal place?
The line of code redlines and displays the message
';' expected
cannot find symbol
symbol: variable number
location: class assignment1.Casting
Re: How do I change my output to 1 decimal place?
oh wait..
Code :
double finalValue = number2 / number1;
Sorry no space is to be put inbetween number & 1 .....
replace old line with this 1 ive posted..
Re: How do I change my output to 1 decimal place?
Ahhh thank you that works! However, my integerResult is now displaying 0 and no answer.
Re: How do I change my output to 1 decimal place?
Try this:
Code :
import java.text.DecimalFormat;
import java.util.Scanner;
public class Casting {
public static void main(String[] orcs) {
DecimalFormat df = new DecimalFormat("#.#");
double number1 = 0;
double number2 = 0;
int integerResult;
double doubleResult;
Scanner scan = new Scanner(System.in);
System.out.print("Enter number 1: ");
number1 = scan.nextDouble();
System.out.print("Enter number 2: ");
number2 = scan.nextDouble();
int i1 = (int) number1;
int i2 = (int) number2;
System.out.println("integerResult: " + i1 / i2);
double finalValue = number2 / number1;
System.out.println("doubleResult: " + df.format(finalValue));
}
}
You were trying to print out in an opposite direction.
Re: How do I change my output to 1 decimal place?
Nope that does the same as before hmmm. Just incase this helps when I enter number 1 and number 2 I input the following:
Enter number 1: 5.2
Enter number 2: 16.8093
Then this is the output displayed:
integerResult: 0
doubleResult: 3.2
The integerResult needs to be 3. This work has to be submitted in 40 minutes too. Just can't get my head around this.
Re: How do I change my output to 1 decimal place?
Code :
import java.text.DecimalFormat;
import java.util.Scanner;
public class Casting {
public static void main(String[] orcs) {
DecimalFormat df = new DecimalFormat("#.#");
DecimalFormat df2 = new DecimalFormat("#");
double number1 = 0;
double number2 = 0;
int integerResult;
double doubleResult;
Scanner scan = new Scanner(System.in);
System.out.print("Enter number 1: ");
number1 = scan.nextDouble();
double number4 = number1;
System.out.print("Enter number 2: ");
number2 = scan.nextDouble();
double number3 = number2;
df2.format(number3);
df2.format(number4);
double resulti = number3 / number4;
System.out.println("integerResult: " + df2.format(resulti));
double finalValue = number2 / number1;
System.out.println("doubleResult: " + df.format(finalValue));
}
}
try that.. my results were:
Code :
Enter number 1: 5.2
Enter number 2: 16.6
integerResult: 3
doubleResult: 3.2
Re: How do I change my output to 1 decimal place?
Yess! It works thank you so much!
Re: How do I change my output to 1 decimal place?
press the thanks button under my post =P will feel much at home watching it add up hehe.. Plus this is 1 problem i beat kevin to :$
Re: How do I change my output to 1 decimal place?
Thanks mate :P Have fun at school