Draggable Trigonometry Identity

A draggable proof to prove a trigonmetric identity.

Complete Code

Download file: DraggableIdentity.pg

POD for Macro Files

PG problem file

Explanation

DOCUMENT();

loadMacros('PGstandard.pl', 'PGML.pl', 'draggableProof.pl', 'PGcourse.pl');

Preamble

This problem uses the PODLINK(’draggableProof.pl`) macro to display “buckets” that the student can drag statements to and from.

$proof = DraggableProof(
    # These are the correct statements of the proof in the correct order.
    [
        '\(\sin(\pi - \theta) = \sin(\pi)\cos(\theta) - \cos(\pi)\sin(\theta)\)',
        '\(\sin(\pi - \theta) = (0)\cos(\theta) - (-1)\sin(\theta)\)',
        '\(\sin(\pi - \theta) = 0 + (1)\sin(\theta)\)',
        '\(\sin(\pi - \theta) = \sin(\theta)\)',
    ],
    # These are extra statements that are not needed.
    [
        '\(\sin(\pi - \theta) = \cos(\pi)\cos(\theta) - \sin(\pi)\sin(\theta)\)',
        '\(\sin(\pi - \theta) = \sin(\pi)\cos(\theta) + \cos(\pi)\sin(\theta)\)',
        '\(\sin(\pi - \theta) = (1)\cos(\theta) + (0)\sin(\theta)\)',
    ]
);

Setup

The DraggableProof function takes a reference to an array of correct statements, followed (optionally) by a reference to an array of extra statements. See draggableProof.pl for more details.

This shows how other identities could be structured. You probably want some incorrect statements to make the problem a little bit harder.

BEGIN_PGML
Prove the trigonmetric identity [`\sin(\pi-\theta) = \sin(\theta)`].

[_]{$proof}
END_PGML

Statement

The line [_]{$proof} inserts the drag and drop “buckets” containing the proof statements that are to be selected and ordered.

BEGIN_PGML_SOLUTION
Solution explanation goes here.
END_PGML_SOLUTION

ENDDOCUMENT();

Solution

A solution should be provided here.