簡(jiǎn)單的記錄了書里的小例子第租,以及章節(jié)后的練習(xí)題的腳本盛卡。
If Control Structure(IF循環(huán))
腳本如下:
#!/usr/bin/perl
use warnings;
use strict;
use v5.24;
my $line = <STDIN>; #這里變量前必須加上my拴测,不知道是不是版本的原因疲陕,書里沒有加my默刚;但是這里如果不加就會(huì)報(bào)錯(cuò)
if ($line eq "\n") {
print "That was just a blank line!\n";
} else {
print "That line of input was: $line";
}
$ ./practice.pl
I am learning perl #這里輸入字符I am learning perl引几,回車后會(huì)顯示下面的返回結(jié)果
That line of input was: I am learning perl
$ ./practice.pl
#這里我直接打回車鍵,則會(huì)顯示下面的結(jié)果
That was just a blank line!
While Control Structure(While語句)
#!/usr/bin/perl
use warnings;
use strict;
use v5.24;
my $count = 0;
while ($count < 10) {
$count += 2; #這里實(shí)際上是$count = $count + 2
print "count is now $count\n";
}
$ ./practice.pl
count is now 2
count is now 4
count is now 6
count is now 8
count is now 10
Learning perl 7th 第二章課后練習(xí):
(1)第一題:
Write a program that computes the circumference of a circle with a radius of
12.5. Circumference is 2π times the radius (approximately 2 times 3.141592654).The answer you get should be about 78.5.
#!/usr/bin/perl
use warnings;
use strict;
use v5.24;
my $radius = 12.5;
my $circumference = 2 * 3.141592654 * $radius;
print $circumference."\n";
$ ./practice.pl
78.53981635
(2)第二題
Modify the program from the previous exercise to prompt for and accept a
radius from the person running the program. So, if the user enters 12.5 for the
radius, she should get the same number as in the previous exercise.
#!/usr/bin/perl
use warnings;
use strict;
use v5.24;
my $radius = <STDIN>;
my $circumference = 2 * 3.141592654 * $radius;
print $circumference."\n";
$ ./practice.pl
12.5
78.53981635
(3)第三題
Modify the program from the previous exercise so that, if the user enters a
number less than zero, the reported circumference will be zero, rather than negative.
#!/usr/bin/perl
use warnings;
use strict;
use v5.24;
my $radius = <STDIN>;
my $circumference = 2 * 3.141592654 * $radius;
if ($radius >= 0 ) {
print "$circumference\n";
} else {
print "0"."\n";
}
$ ./practice.pl
3
18.849555924
$ ./practice.pl
0
0
$ ./practice.pl
-4
0
(4)第四題
Write a program that prompts for and reads two numbers (on separate lines
of input) and prints out the product of the two numbers multiplied together.
#!/usr/bin/perl
use warnings;
use strict;
use v5.24;
my $number_one = <STDIN>;
my $number_two = <STDIN>;
my $multiplied_together = $number_one * $number_two;
print $multiplied_together."\n";
$ ./practice.pl
4
7
28
(5)第五題
Write a program that prompts for and reads a string and a number (on separate
lines of input) and prints out the string the number of times indicated by the
number on separate lines. (Hint: use the x operator.) If the user enters “fred” and
“3”, the output should be three lines, each saying “fred”. If the user enters “fred”
and “299792,” there may be a lot of output.
#!/usr/bin/perl
use warnings;
use strict;
use v5.24;
my $string_input = <STDIN>;
my $times = <STDIN>;
my $output_total = "$string_input" x $times;
print $output_total;
$ ./practice.pl
yan
3
yan
yan
yan
和書后的答案一對(duì)嘱丢,雖然我運(yùn)行的結(jié)果都沒有錯(cuò)浇雹,但是比答案還是略遜了一點(diǎn)。因?yàn)榇鸢咐锊⒉皇莾H僅輸出的運(yùn)行后的數(shù)字屿讽,還同時(shí)打出了“the result is:”這樣的字符昭灵。嗯,還要繼續(xù)努力~~