#!/usr/bin/perl -wuse strict;=head11 condition: false when value is 0/null string/string with "0" value/undef;2 block: ...{}; vars only take effect in the block they are defined;3 compare operators: <, >, ==, !=... used for numeric compare; eq, lt, gt, le, ge, ne used for string compare;4 condition state: if true ...{} elsif ...{} else ...{}; statement if true; simple! unless false ...{};5 loop state: while true ...{}; untile false ...{}; for (init; condition; operation) ...{}; "statement of $_" for [@array] | (0...10) for (1...10) ...{ "statement of $_" }; print for (); print foreach (@array); for my $var (1...10) ...{}; for === foreach=cutprint "part1 condition/loop................................................. ";my @array = qw/-1 0 1 2 3 -2 -3/;my @positive = ();foreach (@array) ...{ push @positive, ($_**2) if ($_ > 0);}print foreach (@positive);print " ";@positive = ();@positive = map ...{ $_**2 } grep ...{$_ > 0} (@array);print for (@positive); print " ";my $test = 0;print "test=0 " if ($test == 0);print "test=0 " unless ($test != 0);print "4 false conditions: 0/null string/string 0/undef ";my $cond = 0;print "cond=0: false " if (! $cond);$cond = "";print "cond="": false " if (! $cond);$cond = "0";print "cond="0": false " if (! $cond);$cond = undef;print "cond=undef: false " if (! $cond);=head2part2: exercise1. caculate 1+3+5+...+99;2. the max value of n when (1+2+..+n)<=100;3. caculate the factorial of x, inputted by user, x<50 or alarm when x>50;=cutprint "part2 exercise................................................. ";my $res = 0;for (my $i=1; $i<100; $res+=$i, $i+=2) ...{;}print "1+3+5+...+99 = $res ";$res = 0;my $n = 0;foreach (1...100)...{ $n = $_-1; last if (($res+=$_) > 100);}print "res=$res, when n=$n ";[root@china1 code]# ./perlnote3.pl part1 condition/loop.................................................149149test=0test=04 false conditions: 0/null string/string 0/undefcond=0: falsecond="": falsecond="0": falsecond=undef: falsepart2 exercise.................................................1+3+5+...+99 = 2500res=91, when n=13