Subtitle altered
parent
e7c7e49a4b
commit
0d7f742f24
|
@ -24,20 +24,24 @@ handle query_lc => sub {
|
|||
my %polygons = ("pentagon" => 5, "hexagon" => 6, "octagon" => 8);
|
||||
my $shape = $1 ? "circle" : $3 || $5 || $8;
|
||||
|
||||
my $subtitle = "Perimeter";
|
||||
my $subtitle = "Perimeter of $shape with sides of ";
|
||||
my $answer;
|
||||
|
||||
if ($shape eq "square") {
|
||||
$subtitle .= $4;
|
||||
$answer = $4 * 4;
|
||||
} elsif ($shape eq "rectangle") {
|
||||
$subtitle .= "$6 and $7";
|
||||
$answer = ($6 * 2) + ($7 * 2)
|
||||
} elsif ($shape eq "triangle") {
|
||||
$subtitle .= "$9, $10 and $11";
|
||||
$answer = $9 + $10 + $11;
|
||||
} elsif ($shape eq "circle") {
|
||||
$subtitle = "Circumference";
|
||||
$subtitle = "Circumference of circle with radius of ".($1 || $4);
|
||||
$answer = (2 * 3.14159265358979323846) * ($1 || $4);
|
||||
} else {
|
||||
if (substr $shape, index($shape, "agon") eq "agon") {
|
||||
$subtitle .= $4;
|
||||
$answer = $4 * $polygons{$shape};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,15 +9,14 @@ zci answer_type => 'perimeter';
|
|||
zci is_cached => 1;
|
||||
|
||||
sub build_answer {
|
||||
my ($answer, $shape) = @_;
|
||||
$shape = '' unless $shape;
|
||||
my ($answer, $shape, $input) = @_;
|
||||
|
||||
return $answer, structured_answer => {
|
||||
id => 'perimeter',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $answer,
|
||||
subtitle => ($shape eq 'circle') ? 'Circumference' : 'Perimeter'
|
||||
subtitle => ($shape eq 'circle') ? "Circumference of $shape with radius of $input" : "Perimeter of $shape with sides of $input"
|
||||
},
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -30,32 +29,32 @@ ddg_goodie_test(
|
|||
[qw(
|
||||
DDG::Goodie::Perimeter
|
||||
)],
|
||||
'circumference circle 1' => test_zci(build_answer(6.28318530717959, 'circle')),
|
||||
'perimeter hexagon 45' => test_zci(build_answer(270)),
|
||||
'perimeter of triangle 1.5 2 3.2' => test_zci(build_answer(6.7)),
|
||||
"perimeter square 1" => test_zci(build_answer(4)),
|
||||
"perimeter square 1.5" => test_zci(build_answer(6)),
|
||||
"perimeter of square 1" => test_zci(build_answer(4)),
|
||||
"perimeter rectangle 1 2" => test_zci(build_answer(6)),
|
||||
"perimeter rectangle 1.5 2" => test_zci(build_answer(7)),
|
||||
"perimeter of rectangle 1 2" => test_zci(build_answer(6)),
|
||||
"perimeter triangle 1 2 3" => test_zci(build_answer(6)),
|
||||
"perimeter of triangle 1 2 3" => test_zci(build_answer(6)),
|
||||
"perimeter pentagon 1" => test_zci(build_answer(5)),
|
||||
"perimeter pentagon 1.5" => test_zci(build_answer(7.5)),
|
||||
"perimeter of pentagon 1" => test_zci(build_answer(5)),
|
||||
"perimeter hexagon 1" => test_zci(build_answer(6)),
|
||||
"perimeter hexagon 1.5" => test_zci(build_answer(9)),
|
||||
"perimeter of hexagon 1" => test_zci(build_answer(6)),
|
||||
"perimeter octagon 1" => test_zci(build_answer(8)),
|
||||
"perimeter octagon 1.5" => test_zci(build_answer(12)),
|
||||
"perimeter of octagon 1" => test_zci(build_answer(8)),
|
||||
"perimeter circle 1.5" => test_zci(build_answer(9.42477796076938, 'circle')),
|
||||
"perimeter of circle 1" => test_zci(build_answer(6.28318530717959, 'circle')),
|
||||
"circumference 1" => test_zci(build_answer(6.28318530717959, 'circle')),
|
||||
"circumference 1.5" => test_zci(build_answer(9.42477796076938, 'circle')),
|
||||
"circumference of circle 1" => test_zci(build_answer(6.28318530717959, 'circle')),
|
||||
'perimeter of square 3' => test_zci(build_answer(12)),
|
||||
'circumference circle 1' => test_zci(build_answer(6.28318530717959, 'circle', 1)),
|
||||
'perimeter hexagon 45' => test_zci(build_answer(270, 'hexagon', 45)),
|
||||
'perimeter of triangle 1.5 2 3.2' => test_zci(build_answer(6.7, 'triangle', '1.5, 2 and 3.2')),
|
||||
"perimeter square 1" => test_zci(build_answer(4, 'square', 1)),
|
||||
"perimeter square 1.5" => test_zci(build_answer(6, 'square', 1.5)),
|
||||
"perimeter of square 1" => test_zci(build_answer(4, 'square', 1)),
|
||||
"perimeter rectangle 1 2" => test_zci(build_answer(6, 'rectangle', '1 and 2')),
|
||||
"perimeter rectangle 1.5 2" => test_zci(build_answer(7, 'rectangle', '1.5 and 2')),
|
||||
"perimeter of rectangle 1 2" => test_zci(build_answer(6, 'rectangle', '1 and 2')),
|
||||
"perimeter triangle 1 2 3" => test_zci(build_answer(6, 'triangle', '1, 2 and 3')),
|
||||
"perimeter of triangle 1 2 3" => test_zci(build_answer(6, 'triangle', '1, 2 and 3')),
|
||||
"perimeter pentagon 1" => test_zci(build_answer(5, 'pentagon', 1)),
|
||||
"perimeter pentagon 1.5" => test_zci(build_answer(7.5, 'pentagon', 1.5)),
|
||||
"perimeter of pentagon 1" => test_zci(build_answer(5, 'pentagon', 1)),
|
||||
"perimeter hexagon 1" => test_zci(build_answer(6, 'hexagon', 1)),
|
||||
"perimeter hexagon 1.5" => test_zci(build_answer(9, 'hexagon', 1.5)),
|
||||
"perimeter of hexagon 1" => test_zci(build_answer(6, 'hexagon', 1)),
|
||||
"perimeter octagon 1" => test_zci(build_answer(8, 'octagon', 1)),
|
||||
"perimeter octagon 1.5" => test_zci(build_answer(12, 'octagon', 1.5)),
|
||||
"perimeter of octagon 1" => test_zci(build_answer(8, 'octagon', 1)),
|
||||
"perimeter circle 1.5" => test_zci(build_answer(9.42477796076938, 'circle', 1.5)),
|
||||
"perimeter of circle 1" => test_zci(build_answer(6.28318530717959, 'circle', 1)),
|
||||
"circumference 1" => test_zci(build_answer(6.28318530717959, 'circle', 1)),
|
||||
"circumference 1.5" => test_zci(build_answer(9.42477796076938, 'circle', 1.5)),
|
||||
"circumference of circle 1" => test_zci(build_answer(6.28318530717959, 'circle', 1)),
|
||||
'perimeter of square 3' => test_zci(build_answer(12, 'square', 3)),
|
||||
);
|
||||
|
||||
done_testing;
|
||||
|
|
Loading…
Reference in New Issue