Я уже задал этот вопрос. Но сделали огромное редактирование. И хотел бы попросить помощи в исправлении моих шагов, так как код java не компилируется.сделать код Java, который печатает корни квадратного уравнения
написать метод printRoots, который задает 3 члена в качестве входных данных, представляющих a, b и c в этом порядке, печатает их корни.
Мы имеем следующую данную информацию
** Если b²-4ac положительного число, ваша программа должна печатать «Эти два корня X и Y», где X является большим корнем и Y является меньший корень
Если b²-4ac равен 0, программа должна напечатать. «Уравнение имеет один X», где Х представляет собой только корневой
Если b²-4ac является отрицательным числом, то программа должна печатать «. Уравнение имеет два корня (-x1 + y1i) и (-x2 и Y2i) * *
термин может быть определена на основе:
Если Ь^2 - 4ac является отрицательным числом, то квадратное уравнение принимает вид: (-b +/- √C)/2a Это означает, что уравнение можно упростить, чтобы стать (-b +/- √Ci)/2a, где квадратный корень не является положительным числом. Рассчитайте коэффициент и печати, (т.е. X1 является -b/2a и Y1 является SQRT (-C)/2i)
Примечание: Не разрешается использовать сканеры для этого вопроса
Можно ли для кого-то, чтобы рассмотреть мой и скажите мне, где я поступил не так, и просто удалю свои сканеры, чтобы сделать его программой без сканеров? Как я могу ввести a, b, c, тогда?
Обратите внимание: вы не должны использовать сканер внутри этого метода. Чтобы протестировать ваш метод, вы можете использовать SCanner в основном методе или вы можете жестко ввести значения кода в свой код из основного метода, а затем вызвать метод printRoots с этими входами или выводами.
import java.util.Scanner;//delete this part after
public class findingRoots {
public static void main(String[] args)
{
}
public static double printRoots(){ //should it be double here or int?
//read in the coefficients a,b,and c
Scanner reader = new Scanner(System.in);
System.out.println("Enter the value of a");
int a=reader.nextInt();
System.out.println("Enter the value of b");
int b=reader.nextInt();
System.out.println("Enter the value of c");
int c=reader.nextInt();
//now compte the discrimintat d
double discriminant = (Math.pow(b, 2.0)) - (4 * a * c);
d=Math.sqrt(discriminant);
double X,Y; //root 1 & root 2, respectively
// is the step double X,Y necessary?
double d = (b*b)-(4.0*a*c);
if (discriminant > 0.0){
X = (-b + d)/(2.0 * a); //X= root 1, which is larger
**//do i put int or double in front of X?**
Y = (-b - d)/(2.0 *a); //Y= root 2, which is the smaller root
String root1 = Double.toString(X)
String root2 = Double.toString(Y)
System.out.println("The two roots are X and Y:" + root1 + "and" + root2);
}
else{
if (discriminant==0.0)
X = (-b + 0.0)/(2.0 * a);//repeated root
String root2 = Double.toString(X)
System.out.println("The equation has one root X:" + root1);//where X is the only root
}
if(discriminant < 0.0){
X1 = -b/(2*a);
Y1 = (Math.sqrt(-C))/(2*a);
X2 = -b/(2*a);
Y2 = (-(Math.sqrt(-C)))/(2*a);
String root1 = Double.toString(X1)
String root2 = Double.toString(Y1)
String root3 = Double.toString(X2)
String root4 = Double.toString(Y2)
System.out.println("The equation has two roots:" + (root1 + (root2)"i") "and" + (root3 + (root4)"i");
// where i represents the square root of negative 1
}
}
}
Возможно, '**' в передней части строки является проблемой компиляции. Но еще лучше, вы можете сказать нам, какие ошибки вы получаете. Мы можем помочь вам понять эти сообщения. –
Возможно, вы захотите перейти на http://codereview.stackexchange.com/ – OldProgrammer
На самом деле это не связано с Javascript? –