カテゴリー
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

カテゴリー
C言語

変数について知ろう

この章では変数について説明します。
変数とはデータを入れることができる入れ物に似ています。
例えば携帯電話やフロッピーディスクにデータを記憶すると持ち運びが出来ますが、この携帯電話やフロッピーディスクに相当するものが変数です。
変数にデータを入れながら、プログラムを書いていくのが基本です。
では例で詳しく説明します。11 「データ型名 変数名;」という構文を「変数の宣言」と言います。
データ型は「データ型について知ろう」で説明します。
この例では以下が変数の宣言です。1 変数を使用するためには必ず変数の宣言が必要です。
つまり、「これからこの変数を使用しますよ」と宣言するのが変数の宣言です。
変数には名前を付けなくてはいけないのですが、この例ではaが変数名です。
本に関係しているプログラムであればbookなどと変数名を付けます。
この例では変数名にaと付けましたが、名前を付ければ何でもいいというのではなく、一定のルールがあります。11111 予約語とはすでにC言語の言語仕様で機能が定義されている単語のことです。
次の表が予約語です。
以後、学習が進んでいくうちに予約語は自然と覚えますので、ここでは覚えなくても結構です。 11 次に「データ型名」について説明します。1 変数の前に「int」が付いていますが、これがデータ型です。
変数を使用するにはまず初めに『この変数は何型の変数です』と宣言しなければいけません。
データ型については「データ型について知ろう」で詳しく説明しますが、簡単に言いますとどのようなデータを変数に入れるのかにより型名は変わります。
この例では整数の2を変数aに入れているので、intを使用しています。1 これまで変数の宣言について説明してきましたが、次の例で変数の宣言の注意事項について説明します。1 変数の宣言は必ず関数の先頭で行ってください。
つまり、例のように宣言の前に余計なものがありますとエラーになります。
この例は「int a;」の前に1が書いてありますので、エラーです。

次は変数へのデータの入れ方について説明します。
変数の宣言が終わりますとデータを入れることが出来ますが、以下の構文でデータを入れます。1 変数を宣言してから、データを入れるというのが基本です。
データ型名は変数の宣言の箇所のみ付けてください。
例の「a=2;」の中に1と言う記号がありますが、これを代入演算子と言います。
数学の「=」とは関係ありません。
代入演算子は右辺のデータを左辺に入れる役割があります。
例で説明しますとaと言う変数に2と言うデータを入れるという意味です。
この入れる作業を「代入」といいます。
注意してほしいことは以下のように同じ変数に他のデータを代入してしまうと後から代入したデータで上書きされますので注意してください。1 つまり、結果は「変数の値は2です変数の値は20です」となりますが、整数のaに代入されていた2が1の箇所で20に上書きされます。
変数には1つしかデータを入れることができないことを覚えておいてください。
ここで変数に関しての補足をしておきます。11 他の入れ方としては以下の構文のように変数の宣言と同時にデータを入れることもできます1 これを変数の初期化と言います。
入れるデータのことを初期値と言います。
例えば先ほどの例は以下のように書き換えることができます。1 どちらの方法でデータを入れても結構です。1 次は先ほどの例の以下の箇所を説明します。1 printfについては以前、説明しましたが、その時には1のようにprintfの中の引数は文字列でした。
しかし、整数を出力させようと思って1と書いても出力することはできません(エラーになります)。
1の3の部分をダブルクォートで囲んで1と書けばエラーにならず出力はできますが、数値をダブルクォートで囲むと整数ではなくなって、文字列として出力されることになります。
では、整数型の数値を整数として出力させるにはどうしたらいいか。
それは例にあるように1という変換指定子を使います。
この例の変換指定子はaの値を1の箇所に置き換えます。1 このように数値などのデータを文字列に変換して表示させたい時に変換指定子を使います。
ここで大事なのは1と書いて出力されるのは変数の中に入っているデータであり、aという変数名が出力されるわけではありません。
つまり、この例ではaに入っている2というデータが出力されます。
つまり、結果は1になりますが、1と出力されるのではありません。

では変換指定子の基本構文について説明します。1 「テンプレート」はダブルクォートで囲んでください。
そして、このテンプレートの中に文字列と変換指定子を自由に組み合わせて記述します。
テンプレートとは「型」と言う意味なので1という型で出力しますという意味です。
変換指定子はたくさんありますが、1int型の数値である整数を出力するときに使います。
基本構文の「変数」の箇所は変数ではなくても、直接数値などを指定してもいいです。1 では他の例をみてみましょう。
これまでの例ではprintfの中の変換指定子は1つでしたが、以下の通り複数の変換指定子を設定できます。1 変数と「変換指定子」の対応関係は以下の通りです(スペースの都合でprintfの引数を2行で書いていますが、1行で書いていただいても結構です)。1 テンプレートの一番左側の変換指定子と変数側の一番左の変数は対応関係にあります。
テンプレートの真ん中の変換指定子と変数側の真ん中の変数は対応関係にあります。
テンプレートの一番右の変換指定子と変数側の一番右の変数は対応関係にあります。
変数と変換指定子の数は合わせて書いてください。