for loop in perl


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting for loop in perl
# 1  
Old 05-01-2009
for loop in perl

my $i;
my $j;
for($i=1;$i<=5;$i++)
{
for($j=$i;$j<5;$j++)
{
print " ";
}
print "$i\n";
}


But the output i need is
1
12
123
1234
12345

Help me please

Last edited by priyas; 05-01-2009 at 11:07 AM.. Reason: wrong information
# 2  
Old 05-01-2009
my $i;
my $j;
for($i=1;$i<=5;$i++)
{
for($j=$i;$j<5;$j++)
{
print " ";
}
print "$i\n";
}


But the output i need is
12345
1234
123
12
1


Help me please
# 3  
Old 05-01-2009
Quote:
Originally Posted by priyas
my $i;
my $j;
for($i=1;$i<=5;$i++)
{
for($j=$i;$j<5;$j++)
{
print " ";
}
print "$i\n";
}


But the output i need is
1
12
123
1234
12345

Help me please
Seems like a homework question.

Code:
bash-3.2$ perl -e '{ for($i=1; $i<=5; $i++){ print substr("12345",0,$i),"\n"; } }'
1
12
123
1234
12345
bash-3.2$

You should be able to work out the reverse pyramid from here.

HTH,
tyler_durden

______________________________________________
"Only after disaster can we be resurrected."
# 4  
Old 05-01-2009
Java help me

the output required is
12345
1234
123
12
1


i myself tried but the output iam getting is


1
2
3
4
5
# 5  
Old 05-01-2009
Quote:
Originally Posted by priyas
i myself tried but the output iam getting is


1
2
3
4
5
Well, then you haven't tried hard enough !
Instead of me providing a cooked 'n ready-to-eat script, I'd suggest you look at the earlier script closely and understand how it works.

(a) understand how to write a for loop with a decrementing iterator.
(b) check the syntax of the substr command and the arguments/variations therein. See what happens when you change the values of the arguments.(Perldoc page - perl - perldoc.perl.org).

Once things become clearer, you should be able to come up with the solution yourself.

As Larry Wall says - "If you can't figure it out, you didn't want to know anyway." Smilie

HTH,
tyler_durden
# 6  
Old 05-01-2009
I agree with tyler_durden, looks like school work, and I agree that more study of the code and perl in general is required. But this person has at least shown some effort which most people posting school work on this forum do not, so I am willing to post some code. Note I have used perlish loops instead of C style loops, but the same logic could be applied to the ugly C style loops:

Code:
my $end = 5;
for my $j (1..$end){
   for my $i (1..$end--){
      print $i;
   }
   print "\n";
}

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl loop until

I have a script that needs to wait on another script to finish. I created a sub routine to check the file for the number 0 but my until statement keeps on going. I tried eq, == and =~ but same thing. my $CHECKING_FILE = 1; do { sleep(5); $CHECKING_FILE = check_file(); ... (2 Replies)
Discussion started by: numele
2 Replies

2. Shell Programming and Scripting

perl while loop for each

I have the below scenario in perl cd $FIDE_RECEIVE ; # see the files that start with feedmgr.usfed.tips $CycleDate = &fi_get_curr_date('US','NIGHTLY_CYCLE','PROCESS'); head -1 GNM_GEO.DAT.EMBS* |grep -v GNM_GEO.DAT.EMBS | awk '{$4 " " $5}' output for above command :... (3 Replies)
Discussion started by: ptappeta
3 Replies

3. Shell Programming and Scripting

While Loop in Perl

Hi All I am reading the file using while loop in Perl someting like while (my $s=<F>){ chomp($s); .. .. .. } What i want to do is after the chomp statement i used some condition, if the condition is met then it should move forward otherwise it should read the new line. How Can it be... (4 Replies)
Discussion started by: parthmittal2007
4 Replies

4. Programming

while loop perl

I am trying to create a success and fail as below in a perl script : while echo$? is 2 it should append as below to .fail file ===================== if ( open(IN, "$outputfile")) { while( $my_line = <IN> ) { #print "$my_line \n" ; return 0; ... (3 Replies)
Discussion started by: sriram003
3 Replies

5. Shell Programming and Scripting

Help with PERL loop

I wrote a script to list all lines in a file with Perl. I am having trouble with the looping part of it. My script is supposed to look at the file and as long as the file is larger than the current line it prints a new line. I am getting an error that won't stop on the while line of my code I... (4 Replies)
Discussion started by: zero3ree
4 Replies

6. Shell Programming and Scripting

until loop Perl

I am trying to print out a section of a file begining at the start and printng until a character is found. My code and input file are below. This code is printing out every line except for the line with the character which is not what I want the out put should be a file with numbers 1-4. ... (3 Replies)
Discussion started by: cold_Que
3 Replies

7. Infrastructure Monitoring

Perl Loop Problem

Another newbie question... I can not figure out how to get this running using a loop. Here is what I have now. #!/usr/bin/perl use SNMP::Info; $list="list.list"; open(DAT, $list) || die("Can't Open List"); @raw_data=<DAT>; close(DAT); foreach $dest (@raw_data) {... (2 Replies)
Discussion started by: mrlayance
2 Replies

8. Shell Programming and Scripting

Perl - pass shell-vars into perl for input loop

I need to process a file line-by-line using some value from a shell variable Something like:perl -p -e 's/$shell_srch/$shell_replace/g' input.txt I can't make the '-s' work in the '-p' or '-n' input loop (or couldn't find a syntaxis.) I have searched and found... (4 Replies)
Discussion started by: alex_5161
4 Replies

9. Shell Programming and Scripting

perl loop keeps getting stuck

I am using a Perl script to open a series of files in a loop, separate the paragraph into lines, and output the lines into a new file. The code works perfectly fine, except when the source file is over a certain size the loop gets stuck and won’t move on to the next file. It still does what it is... (0 Replies)
Discussion started by: renthead720
0 Replies

10. Shell Programming and Scripting

help with perl while loop

Can anyone tell me why this program won't kick out when the time gets beyond time in the loop? sub showtime { local($format,$military)=@_; ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time); if ((! $military) &amp;&amp; ($hour &gt; 12)) {$hour-=12;} ... (2 Replies)
Discussion started by: methos
2 Replies
Login or Register to Ask a Question