2008-06-01から1ヶ月間の記事一覧

sqrt関数 - 正の平方根を求める

Perl › 関数 › here sqrt関数を使用すると正の平方根を求めることができます。平方根とは、2乗すると元の数になる数のことを言い、正と負の値があります。( 例: 4の平方根は、2と-2 )負の平方根がほしいときは、sqrtの結果の符合を変えるだけです。 my $root…

べき乗演算子 - **

Perl › 演算子 › 算術演算子 › here べき乗を求めるにはべき乗演算子「**」を使用します。 my $two_power_num = 4 ** 2; べき乗を求めるには、** 演算子を使います。べき乗とは、同じ数を複数回かける演算のことです。 サンプルプログラム べき乗を求めるサ…

サブルーチンの演習問題

Perl › サブルーチン › here サブルーチンの具体的な例を使って学ぶために、いくつかの例を挙げて、解説します。 csv形式の文字列を配列の配列に変換する csv形式の文字列を配列の配列に変換するサンプルです。 use strict; use warnings; # 名前,年齢,出身 …

ヒアドキュメント - 複数行の文字列を簡単に作成

Perl › 演算子 › here ヒアドキュメントを用いれば複数の文字列をわかりやすく記述することができます。 my $text = <<'EOS'; aaaa iiii uuuu EOS ヒアドキュメントを用いれば、セミコロンの位置に注意しましょう。最後のEOSのあとには、セミコロンはなくて…

よいサブルーチンを作成するための心がけ

Perl › サブルーチン › here サブルーチン作成に関するわたしの考えを殴り書きしました。 見出し 引数と戻り値について理解する。 小さなサブルーチンを作成する。 サブルーチンに柔軟性を持たせる。 呼び出しの階層を浅く保つ。 機能を実現するサブルーチン…

Perlのサブルーチンの柔軟性をC言語と比較してみる

Perl › サブルーチン › here Perlのサブルーチンの特徴をまとめておきます。C言語と比較してみました。Perlの言語としての柔軟性が理解できると思います。※1 Perlのサブルーチンの特徴 Perl C言語 1 サブルーチンの定義はどこで行っても良い 一般的に、関数…

型グロブを理解する

Perl › モジュール作成 型グロブは、シンボルテーブルのエントリーを表現します。 *main::num # $main::{num} とほぼ同じ意味。 *num # パッケージ名を省略することもできます。 シンボルテーブル上の、 $main::{num} には、'*main::num' という文字列が代入…

シンボルテーブルの中身を覗いてみる

Perl › モジュール作成 › here Perlは、シンボルテーブルというものを持ち、プログラマーが、それを参照したり、変更を加えたりすることができます。Perlは、他の言語に比べて、柔軟で、高い適応力を持ちますが、その力をを生み出している機能のひとつがシン…

サブルーチンの定義はスコープの影響を受けない

Perl › サブルーチン › here サブルーチンの定義は、スコープの影響を受けません。 { sub func { return 2; } } my $ret = func(); サブルーチンは、スコープの影響を受けません。一見すると、funcは、スコープの外では、見えないものと思ってしまいがちです…

wantarray関数 - スカラかリストをコンテキストに応じて返却

Perl › 関数 › here Perlではコンテキストという概念があるので、スカラあるいはリストをコンテキストに応じて返却することができます。 sub func_name{ # 処理 ... return wantarray ? リスト : スカラ; } wantarrayを使えば、リストコンテキストの場合とス…

Perlのコンテキストを理解しよう

Perl › 構文 › here Perlにはコンテキストと呼ばれる概念があります。コンテキストとは文脈という意味で、次の二つのコンテキストがあります。 スカラコンテキスト リストコンテキスト スカラとして評価される文脈をスカラコンテキスト、リストとして評価さ…

Perlを実行するためのコマンドプロンプト入門

Perl › here Perlのプログラミングは、コマンドと呼ばれるテキストを入力して実行します。まず最初にWindowsにおけるコマンド実行ツールであるコマンドプロンプトについて解説したいと思います。 コマンドプロンプトとは コマンドプロンプトとは、Windows環…

ActivePerlをWindowsにインストールする

Perl › インストール ActivePerlをWindowsにインストールしてPerlを使えるようにしましょう。ActivePerl | ActiveStateActivePerlはActiveState社によって無償で提供されているPerlディストリビューションの一つです。特徴は Windows関連のモジュールが多く…

複数階層のディレクトリを再帰的にコピー

Perl › ファイル操作 › here 複数階層のディレクトリを再帰的にコピーするにはFile::Findモジュールを使用します。 use strict; use warnings; use File::Path 'mkpath'; use Fcntl; use File::Find 'find'; use File::Copy 'copy'; use Cwd 'getcwd'; # 準…