Факториальный трином / полином

Поэтому я хочу создать программу, которая печатает факторизованное квадратное уравнение, когда пользователь вводит значение 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
        }
    }
}
Другие вопросы по тегам