From 6d49bb5c11944210406f765bcf091dcd162b0400 Mon Sep 17 00:00:00 2001 From: Dylan Lloyd Date: Thu, 24 Jan 2013 05:18:01 -0500 Subject: [PATCH] accept "what is the __ fibonacci number" syntax --- lib/DDG/Goodie/Fibonacci.pm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/DDG/Goodie/Fibonacci.pm b/lib/DDG/Goodie/Fibonacci.pm index 6849dd86f..8ff18af01 100644 --- a/lib/DDG/Goodie/Fibonacci.pm +++ b/lib/DDG/Goodie/Fibonacci.pm @@ -20,9 +20,9 @@ topics 'math'; handle remainder => sub { s/^\s+//; s/\s+$//; - return unless /^\d+$/ && $_ <= 1470; + return unless /^(?:what is the )?(\d+)(?:(?:th|rd|st)? number\??)?$/ && $1 <= 1470; my @fib; - $#fib = $_; + $#fib = $1; $fib[0] = 0; $fib[1] = 1; # Instead of calling a typical recursive function, @@ -31,8 +31,8 @@ handle remainder => sub { $fib[$i] = $fib[$i - 1] + $fib[$i - 2]; } my $suf = ordsuf($_); - return "The $_$suf fibonacci number is ${fib[$_]} (assuming f(0) = 0).", - html => "The $_$suf fibonacci number is ${fib[$_]} (assuming f(0) = 0)."; + return "The $1$suf fibonacci number is ${fib[$1]} (assuming f(0) = 0).", + html => "The $1$suf fibonacci number is ${fib[$1]} (assuming f(0) = 0)."; }; 1;