開発環境
- macOS Sierra - Apple (OS)
 - Emacs (Text Editor)
 - Perl 6 (プログラミング言語)
 - Rakudo(コンパイラ、実装)
 
Think Perl 6: How to Think Like a Computer Scientist (Laurent Rosenfeld(著)、Allen B. Downey(著)、Oreilly & Associates Inc)のPart 1(Starting with the basics)、Chapter 5(Fruitful Subroutines)、Incremental Development の Exercises.を取り組んでみる。
Exercises.
コード(Emacs)
#!/usr/bin/env perl6
# -*- coding: utf-8 -*-
sub hypotenuse($x, $y) {
    return 0.0;
}
say hypotenuse(1, 1);
say hypotenuse(3, 4);
say hypotenuse(1, sqrt 3);
sub hypotenuse1($x, $y) {
    my $x-squared = $x ** 2;
    my $y-squared = $y ** 2;
    say '$x-squared is ', $x-squared;
    say '$y-squared is ', $y-squared;
    return 0.0;
}
say hypotenuse1(1, 1);
say hypotenuse1(3, 4);
say hypotenuse1(1, sqrt 3);
sub hypotenuse2($x, $y) {
    my $x-squared = $x ** 2;
    my $y-squared = $y ** 2;
    my $sum = $x-squared + $y-squared;
    say '$sum is ', $sum;    
    return 0.0;
}
say hypotenuse2(1, 1);
say hypotenuse2(3, 4);
say hypotenuse2(1, sqrt 3);
sub hypotenuse3($x, $y) {
    my $x-squared = $x ** 2;
    my $y-squared = $y ** 2;
    my $sum = $x-squared + $y-squared;
    my $result = sqrt $sum;
    return $result;
}
say hypotenuse3(1, 1);
say hypotenuse3(3, 4);
say hypotenuse3(1, sqrt 3);
入出力結果(Terminal, REPL)
$ ./sample_inc.pl 0 0 0 $x-squared is 1 $y-squared is 1 0 $x-squared is 9 $y-squared is 16 0 $x-squared is 1 $y-squared is 3 0 $sum is 2 0 $sum is 25 0 $sum is 4 0 1.4142135623731 5 2 $
0 コメント:
コメントを投稿