Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: A Perl aptitude test

by artist (Parson)
on May 02, 2003 at 15:58 UTC ( #255055=note: print w/ replies, xml ) Need Help??


in reply to A Perl aptitude test

If you want, you can make it trickier.
Example: Question 1:

print (print (2 * 3) + 3);

artist


Comment on Re: A Perl aptitude test
Download Code
Re: Re: A Perl aptitude test
by Jonathan (Curate) on May 02, 2003 at 16:06 UTC
    hmmmm, I think they'd get it right by accident :-). As it stands no one has yet got the original correct so I don't think trying to make it harder is quite what I'm looking for!
    Question 1 is (IMO) a waste of time. I'm embarassed about it.
    Cheers anyway.

    Jah
Re: Re: A Perl aptitude test
by silent11 (Vicar) on May 02, 2003 at 17:50 UTC
    I get 64. Why?

    -silent11
      You actually get a "6" followed by a "4".

      print (print (2 * 3) + 3);
      The inner print(2 * 3) is evaluated first: it prints 6, and returns the value "1" because the print succeeded. 1 + 3 is 4, so the outer print prints 4. There were no delimiters between the two digits, so they look like one number instead of two sequential digits.

      This brings up the original trick question quite nicely: the parentheses on print (2 * 3) + 3 make print() look like a function call, they aren't simply an arithmetic grouping operator in this case.

      Alan

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://255055]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (13)
As of 2014-07-31 20:19 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (252 votes), past polls