Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re: Help with accepting inputs, wordcount, and print to a file

by Riales (Hermit)
on Sep 10, 2012 at 17:12 UTC ( #992808=note: print w/replies, xml ) Need Help??

in reply to Help with accepting inputs, wordcount, and print to a file

What do you think that third line is doing right now? It does offer a hint if you run the code though; you should find that it prints the name of the file, then the first line from that file.

So, knowing that, you might want to use a while loop to loop through each line of the file. For each line, you'll want to deal with each word separately. For that, look into split. There's a few things you could do to keep count of how many times each word appears in the file, but I would recommend using a hash. After you've constructed your hash, iterate through each hash key to find the word with the most occurrences and output that value. Do this for each file.

Hashes can be pretty tricky at first, so feel free to check in back here when you reach that part and I'm sure either I or another monk will be glad to help you out with that as well. Good luck!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://992808]
[perldigious]: Ah, thanks choroba, that sort of thing was precisely what I was wondering when I asked.
[perldigious]: I didn't want to tie up memory unecessarily basically, I wanted to "delete" it specifically to free it up, and wasn't sure I was even accomplishing that.
[stevieb]: perldigious You should start by writing some unit tests. That'll ensure current functionality doesn't break with changes.
[choroba]: unit tests++
[choroba]: The only problem you can't solve by adding more tests is the problem of having too many tests.

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (7)
As of 2017-07-21 20:00 GMT
Find Nodes?
    Voting Booth?
    I came, I saw, I ...

    Results (335 votes). Check out past polls.