Я пытаюсь сделать программу, которая усредняет два числа.
public class Average
{
private double one, two, average;
public void setNums(double num1, double num2)
{
one=num1;
two=num2;
}
public void average( )
{
average = (one + two) / 2;
}
public void print()
{
System.out.print( one+" + "+two +"has an average of ");
System.out.printf("%.2d\n",average);
}
}
Вылезает вот такая ошибка, думаю из-за форматирования.
Исключение в основном потоке java.util.IllegalFormatPrecisionException: 2 в java.base/java.util.Formatter$FormatSpecifier.checkInteger(Formatter.java:3138) в java.base/java.util.Formatter$FormatSpecifier.(Formatter.java: 2874) в java.base/java.util.Formatter.parse(Formatter.java:2713) в java.base/java.util.Formatter.format(Formatter.java:2655) в java.base/java.io.PrintStream .format(PrintStream.java:1209) в java.base/java.io.PrintStream.printf(PrintStream.java:1105) в Average.print(Average.java:26) в AverageRunner.main(AverageRunner.java:17) ----jGRASP клин2: код выхода для процесса равен 1. ----jGRASP: операция завершена.
Помогите пожалуйста.
Кроме того, он отлично компилируется, но внутри основного метода он не запускается.