#!/usr/bin/perl
###########################################
# race - Fox chasing a Rabbit
# Mike Schilli, 2004 (m@perlmeister.com)
###########################################
use warnings;
use strict;

use Math::Algebra::Symbols;

my ($t) = symbols(qw(t));

my $rabbit = 10 + 5 * $t;
my $fox    =      7 / 2 * $t * $t;

my $schnapp = ($rabbit - $fox);

for my $solution 
    (@{$schnapp->solve("t")}) {
    print "Solution: $solution\n";
    my $val = eval $solution;
    if($val < 0) {
        print "Discarded\n";
        next;
    } else {
        printf "%.2f seconds\n", $val;
        $t = $val;
        printf "%.2f meters\n", eval $fox;
    }
}
