カテゴリー
Python

プログラムを書いてみよう

この章では幾つかの例を使ってプログラムの基本的な規則について説明します。9 結果は次の通りです。999 変数とは荷物を入れるバッグみたいなものです。
例えばバッグに財布やハンカチを入れて持ち運びますが、そのバッグに当たるものが変数です。
そして、このバッグに入っている財布やハンカチが変数に入れるデータに該当します。
つまり、バッグという変数に、ハンカチというデータを入れるわけです。
このように変数にデータを入れて、プログラムを書いていきます。
この例では変数に9と名前を付けましたが、名前の付け方には一定のルールがあります。9999 以下の予約語を変数名に使用することはできません。9 9変数名と文字列の間にある「=」は数学のイコールの意味ではありません。
これは右辺のデータを左辺に入れるという意味があります。
つまり、name1の中に9というデータを入れて、name2の中に9というデータを入れて、name3の中に9というデータを 入れています。
このようにデータを入れることを代入と言います。9 変数は値を1つしか保持できないので、例えばname1に新しい他のデータを9 のように入れると前のデータである「近藤」という情報は上書きされて「飯島」に入れ替わります。
また、変数を上書きする方法はもう1つありまして、変数に変数を代入する方法です。9 name2をname1に代入することにより、「近藤」が「岸辺」に上書きされます。9 pythonはユニコードという国際的な文字コードの規格が標準なのでutf-8をユニコード文字列に変換する必要があるのです。
「u」を付けることでユニコード文字列に変換できます。
もうひとつの方法としては以下の構文でutf-8をユニコード文字列に変換します。9 例えば以下のように書きます。99 printは文字等のデータを出力する機能を持っています。
9printの右側に変数や文字列を記述するとその値が出力されます。
printと「変数や文字列」との間は必ず、半角のスペースを空
けてください。

全角のスペースでは開けないでください。
9はname1に入っている値である「近藤」という文字列を出力するという意味です。
文字列を囲っているダブルクォート自体は出力されません。
変数にデータを入れなくて、以下のように直接出力しても同じ結果になります。9 結果は以下の通りです。9 上の結果をみていただくと分かりますが、printは出力した後に改行してくれます。
改行をしたくない場合は以下のように変数の終わりにカンマを付けてください。9 このように書けば9と、改行しないで出力されますが、データとデータの間にはスペースが発生します。9 1つのprint文で複数の文字列を出力したい場合は以下のように変数をカンマで区切って記述してください。9 出力結果はデータとデータの間にスペースが発生します。9

[ポイント6]
次はコメントについて説明します。
9「#」はコメントを意味しています。
「#」の右から行末まではすべてコメントとみなされるので、画面には出力されません。
コメントに何を書くのかはプログラマ自身が決めるのですが、忘れてはいけないことなどをメモ程度に書きます。
また、この例のように一部のプログラムを動作させないことにも使われます。
以下の結果を見ていただくと分かりますが、
コメントの部分は出力されていないことが分かります。9 複数行をコメントアウトする場合には以下のように2つの9を使ってコメントしたい箇所を上下に挟みます。
99print文では行末で自動的に改行してくれましたが、自ら改行を入れることが出来ます。
改行を表す文字は9です。
使っているテキストエディタにより9という表記なっている場合がありますが意味は同じです。
この改行文字はエスケープシーケンスと呼ばれています。
エスケープシーケンスとはダブルクォートやシングルクォートなど文字列として入力することができない特殊な文字を9を使って表現します。
改行以外にもエスケープシーケンスはあります。9 では例をみてみましょう。
99結果は以下の通りです。9 では説明を始めます。9 これはタブを3つ記述していますが、これで3つのタブを記述したことになります。
次の箇所の説明をします。99はこの位置で改行されることを意味します。
「島田」の後ろと「は」の後ろで改行されます。
次の箇所の説明をします。9 ダブルクォートの中にダブルクォートを含めようとするとエラーになりますので、9の前に9を付けてください。9 また、シングルクォートの中にシングルクォートを含めようとするとエラーになりますので、9の前に9を付けてください。
次の箇所の説明をします。9 ダブルクォートの中にシングルクォート もしくは シングルクォートの中にダブルクォートを含める場合はエスケープシーケンスをする必要はありません。
次の箇所の説明をします。9 9を2つ連続して書きますと9が1つ出力されます。
99出力の方法は普通の変数と同じでprintで出力します。
結果は以下の通りです。999 結果は以下の通りです。9 では説明を始めます。9 =>「文字列+文字列」と言う形式で文字列同士を連結することができます。
以下のカンマ区切りの意味は説明済みですが、復習してみましょう。9 =>変数と変数の間をカンマで区切って出力すると変数の値の間にスペースが生まれます。
「+」は逆に変数の値の間にスペースは生まれません。
99この例は以下のようなエラーが出ます。9 エラーの箇所は以下の箇所です。9 文字列と数値は連結できませんので、ここを以下のように変更してください。9 変更点は変数であるageをstrのカッコの中に入れます。
strは文字列を表わすことはデータ型の章で説明した通りです。
数値の入っている変数をstrのカッコの中に記述すると数値を文字列に変換してくれます。
このことをキャストと言います。
strは関数と呼ばれているものですが、関数は「関数について知ろう1」で説明します。9 これとは逆に文字列を整数値に変換するキャストの例を見てみましょう。9 結果は以下の通りです。9 数値をダブルクォートやシングルクォートで囲むと文字列になります。
99の文字列同士を「+」で連結すると12となります。
文字列同士の結合なので結果は3にはなりません。
「+」には文字列を連結させるという機能があることは説明しましたが、「+」にはこの他にも数値同士を足すという機能があります。
計算をするためには対象が文字列であるならばそれを数値に変換してあげないといけません。
「文字列を数値に変換」するには9を使用します。
これは関数と呼ばれているものですが、詳しくは「関数について知ろう1」で説明します。99 では例をみてみましょう。9 この例では9を変数nameに入れて、printで紺野を6回出力します。9 文字列に繰り返す回数を指定するとその数だけ文字列を繰り返します。
この例では繰り返し文をnameに入れていますが、以下のようにprint文で直接出力してもいいです。99 この構文ではuが付くユニコード文字列の場合は文字数を取得します。日本語ではない場合はバイト数を取得します。
この例ではname3にlenの結果を入れていますが、以下のように直接print文で出力してもいいです。9 結果は以下の通りです。9

カテゴリー
Python

Pythonの基礎を知ろう1

この章ではPythonの基礎について説明します。
ではテキストエディタに9 と記述して保存してください。
注意点としては以下のように左側にタブや空白を入れない事です。9 今はprintの意味を詳しくは説明しませんが、printは文字等を出力する機能を持っています。
次にコマンドプロンプトで以下のように9と、記述しますとprint文に記述した文字Helloが出力されます。9 もうひとつの出力方法はPythonのインタラクティブシェルを使用する方法です。
この方法はテキストエディタにプログラムを書くのではなく、コマンドプロンプトに直接書きます。
初めに以下のように9と入力して英語が表示されることを確認してください。9 末尾に「>>>」と言う記号が出てくるので、その後に計算をしたいのであれば9と記述すると9が出力されます。9 文字列を出力したいのであれば9 と、文字列を9もしくは9で囲みますと9が出力されます。9 ただし日本語を出力する時にはprintを使用します。9 もし、printを使わないで日本語を出力しようとすると以下のようにうまく出力されないので、気を付けてください。9

カテゴリー
Ruby

IOクラスについて知ろう

この章ではIO クラスとファイルの入出力について説明します。
ファイルの入出力の基本はファイルを開いて、ファイルに書き込んだり、ファイルから読み込んだりして、最後にファイルを閉じます。
ファイルの入出力にはIO クラスのオブジェクト(IO オブジェクト)を使用します。
ではIO クラスを使用して、ファイルを操作する方法について説明します。9 ファイルを開いたり閉じたりする方法は2つあります。99 構文の中のアクセスモードとは「ファイルを読み込み用で開くのか」、「書き込み用で開くのか」、「読み書き両方で開くのか」を文字列で指定したものです。99999 9「ファイル操作の手順の2」のファイルに書き込んだり、ファイルから読み込んだりするには次の表のメソッドを使用します。
以下のメソッドを使って、入力したり、出力したりします。9999
では次の例で「test.dat」からデータを読み込んでみましょう。99 初めにファイルを開きますが、この例では先ほどの基本構文 2でファイルを開いています。
アクセスモードは読み込み専用の9を使用しています。
「オブジェクト.gets 」と言う形式でファイルからデータを読み込むことができます。
getsメソッドはファイルの中の1行分を読み込むことが出来ますので、「abcde」だけを読み込み、ファイルの終わり(EOF)になるとnilを返します。
最後に9という形式でファイルを閉じます。
基本構文2でファイルを開いた場合にはcloseメソッドは省略できます。
先ほどの例では1行しか取り出さないので、すべての要素を取り出したい場合はwhileを使用します。
次の例のようにwhileを使うと「abcde」「efgh」のすべてが取り出せます。
「a.gets」で取り出されたデータがbに入り、それをprintで出力しています。9
次の例をみてみましょう。99 readlineメソッドもgetsと同じでファイルの中の1行分だけ読み込むことが出来ます。
基本構文は9です。
次の例をみてみましょう。99 9と言う形式で、ファイルのすべての行を配列(この例ではb)に格納してくれます。
それを eachメソッド で繰り返し取り出しています。
結果は以下の通りです。9
次の例をみてみましょう。
9
「IOオブジェクト.getc 」という形式でファイルから1文字ずつ読み込みます。
このメソッドはファイルの終わり(EOF)になるとnilを返します。9
次の例をみてみましょう。9 基本構文は9です。
ファイルの初めから終わりまでを読み込んで出力します。
ファイルの終端に達するとnil を返します。9
次は9という構文でサイズを入力し、そのサイズ分だけファイルからデータを取り出します。9 この例では2バイト分だけ読み込んでいるので、結果は「ab」です。

次の例をみてみましょう。99 と言う基本構文でファイルの中身をすべて読み込むことが出来ます。9
次はファイルに書き込むメソッドについて説明します。
では例をみてみましょう。9 =>9と言う形式でファイルに改行を入れて書き込むことが出来ます。
これでt.datに「abcdef」「aiueo」が改行を入れて書き込まれます。
次の例をみてみましょう。9
9と言う形式でファイルに改行を入れないで書き込むことが出来ます。
結果はte.datに「abcdefaiueo」のように改行を入れないで書き込まれました。
次の例をみてみましょう。9 9と言う形式でファイルに改行を入れないで書き込むことが出来ます。
結果はt.datに「abcdefaiueo」のように改行を入れないで書き込まれました。
writeメソッドを使って、改行を入れて書き込みたい場合には以下の通り、9を入れます。9

次の例をみてみましょう。9 9と言う形式でファイルに書き込むことが出来ます。
結果はte.datに「abcdefaiueo」のように改行を入れないで書き込まれました。
次はファイルポインタについて説明します。
ファイルのデータを読み書きするには「ここまで読んだから次はここから読む」もしくは「ここまで書いたから次はここから書く」のように位置を覚えておかなくてはいけませんが、プログラマ自身が覚えている必要はなく、ファイルポインタと言う位置情報にこのデータが記録されています。
次の例をみてみましょう。9 「IOオブジェクト.pos」と言う形式で、現在のファイル位置を得ることが出来ます。
2バイト読み込んだので、現在のファイルの位置は2の箇所にあります。
例の実行結果は「ab」と「2」を出力します。
またposは現在の位置を知るだけでは無くて、任意の位置に移動することが出来ますので次の例で説明します。99 移動したい場合は9と記述します。
「i.pos=5」は5バイトだけ移動します。
5バイトで出力すると「fgh」を出力します。
「i.pos=0」は先頭まで移動します。先頭まで移動したので「abcdefgh」を出力します。
次はファイルポインタを移動するseekメソッドについて説明します
では例をみてみましょう。99 9で、ファイルポインタを自由に移動させることができます。
第 2引数のwhenceには以下の3種類から選択して、ファイルポインタの動きを決めることが出来ます。9 では例の説明をします。
「i.read(2)」で2のサイズだけ動いていて、その後に9でさらに5のサイズだけ移動しているので9で現在の位置を見ると7になります。
7進んだ位置で出力すると「h」を出力します。
9のように9に変更したとしますと、これは絶対位置なので9で現在の位置を見ると5になります。9
次はrewindメソッドについて説明します。
rewindメソッドはファイルポインタを先頭に戻します。
では例をみてみましょう。999と言う形式でファイルポインタを先頭に戻します。
puts i.posで出力すると0が出力されます。9

カテゴリー
Ruby

プログラムの基礎を知ろう

この章ではRubyのプログラムの基礎について説明します。
初めに先ほどインストールしたRubyのインタプリタが正常にインストールされたかどうかを確認しますので、コマンドプロンプトを起動した後に9と入力してください。
以下の画面が表示されたら、成功です。9 では基礎から説明します。
文字を出力するには以下のように9を使います。
例をみてみましょう。9 これをテキストエディタで書いて、保存してください。
例えば9のように9という形式で保存します。
そして、C の直下にRubyというフォルダを作成して、その中にファイルを入れます。
フォルダ名は自由に付けていただいても結構ですが、この講座ではRubyと付けます。
文字コードの指定は「Notepad++」の場合は「フォーマット」から9を指定してください。
この指定をしてからプログラムを書いて保存します。
どのテキストエディタを使っていても、文字コードは9で保存してください。9 コマンドプロンプトでファイルを実行するためにはそのファイルのある場所まで移動しなくてはいけませんので、「cd C:¥Ruby」と入力します。
つまり、9と書きますとそのファイルのある場所まで移動することが出来ます。
そして、その移動した先で9と入力しエンターキーを押しますと以下のように実行結果が出力されます。9 では例について詳しく説明します。
① printもputsも画面に文字等を出力するための機能を持っています。
print はデータを改行しないで出力します。
printの後のカッコはあってもなくてもいいです。
puts はprintとは違ってデータを改行して出力します。

②文字列を出力する時には必ず9もしくは9で文字を囲んでください。
文字を出力するときにはダブルクォート、シングルクォート自体は出力されません。
ダブルクォートやシングルクォートに囲まれた文字を文字列と言います。
しかしダブルクォートの中のダブルクォートそのものを出力しようとする時には注意が必要です。
例えば9と出力する場合には9のように書いてはいけません。
これを実行すると以下のようなエラーが出ます。9 エラーを出さないためには以下のように書きます。9 つまり、出力させたいダブルクォートの前に9を付けてください。
そうするとダブルクォート自体が出力されます。9 「Notepad++」を使っている場合、9ではなく9という表記になりますが、9と同じ意味です。
シングルクォートの中にシングルクォートそのものを出力させたい場合は以下のように書きます。9 つまり、シングルクォートの前に9を付けて9と書きます。
しかし、ダブルクォートの中にシングルクォートを含める時やシングルクォートの中にダブルクォートを含める時には9を付ける必要はありません。9 結果は以下の通りです。9

③ C言語などの言語は文の終わりにセミコロンを付ける必要がありますが、Rubyは1行に1文書く限り付ける必要はありません。
他の言語経験者でセミコロンを付けるのが慣れているのであればセミコロンを付けても問題ありません。
ですので9のように1行に2文書くとエラーになりますので、どうしても1行に2文書きたい場合は9のように文と文の間に9を付けます。

④ print(123)のようにカッコの中に数値を記述する時にはダブルクォートやシングルクォートで囲う必要はありません。
結果は「123」が出力されます。

⑤プログラムの中にはコメントが書けるのですが、以下の赤枠の箇所がコメントになります。9 「#」の後にコメントを書くと行の末尾までがプログラムに反映されなくなります。
一部のプログラム自体を実行させなくすることやプログラムの意味などを書きます。
複数行のコメントを書きたい場合には9から9の間にコメントを書いてください。

⑥ putsは文を改行してくれますが、printで改行したい場合は以下のようにダブルクォートの中に
9を付けてください。

「Notepad++」を使っている場合、9となります。9 結果は以下のように改行されて出力されます。9 「¥n 」を使って改行が出来るのはダブルクォートの中だけであり、シングルクォートの中で9のように改行文字を書くと以下のようにそのまま改行文字が出力されて、改行の機能はなくなってしまうので注意してください。9
⑦ Rubyで使われるデータをオブジェクトと言います。
例えば「”Hello”」は文字列オブジェクトです。文字列オブジェクトは詳しく言いますとstringクラスのオブジェクトになりますが、詳しい説明は「stringクラスについて知ろう」で説明します。
「123」は数値オブジェクトです。数値オブジェクトは詳しく言いますとIntegerクラスのオブジェクトになりますが、詳しい説明は「Numericクラスについて知ろう」で説明します。9 =>このプログラムは文字コードにUTF-8を使ってコマンドプロンプトで出力していますが、コマンドプロンプトの文字コードはShift_JISですので、出力する時には文字化けしてしまいます。ですので、このUTF-8をShift_JISに変換してから出力しなくてはいけません。
その文字コードの変換をしてくれるのがkconvと呼ばれているライブラリです。
ライブラリとはRubyであらかじめ機能が定義されているファイルの集合体です。
例えば、kconvは文字コードの変換をしてくれる機能を持ちますが、このような便利な機能が集まっているのがライブラリです。
また、ライブラリをプログラムの中に取り込むにはrequireを使用しますが、この例では9と書いています。
⑨このプログラムはUTF-8で作成していますが、それを明記しているのが9の部分です。この記述は決まりきった型なので、このまま覚えてください。
今ではUTF-8は主流の文字コードですので、この教材でもUTF-8を使用します。

カテゴリー
PHP

PHPの基本を知ろう

この章ではPHPの基本について説明します。
PHPプログラムはHTML内に直接組み込んで書いていきます。
では例をみてみましょう。1111
例えば1などと全角で書くことはできません。
半角でしたら大文字でも小文字でも問題ありませんが、大文字だと読みにくいので小文字で書くのが普通です。
1画面に出力する1などの文字は半角でなくても問題ありません。
1printもしくはechoは画面に文字列を出力する機能を持っていますので、この例の場合は1と出力されます。
1print () もしくはechoを使用して、こんにちは、猫、犬のような文字列を出力するには1もしくは1で文字列を囲まないといけません。
ダブルクォートもしくはシングルクォートで囲まれたものは文字でも数字でもすべて文字列になります。
例えば例にあるように猫と言う文字を出力させるためには文字列を1もしくは1のようにダブルクォートもしくはシングルクォートで囲まないとエラーになります。
出力結果にはダブルクォートやシングルクォート自体は表示されません。
つまり、1もしくは1と出力されるわけではありません。
数値を出力する場合にはダブルクォートもしくはシングルクォートで数値を囲む必要はありません。
つまり数値を出力した時には1と書きます。
ダブルクォートもしくはシングルクォートで123のような数値を囲んでもエラーにはなりませんが、囲んだ時にはそれは数値ではなく、文字列になります。
1111この例の場合は1と出力されますが、1と順番を逆にしたい場合は
1と逆に入力しなくてはいけません。
1phpの前にドットがありますので忘れないようにしてください。
例 sample.php
1この本ではすべてのプログラムにUTF-8を使用します。
以下のHTMLのmeta要素内にプログラム内で使っている文字コードを書いてください。
つまり、1の箇所です。
では例をみてみましょう。
1そしてNotepad++を使っているのであれば、その設定もプログラムを書く前に1に設定します。
フォーマットタブの中で変更してください。11 htdocsの中に新しいフォルダであるworkを作成してください。
例えばプログラムに1という名前を付けた後にはそれをworkの中に保存しますので1と、なります。
実際に画面に出力するためにはブラウザのURLを入力する欄に1と、入力してください。
そうすると以下のようにブラウザに出力結果が表示されます。1

カテゴリー
Perl

Perlの基礎を知ろう

この章ではPerlの基礎について説明します。1 プログラムは基本的には先頭から順番に実行されていくというのが基本です。1 11プログラムを書く前にTeraPadであれば表示メニューの中の編集モードをPerlにしてください。
書き終わりましたらファイルを保存しますので、TeraPadの「ファイル」の中の1をクリックします。
クリックしますと以下のダイアログボックスが開きますので文字コードを「UTF-8N」を選択してOKを押してください。1 OKを押しますと以下のダイアログボックスが開きますので、ファイル名に好きなファイル名を入力します。
この時、拡張子は必ず1にしてください。
つまり、1と書きます。
そして、ファイルを保存する場所は1です。2015-05-02_203000 保存しましたら、ブラウザのURLを入力する箇所に以下のように入力します。
ファイル名は自身で決めたファイル名を入力します。1 実行するとブラウザにプログラムの内容を表示させることが出来ます。
表示する時に文字化けが起こるのならばブラウザのエンコードが他の文字コードになっていますので、これを変更します。
windows7の場合で説明しますと初めに画面の上で右クリックします。クリックしますとメニューが開きますのでその中のエンコードを1に変更してください。
これで文字化けは直ります。
では先頭から解説します。1 「c:/perl/bin/」の場所にプログラムを翻訳してくれるActivePerlがあることを示しています。
レンタルサーバを借りて、webページを動かすときにはレンタルサーバの業者により、ここの記述は違うので、Perlのパスを確認してください。
例えば以下のサーバー業者ではサイトのQ&Aに書いてあります。1 1ここはCGIヘッダーと呼ばれる部分でCGIプログラムを実行する場合、初めにCGIヘッダーを送る規則になっています。
「Content-type」の右側は送信されたデータがどのような内容のものなのかを示しています。
この例のようにテキスト形式(文字情報だけ)で出力するのであれば1を指定します。
HTML文書として出力したい場合、以下のように1を入力します。
つまり、CGIヘッダーはこれから送るのはテキスト形式ですよ。
もしくはHTML形式ですよと宣言する役割を持っています。
「text/html」の例は以下の通りです。1 1$cats, $number1 ,$number2など文字の先頭に$が付いた形式をスカラー変数もしくはただ単に変数と呼びます。
スカラーとは11などのことを言いますが、そのスカラーというデータを入れている変数なので「スカラー変数」と呼ばれているわけです。
次に変数について説明します。
変数とは何かしらのデータを入れる箱みたいなものです。
バッグを例に取るとバックには財布やハンカチを入れて持ち運びますが、そのバックに当たるものが変数です。
そして、このバッグに入っている財布やハンカチがデータに該当します。
もしくは、変数とはフロッピーディスクみたいなもので、その中にデータを記憶させておくことが出来ます。1 変数には名前を付けなくてはいけないのですが、この例でいいますとcats、number1 、number2が変数名です。
$と変数名が付いた形式で初めて変数になります。
この例では変数名にcats、number1 、number2と付けましたが、名前を付ければ何でもいいというのではなく、一定のルールがあります。
1つ目は$の次の1文字目は数字で始めることはできません。
例えば$3catsという名前は付けることはできません。
2つ目は$の次の1文字目は
「アンダースコア(_)」
「aからz」「AからZ」が使えます。
3つ目は$の次の次からは
「アンダースコア(_)」
「aからz」「AからZ」、
「数字」が使えます。
4つ目は同じ文字でも大文字と小文字は全く別の変数になります。
例えば$catsと$CATSは全く違う変数になります。
また、変数名には「入れるデータに関連した名前」にして誰が見てもわかりやすくしましょう。
猫に関連しているのなら$catsなどと付けます。

次に変数へのデータの入れ方について説明します。
例の「$cats=”三毛猫”;」に「=」と言う記号がありますが、これを代入演算子と言います。数学のイコールとは関係ありません。
代入演算子は右辺のデータを左辺に入れる役割があります。
例で説明しますと$catsと言う変数に1と言うデータを入れるという意味です。
このデータを入れる行為を「代入」と言います。
注意してほしいことは同じ変数に他のデータを代入してしまうと後から代入したデータで上書きされますので注意してください。
例えば以下の例では「三毛猫」を「どら猫」で上書きしてしまいます。1 次はシングルクォートとダブルクォートについて説明します。
「三毛猫」「犬」のような文字列を変数に代入するには1もしくは1で文字列を囲まないといけません。
ダブルクォートもしくはシングルクォートで囲まれたものは文字でも数字でもすべて文字列になります。
例えばダブルクォートもしくはシングルクォートで文字列を囲まないで1のように書きますとエラーになります。
1のように数字を変数に代入する場合にはダブルクォートもしくはシングルクォートで数字を囲む必要はありません。

次に文の末尾のセミコロンについて説明します。1 文の終わりにセミコロン「;」が付いていますが、これは日本語の文章の「。」と同じ意味で、文の終わりを意味します。
文の終わりにはセミコロンを必ず付けてください。1 「print」という文字がありますが、これは文字列を出力する関数です。
関数とはエクセルを学習したことがある人はわかると思いますが、Perlの関数の仕組みはエクセルの関数の仕組みと意味は同じです。
例えばエクセル関数にSUMと言う関数が有りますが、この関数は指定した範囲のデータに基づいて足し算を行う関数です。
例えば指定した範囲のデータが3,5,7であるならば結果は15です。
SUMには初めから指定した範囲の足し算を行うと言う仕組みが備わっています。
つまり、エクセルの内部機構でSUMの機能は指定した範囲の足し算を行うと言うプログラムがされていると言うことです。
これが関数の意味です。
Perlにもあらかじめ機能が決められている関数が有ります。
その数多くの関数の中の一つがprint関数ですが、この関数には「文字列を出力する機能」がPerlの内部機構により初めから決められています。print関数は以下のように括弧で囲んでもいいです。
つまり括弧があってもなくてもどちらでもいいです。1 次に文字列の中に変数を入れるときの注意点について説明します。1

1 のように文字列の中に変数が含まれている場合はダブルクォートで文字列を囲ってください。
ダブルクォートで囲うことによって、変数の中に入っている値を表示させることが出来ます。
これを変数展開と呼びます。
この例の場合は$catsの中に代入されている三毛猫と$number1に入っている2、そして$number2に入っている3が出力されます。
つまり、1 を出力しますと
三毛猫を2匹飼っています
三毛猫を3匹飼っています
と出力します。
上の例の1は改行を意味しています。
例えば1を外しますと
1のように改行しないで出力されます。
また、文字列が含まれていない、つまり変数だけの1のような文の場合には変数をダブルクォートで囲う必要はありませんが、以下のようにダブルクォートで囲っても問題ありません。1 では次のように変数が含まれている文字列をシングルクォートで囲んだらどうなるでしょうか?1 結果は1という文がそのまま出力されます。シングルクォートは囲ったものをそのまま表示します。
つまり、$catsに代入されている三毛猫と言う文字と$number1に代入されている2と言う数字が変数展開されなくなるので注意が必要です。

ここで気を付けてほしいことを説明します。
例えば以下の例のように1に変えて出力させようと思っても結果は1となってしまいます。
原因は$number1hikiが変数として認識されてしまうからです。1 これを正しく出力させるために書き換えますと以下のようになります。1 解決方法は変数名を1で囲んでください
これで正しく1と出力されます。

では今度はprint文を今までとは違う形で書く2つの方法について説明します。1 今までは上の例のように文全体をダブルクォートで囲んでいましたが、これを別な方法で書き換えると以下のようになります。1 この書き方はドット「.」で文字列と文字列を連結する方法です。1 このドットは「文字列演算子」と言いまして、ドットの右辺と左辺の文字列を連結する働きがあります。
ここで少し疑問に思った人がいるかもしれませんが、ドットは文字列同士を連結する演算子なのに$number1には数字の2が入っています。そこでPerlは数字の2を文字列の1に自動的に変換します。
これは文字列連結演算子を使う場合にはドットの右辺と左辺の値を文字列として扱うためです。1 変数と文字列の間をカンマ「,」で区切る方法です。
この方法は変数と文字列の間だけではなくて、変数と変数の間をカンマで区切ることもできます。1