Re: Re: Jaw Breaker - What's the ansewer?
| From: | graeme | Date: | Wed, 20 Apr 2005 11:37:20 +0000 |
| Subject: | Re: Re: Jaw Breaker - What's the ansewer? | ||
| References: | 1 2 3 | Groups: | php.windows |
| Request: | Send a blank email to php-windows+get-25885@lists.php.net to get a copy of this message | ||
Well the closest I got was $x = 8.36 but that only gave 4277126.8 So is this question dependent upon the floating point arithmetic that is used?
graeme
JC Botha wrote:
It is possible, and "10.642868165785" is incorrect. The question says "$x is a number between 1 and 10 and has 2 decimal places." Try again, if more try then I will post the source code that generates the asnwer? On 4/20/05, M. Sokolewicz <tularis@php.net> wrote:-- Experience is a good teacher, but she sends in terrific bills. Minna AntrimJC Botha wrote:The following is a section of PHP code (see Apache.org and PHP.net). function f($c) { $c++; if ($c % 2) { return f($c); } return $c++; } function g($n) { for ($i=1;$i<10;$i++) {it's not a jawbreaker, it's impossible IMO. f() always returns the number if it's uneven, or if it's even, it returns (n+1). So, it always returns uneven. which means the result of g() can *never* be even. [[side note: unless "return $c++;" does first add 1 to it before returning, but I think it doesn't, since it's a postincrement operator. ]] -- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php$n = f($n*$i);} return ($n); } print(g($x)); What is the smallest value that $x can have if 4277108 is outputted to the screen after running this code? $x is a number between 1 and 10 and has 2 decimal places.