おはやし日記

テーマ……バイク←プログラミング←旅

Automate布教連載: 2

 こんにちは。今回もAutomateの機能を紹介していきたいと思います。前回の記事は以下です。

 

o-treetree.hatenablog.com

入力と出力

前回はHello, world!を出力しました。今回は,入力に対する処理をやってみます。

入力文字列を返す

↓まずは「INTERFACE」タブから「Dialog Input?」を選択します。

↓こんな感じで設定します。TITLEは任意,INPUT TYPEは今回はTextにします。TIMEOUTは別に設定しなくてもいいのですが今回は入れてみましょう。10秒に設定したので,入力ダイアログ表示から10秒以内に入力が完了しないと,上画像の「Input dialog」ブロックの「NO」の方に分岐してFlowが終了します。

前回同様,SHOW WINDOWにチェックを入れます。

OUTPUT VARIABLES(出力変数)は,このブロックでは入力されたテキストになります。ここでは"text"にしていますが,変数名なので好きなものでいいです。日本語も使えましたw

後々,この変数を使って出力ダイアログにメッセージを表示します。

↓前回も使った「INTERFACE」内「Dialog message」ブロックを設定します。前回と大きく違うのは,引数MESSAGEです。入力欄の右のfxを押すと,「MESSAGE = 」の形式になります。ここにさっき作った変数"text"を入れます。

ちなみに,TITLEに文字を入れた状態でfxを押して切り替えると,「TITLE = "入力されたのは"」という感じになっています。これはこれで引数TITLEに文字列を与える方法です。

TIMEOUTは適当に5秒にします。SHOW WINDOWは必要です。

↓最後に,3つのブロックをつないで完成です。

↓それでは,やってみましょう。Startを押すと入力ボックスが出てきます。「こんにちは」と入力してキーボートのエンターなり,ボックスの「OK」を押すと,変数”text”にテキスト「こんにちは」が格納されます。

↓で,次のブロックに移行して,メッセージの出力が行われます。

以上です。簡単!!!

足し算をする

今回はもう一つ,足し算をやってみましょう。

シミュレートするのはこんなプログラム

#include <stdio.h>
    
int main(void){
    int a, b, c;
    printf("a = ");
    scanf("%d", &a);
    printf("b = ");
    scanf("%d", &b);
    c = a + b;
    printf("answer\n");
    printf("a + b = %d", c);
    return 0;
}

では,やっていきましょう。

↓まず,「INTERFACE - Dialog input?」を設定します。ポイントは,引数INPUT TYPEをNumber(整数型)にすることです。出力は"a"にしておきます。

 

↓もう一つ,"b"を作りますが,ここで小技発動です。といってもただのコピペです。ブロックが並ぶ画面に戻ってブロックを長押しします。で,上のコピーマーク(右から2つ目の書類が重なったマーク)を押してコピーします。

↓空いてるところを長押ししてペーストします。ペーストされたブロックをタッチして編集して,a を b に書き換えておきましょう。

↓さて,ここで答えを格納する変数cを用意します。「GENERAL」内に「Variable set」ブロックがありますので,選択して以下のように設定します。わかりやすいですね。

↓で,最後に出力ダイアログです。TITLEは適当に。肝心なのは引数MESSAGEです。fxを押して以下のように書きます。

"a + b = "は,(""で囲っているため)単なるテキストです。++は左右のオペランドを結合してテキストにする演算子です。右の変数 c には,先ほど「c = a + b」として足し算の結果を代入しているので,その値がくっつきます。

↓全部繋げたら完成です。

↓動作を確認してみましょう。Flowを開始して,「a =」のダイアログが出てくるので7を入れてみました。INPUT TYPEをNumberにしているので,キーボードが自動的に数字しか入れられないようになるかもしれません。

↓次に「b =」のダイアログが出てくるので9を入れてみました。

↓「answer」のダイアログが出てきます。ちゃんと計算できていますね。「a + b = 」の部分はテキストなので数字は入りませんよ。

 今回は入力の受付と,演算子を使えることを簡単に紹介しました。それぞれのブロックの細かい解説や変数型,演算子の解説も後々紹介したいと思います。おわり。

プライバシーポリシー ・お問い合わせはこちら