A JavaScript web page for practicing this skill.
Updated

Remember, what you get out of this is only as good as what you put in. Just looking at problems and answers is a waste of time. So get out your pencil and paper (and an eraser) and let's factor some quadratics!!

 MAX MIN J, the coefficient of X in each factor, is > 0 and at or between these limits. K, the constant in each factor, is at or between these limits. Allow K = 0, but only if the limits for K above include zero. To avoid an infinite loop, this box will be auto-checked if the max & min for K are both zero.

 2X2 + 7X + 3 = 0 (2X + 1) (X + 3)

This page implements a JavaScript that generates practice quadratics with factors of the form (Jx + K) chosen at random. The first problem is already shown with its solution. Click the "New Quadratic" button above to have the page automatically generate a random quadratic factoring problem. When you have solved the problem yourself (or have given up) click the "Show Factors" button to see the solution.

All of these problems will have factors of the form (JX + K) where J and K are integers and have the maximum and minimum limits as you set in the boxes. K can be zero only if its limits include zero AND you check the "Allow K = 0" check box.

For the default values, I have adopted the convention that J, the coefficient of X in the factors, has a minimum value of 1. Therefore A, the coefficient of X2, is always positive. This in no way negates the value of the practice, because if A were negative, you could simply multiply both sides of the equation by -1 and produce an equivalent problem with A positive, and with identical roots.

Thanks to Margaret Fennell for reviewing the accuracy of the page and for pointing out the need to make sure the factors shown are prime. This is done by using Euclid's algorithm to find the GCD of J and K in each factor, dividing J and K by this, and prefixing the (Jx + K) factors with the product of the common factors found for them.

This page has been tested with recent Mac OSX versions of Safari, Internet Explorer, and Netscape, as well as Internet Explorer for Windows. If you find any errors in this page, please . Be sure to include the URL of the page, the Quadratic that had a problem, your Operating System (OSX, Windows, Linux), the name of the browser (Safari, Netscape, Internet Explorer) and the version number of the browser.

The random function used here is the JavaScript "Math.random()" function. This function is good enough for generating random functions for games and tutorials, but should NEVER, EVER be used for cryptographic or math research applications, because it is not sufficiently random.

For those purposes, your computer's OS contains an "Entropy Cache" which is kept up to date, and which should be used as the seed for a cryptographically secure Pseudo Random Number Generator (PRNG).