### Re: Is it possible to get all tetra words with correct starting position using a better code within a loop?

by space_monk (Chaplain)
 on Nov 22, 2012 at 08:48 UTC ( #1005079=note: print w/ replies, xml ) Need Help??

You should look up substr. (Update: choroba put a more detailed explanation while I was writing this, so see below)

Alternatively, in the spirit of TMTOWDI, you also could adopt the following algorithm

1. split the words into an array characters
2. terminate if less than 4 chars in array
3. print the first 4 characters on the array
4. remove (shift the first character off the array
5. go back to 2)
```
my \$word = 'ABCDEFGH';
my @word = split //, \$word;

my \$pos = 1;
while (scalar(@word) >= 4) {
print @word[0..3]."==> starting at \$pos";
shift @word;
\$pos++;
}

A Monk aims to give answers to those who have none, and to learn from those who know more.

Comment on Re: Is it possible to get all tetra words with correct starting position using a better code within a loop?
Replies are listed 'Best First'.
Re^2: Is it possible to get all tetra words with correct starting position using a better code within a loop?
by ColonelPanic (Friar) on Nov 22, 2012 at 09:15 UTC
One quibble: you forgot to increment your \$pos variable.

When's the last time you used duct tape on a duct? --Larry Wall
Thanks - I haven't had my first coffee yet!
A Monk aims to give answers to those who have none, and to learn from those who know more.
I know the feeling!

When's the last time you used duct tape on a duct? --Larry Wall
Re^2: Is it possible to get all tetra words with correct starting position using a better code within a loop?
by supriyoch_2008 (Scribe) on Dec 03, 2012 at 06:34 UTC

Hi space_monk

With DEEP REGARDS,

Create A New User
Node Status?
node history
Node Type: note [id://1005079]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (18)
As of 2015-11-24 22:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?