Returning Yes/No, and minor (sub)title formatting.

master
mhunsinger 2016-06-14 04:57:47 +00:00
parent 4155fcab61
commit b1874b8f23
2 changed files with 14 additions and 14 deletions

View File

@ -26,7 +26,7 @@ sub answer {
};
}
my $ith_limit = 25000; # limit for nth fibonacci numbers
my $ith_limit = 25000; # limit for nth fibonacci numbers
my $pred_limit = 10**22; # limit for if n is a fibonacci number
my $fib_seq = Math::NumSeq::Fibonacci->new;
@ -41,7 +41,7 @@ handle remainder_lc => sub {
my $n = $+{'which'};
my $val = $fib_seq->ith($n);
my $suf = ordsuf($n);
my $text_answer ="The $n$suf fibonacci number is $val (assuming f(0) = 0).";
my $text_answer ="The $n$suf fibonacci number is $val (assuming f(0) = 0)";
return answer($text_answer, $val, "$n$suf Fibonacci number");
}
@ -51,10 +51,10 @@ handle remainder_lc => sub {
my $n = $+{'which'};
my $val = $fib_seq->pred($n);
my $is_fib = $val ? "is" : "is not";
my $text_answer ="$n $is_fib a Fibonacci number.";
my $text_answer ="$n $is_fib a Fibonacci number";
return answer($text_answer, $val ? "true":"false", $text_answer);
}
return answer($text_answer, $val ? "Yes" : "No", $text_answer);
}
else
{
return; # didn't match anything

View File

@ -27,16 +27,16 @@ sub build_test { test_zci(build_structured_answer(@_)) };
ddg_goodie_test(
[qw(DDG::Goodie::Fibonacci)],
'fib 7' => build_test("The 7th fibonacci number is 13 (assuming f(0) = 0).", 13, "7th Fibonacci number"),
'fibonacci 33' => build_test("The 33rd fibonacci number is 3524578 (assuming f(0) = 0).", 3524578, '33rd Fibonacci number'),
q`what's the 6th fibonacci number?` => build_test("The 6th fibonacci number is 8 (assuming f(0) = 0).", 8, '6th Fibonacci number'),
'10th number in the fibonacci sequence?' => build_test("The 10th fibonacci number is 55 (assuming f(0) = 0).", 55, '10th Fibonacci number'),
'what is the 18th number in the fibonacci series' => build_test("The 18th fibonacci number is 2584 (assuming f(0) = 0).", 2584, '18th Fibonacci number'),
'What is the 2nd fibonacci number' => build_test("The 2nd fibonacci number is 1 (assuming f(0) = 0).", 1, '2nd Fibonacci number'),
'fib 7' => build_test("The 7th fibonacci number is 13 (assuming f(0) = 0)", 13, "7th Fibonacci number"),
'fibonacci 33' => build_test("The 33rd fibonacci number is 3524578 (assuming f(0) = 0)", 3524578, '33rd Fibonacci number'),
q`what's the 6th fibonacci number?` => build_test("The 6th fibonacci number is 8 (assuming f(0) = 0)", 8, '6th Fibonacci number'),
'10th number in the fibonacci sequence?' => build_test("The 10th fibonacci number is 55 (assuming f(0) = 0)", 55, '10th Fibonacci number'),
'what is the 18th number in the fibonacci series' => build_test("The 18th fibonacci number is 2584 (assuming f(0) = 0)", 2584, '18th Fibonacci number'),
'What is the 2nd fibonacci number' => build_test("The 2nd fibonacci number is 1 (assuming f(0) = 0)", 1, '2nd Fibonacci number'),
'what is the 250001 fib' => undef,
'is 14 a fibonacci number' => build_test("14 is not a Fibonacci number.", "false", '14 is not a Fibonacci number.'),
'is 13 in the fibonacci sequence?' => build_test("13 is a Fibonacci number.", "true", '13 is a Fibonacci number.'),
'is 6 a fib?' => build_test("6 is not a Fibonacci number.", "false", "6 is not a Fibonacci number."),
'is 14 a fibonacci number' => build_test("14 is not a Fibonacci number", "No", '14 is not a Fibonacci number'),
'is 13 in the fibonacci sequence?' => build_test("13 is a Fibonacci number", "Yes", '13 is a Fibonacci number'),
'is 6 a fib?' => build_test("6 is not a Fibonacci number", "No", "6 is not a Fibonacci number"),
'is 1000000000000000000000000000000000000000000000 a fib' => undef,
'tell a fib' => undef,
'what are fibonacci numbers?' => undef,