Abstract: A method and system for generating and formatting information, specifically test questions, in a desirable and predetermined manner. The system has dynamic-content and dynamic-presentation capabilities so that a wide variety of test problems and, ultimately, tests which consist of test problems can be created. The system includes a data processor such as a personal computer having a means for storing at least one computer program and a means for printing indicia such as a laser printer. The software component of the system includes an authoring tool which is used to create generalized expressions of a problem. A variation rules module or engine stores the variations rules which are a language for describing how to create varying questions from the generalized expression or definition of and a problem created in the authoring tool. Then another component of the software, the print engine interprets the variation rules and produces screen displays or printed tests.