ここでは,整数型と実数型の変数について述べていきます。
宣言の仕方は文字型と同じです。整数型を宣言するときは一般的には「integer」を使います。他にも「shortint」や「longint」などいろいろありますが,Lazarusがサポートしている整数型の種類がわからないので,「integer」だけで構わないと思います。
実数型には「real」を使います。実数型の種類もいろいろありますが,「real」だけで構わないと思います。
実際の記述は下記のようにします。
私は習慣的に整数型の変数は,「int」を使っていますが,自分のわかりやすい名前を考えてください。
整数型の変数と実数型の変数を使って,四則計算をしてみたいと思います。まず四則計算の演算記号について紹介します。
・たし算……記号は半角記号の「+」です。
・ひき算……記号は半角記号の「-」です。
・かけ算……記号は半角記号の「*」です。
・わり算……記号は半角記号の「/」です。
わり算については他にもあります。
・わり算の整数商を求めるときは「div」を使います。
・わり算の整数商の余りを求めるときは「mod」を使います。
ここで注意することを確認します。整数同士の四則計算の答えはそのほとんどが整数になりますが,唯一「/」を使ったわり算の答えは実数になります。
以上のことを踏まえて,簡単なプログラムを作ってみます。
まずフォームの設計をします。フォームの上にEditコンポーネントを2つ,Labelコンポーネントを1つ,Buttonコンポーネントを5つ貼り付けてください。
このプログラムの流れですが,Editコンポーネントに入力された数字をもとに,四則計算を行います。計算の種類はそれぞれのボタンに割り振ります。答えはLabelコンポーネントに表示させます。
次に,Button1からButton5までの[OnClick]イベントを呼び出してください。そこに四則計算を使ったソースコードを記入していきます。
まず,Button1の[OnClick]イベントには下のように記述してください。
上の説明をしていきます。
@,AはEditコンポーネントの内容を文字型変数に代入します。
B,Cについてですが,str1は文字型なので,これをそのまま計算することは出来ません。ここで文字型変数を整数型変数に変換する必要があります。そこで使うのが「strtoint」という関数です。これで文字型変数を整数型変数に変換することができます。
この関数を使うときに注意することがあります。もしstr1の中に数字以外の文字がある場合,整数型に変換できないので,ここでエラーが起きます。本来ならエラー対策をするのですが,エラー対策はとばします。
Dは2つの整数型変数をたした答えをintに代入します。
Eは答えをLabelコンポーネントに表示させます。そのためには整数型の変数を文字型の変数にする必要があります。整数型の変数を文字型の変数に変換するときに使うのが「inttostr」という関数です。これを使って文字型に変換してからLabelコンポーネントに表示させます。
同様にして引き算とかけ算についても記述していきますが,上記のソースコードのDだけ変えればいいことなのですぐにできると思います。
次はわり算の計算を行いますが,わり算の答えは実数になるので少し変えます。
上の説明をします。変数宣言ですが,ここでは整数型を2個使用するので,「str」を削除しました。その代わり,実数型として「rea」を宣言しました。これは何でもいいのですが,realを連想しやすいので「rea」にしました。
Eの部分ですが,ここで実数型変数を文字型に変換する必要があります。そのときに使うのが「floattostr」です。これで実数型を文字型にすることができます。
最後は整数商とあまりを表示する計算です。
上の説明をします。変数宣言では整数商とあまりを表示するため,整数型の変数を4個にしました。そして実数型は削除しました。
@からCは上記と同じです。
Dで整数商を求めます。
Eであまりを求めます。
Fでは整数商とあまりの間に,「あまり」という言葉を入れてLabelコンポーネントに表示します。
ここで作成したファイルを掲載します。よければダウンロードしてください。
→ダウンロード
ファイルのものは,Editコンポーネントのエラー対策などを加えたので,上で掲載したものとは少し異なります。