トップ » 技術記事 » 日本語で覚えるプログラミング(4) - ダイアログでユーザーと対話しよう

日本語で覚えるプログラミング(4) - ダイアログでユーザーと対話しよう はてなブックマーク数 このエントリーをブックマークに追加

前回まで、なでしこの基本的な使い方やその魅力をを紹介しました。今回は、質問用のダイアログを使って気軽にユーザーと対話するプログラムを作ってみようと思います。

簡単な計算をしてみよう

前回、日付の計算を行うプログラムを作ってみましたが、普通の足し算や引き算を行う場合には、「+」や「-」の記号を使って計算を行うことができます。

たとえば、1+3の計算を行って画面に結果を表示するプログラムは次のようになります。

1+3を表示。
http://aoikujira.com/demo/hakkaku/rc/20081012_4.png

1+3とだけ書いても、なでしこは計算を行うのですが、計算を行っただけで画面には何も表示しません。「(計算式)を表示」のように、表示することを書くことで画面に文字を出力することができます。

計算式に使える記号は以下のように書くことができます。

記号 意味 利用例 出力結果
足し算 1+3を表示。 4
引き算 6-3を表示 3
× または * 掛け算 3×2を表示。 6
÷ または / 割り算 4÷2を表示。 2
割り算の余り 6%4を表示 2
べき乗 2^3を表示 8

また、カッコをつけて計算式を書くと、カッコの中を優先して計算するようになります。以下のプログラムを実行すると、カッコの中を優先して計算して、答えの9を表示します。

(1+2)×3を表示。
http://aoikujira.com/demo/hakkaku/rc/20081012_9.png

ユーザーに質問する

なでしこで、ユーザーに何か数値を質問したい場合には、「尋ねる」命令を使うことができます。以下のプログラムは、ユーザーに名前を尋ね、入力された文字列を元に挨拶するプログラムです。

「お名前は?」と尋ね、ユーザー名に代入。
ユーザー名を表示。
「こんにちは」と表示。
http://aoikujira.com/demo/hakkaku/rc/20081012_HelloKujira.png

上記のプログラムでは、変数「ユーザー名」を利用しています。プログラミングにおける変数というのは、数値や文字列などのデータを一時的に保存しておける便利な箱のことです。

プログラムの一行目では「尋ねる」命令でユーザーから入力を得て、それを変数「ユーザー名に」代入しています。

ところで、なでしこでは、メッセージの中に変数の値を埋め込むことができます。変数の埋め込みを利用して書いた挨拶プログラムは次のようになります。

「お名前は?」と尋ね、ユーザー名に代入。
「こんにちは、{ユーザー名}さん」と表示。
http://aoikujira.com/demo/hakkaku/rc/20081012_hello2.gif

肥満度判定ツールを作ってみよう

もちろん、ユーザーの名前を聞くだけでなく、入力された数値をもとに、簡単な計算を行うことができます。以下のプログラムは、ユーザーが体重と身長を入力すると、BMIという計算式をもとにした肥満度を算出するというものです。

# --- 入力
「身長(cm)は?」と尋ねて、身長に代入。
「体重(kg)は?」と尋ねて、体重に代入。
# --- 計算
BMI=体重÷(身長÷100)^2
理想体重=(身長÷100)^2×22
肥満度=INT(体重÷理想体重×100)-100
# --- 結果
「
BMI={BMI}(22が標準)
肥満度={肥満度}%
」を表示
http://aoikujira.com/demo/hakkaku/rc/20081012_BMI.png
http://aoikujira.com/demo/hakkaku/rc/20081012_BMI2.png

試しに、身長180cm、体重80kg を入力すると、肥満度が 12% という結果が表示されました。

ファイルの選択ダイアログを使ってみる

「尋ねる」命令を使うと、ユーザーに任意の文字列を入力してもらえることが分かったと思います。そこで、次に、ファイルの選択ダイアログを表示する「ファイル選択」命令を使ってダイアログを表示されてみます。

「*.*」のファイル選択して、対象ファイルに代入。
対象ファイルを表示。
http://aoikujira.com/demo/hakkaku/rc/20081012_open-dialog.png

「ファイル選択」命令を使うと、拡張子を指定したファイルの選択ダイアログの表示が可能です。すべてのファイルから選択する場合には、『「*.*」のファイル選択』と書きます。もし、テキストファイルを選択する場合には、『「*.txt」のファイル選択』と書きます。

もう少し、実用的な例として、ファイルの圧縮を行うプログラムを作ってみます。以下のプログラムは、ファイルを選択すると、そのファイルを、圧縮するというものです。

「*.*」のファイル選択して、対象ファイルに代入。
対象ファイルを「.zip」に拡張子変更して、保存名に代入。
対象ファイルを保存名に圧縮。
終わる。

ファイルを圧縮する際に、圧縮先のファイル名を決めなくてはなりません。このとき、「拡張子変更」命令で、拡張子を".zip"と置き換え、保存名に代入します。最後に「圧縮」命令で圧縮してプログラムを終わります。

本格的な文章を入力してもらう場合

なでしこでは、本格的な文章を入力してもらうために「メモ記入」という命令が用意されています。この命令を実行すると、本格的なテキストエディタが表示されます。

メモ記入して、対象に代入。
対象を表示。
http://aoikujira.com/demo/hakkaku/rc/20081012_memo-input.png

この命令を使えば、長い文章を入力してもらうのにも便利ですし、何より、ダイアログの中だけでファイルを読み書きすることができるので、ファイルを読み込んでもらって、それを確認した上で、プログラムにデータを渡すということもできます。

「言う」命令も便利

それから、ダイアログと言って忘れてはならないのは、なでしこの「言う」命令です。この命令を使うと、ダイアログにメッセージを表示できます。

「こんにちは」と言う。

ただ、メッセージを表示するだけですが、メッセージを右クリックすると、なんと、メッセージをクリップボードにコピーすることができるんです!!

http://aoikujira.com/demo/hakkaku/rc/20081012_iu.png

これが結構便利で、これを使いだすと、Windows標準のダイアログが、なぜメッセージをコピーできないのか不思議に思ってしまいます。

まとめ

以上、今回は、なでしこで四則演算を行う方法からはじめて、「尋ねる」命令や「言う」命令、「ファイル選択」命令と、ダイアログに関連した命令をピックアップして紹介してみました。なでしこには、多くのダイアログが用意されているので、ぜひ、使ってみてください。

Series Navigation«すぐに使えるちょっと便利な使い方

このサイトについて

八角研究所
株式会社八角研究所のWEBサイトですよー。 いろんなものを創り出すことのできる環境をコツコツ構築中。 いったい、いつになったらできるのか。 この技術情報サイトもそのための活動の一環のつもり。

執筆者紹介

クジラ飛行机

クジラ飛行机

くじらはんど(http://kujirahand/)にて、日本語プログラミング言語「なでしこ」(IPA未踏ユース採択)、テキスト音楽「サクラ」(OSPオンラインソフト大賞入賞)など多くのオンラインソフトを開発。著書に「Flexプロフェッショナルガイド」「なでしこ公式バイブル」、「一週間でマスターするActionScript3.0」など。

TrackBack URL :