Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re: My program it doesn't work could you tell me my mistakes?

by monkeygirl (Pilgrim)
on Nov 08, 2001 at 06:46 UTC ( #123985=note: print w/ replies, xml ) Need Help??


in reply to My program it doesn't work could you tell me my mistakes?

Here is your program wrapped in code tags, and formatted so it's a little easier to read. I've made comments explaining what's going wrong/on within the code.

print "What is your name?\n"; $input=<STDIN>; $name=inputcutter($input); # Be careful with that slash. You just escaped your # double-quote. print "What is your age?n\"; $input=<STDIN>; $age=inputcutter($input); # You don't have an array called @age in your code. # Try $age instead. print "Your are $name and your age is @age years old.\n"; sub inputcutter { # Here, you're neglecting to fetch the data you just # passed to here (in @_, FYI). If you do # $input = shift;, you'll grab the first element of # @_, which is what you need. # On this line, $s holds whether or not the chomp was # successful, not the chomped version of $input. You # can just chomp $input; and forget about $s. $s=chomp $input; return ($s); }

It is highly recommended you use strict; and run with Warnings and Taint. I'm not going to rehash the reasons why, when there is already a node on PM such as Use strict warnings and diagnostics or die just waiting to be read.

Also, remember to include your shebang line at the top of your program (usually #!perl or #!/usr/bin/perl), or else your program won't run. And if you're on a Windows box, you have to execute the program like this: perl programname.pl or  perl -T programname.pl

If the program is still giving you problems, please reply back to this thread for additional help. But I implore you to be more descriptive of the problem as it will increase the chances of us being able to help you out.

Update: As blakem points out, Anonymous Monk probably did have the <STDIN> after all. Node edited to reflect changes.


Sarah
If Bill Gates can name a company after his "bedroom" problems, I can have a stupid sig that points it out.


Comment on Re: My program it doesn't work could you tell me my mistakes?
Select or Download Code
Re: Re: My program it doesn't work could you tell me my mistakes?
by blakem (Monsignor) on Nov 08, 2001 at 06:58 UTC
    Since I almost tripped myself up on this yesterday...

    When someone posts code w/o code tags, things like '<STDIN>' tend to get parsed out as invalid html tags. That's why you'll see things like

    $input = ;
    </code> It was actually entered as:
    $input = <STDIN>;
    but got munged along the way.

    -Blake

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (2)
As of 2014-07-13 05:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (246 votes), past polls