Факториальный трином / полином
Поэтому я хочу создать программу, которая печатает факторизованное квадратное уравнение, когда пользователь вводит значение c и a = 1,. Программа должна определить все возможные целочисленные значения b, чтобы триномиал выводился в виде x^2 + bx + c
Примером может быть, если пользователь ввел -4 для c, программа должна распечатать:
х ^2 - 4
х ^2 - 3х - 4
Пока это то, что я сделал со своим кодом, я пытаюсь выяснить, как выполнить программу, но у меня действительно возникают проблемы с тем, куда идти дальше. Если кто-то может предложить некоторую помощь, это будет высоко ценится!
public class FactorableTrinomials
{
public static void main (String [] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("A trinomial in standard form is ax^2 + bx +
c. \nIf a = 1, this program will output all factorable trinomials
given the entered c value.");
System.out.print("\nEnter an integer “c” value: ");
int numC = scan.nextInt();
final int NUMA= 1;
int numB;
if (numC > 0)
{
int factors;
System.out.print("\nThe factors of " + numC + " are: ");
for(factors = 1; factors <= numC; factors++) //determines
factors and how many there are
{
if(numC % factors == 0)
{
System.out.print(factors + " ");
}
}
1 ответ
Сначала найдите пары целых чисел, которые умножаются на c. все возможные значения b будут тогда суммой пары целых чисел.
Простой способ найти пары целых чисел состоит в том, чтобы зациклить 2 переменные от -c до c и проверить, является ли произведение c. например:
for(int i = -1 * numC; i <= numC; i++) {
for(int j = -1* numC; j<= numC;j++) {
if(i * j == numC) {
int b = i + j;
//print solution, if b == 0 then don't print the second term
}
}
}