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 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 \cdot \cos(\theta) - (-1)\cdot \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) = 0\cdot\cos(\theta)-(-1)\sin(\theta) \)',
        '\(\sin(\pi-\theta) = \sin(\pi)\cos(\theta)+\cos(\pi)\sin(\theta) \)',
        '\(\sin(\pi-\theta) = 0\cdot\cos(\theta)+1 \cdot\sin(\theta) \)',
        '\(\sin(\pi-\theta) = 1\cdot\cos(\theta)+0 \cdot\sin(\theta) \)',
    ]
);

Setup

The DraggableProof function takes an arrayref of correct statements, followed (optionally) by extra statements. See the Draggable Proof POD for more options.

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} prints the statement and options in the proof and sets up the answer rule.

BEGIN_PGML_SOLUTION
Solution explanation goes here.
END_PGML_SOLUTION

ENDDOCUMENT();

Solution

A solution should be provided here.