• ベストアンサー

processingの文字入力について

現在、プログラミング言語processingを勉強しているのですが、どのようにプログラムを書いたらいいか分からないので、教えてください。 作ろうとしているのは、フラッシュ暗算を行うプログラムなのですが、 processingの場合は、文字入力するときに、1文字しか認識されませんが、 もし2文字、3文字などを入力したい時は、どのようにすればいいのでしょうか? 例えば、フラッシュ暗算で、合計値が52だったとき、52を入力すると、正解とでるプログラムを作りたいわけですが、おそらく配列を使うと思いますが、いったいどのようにしたら52という数字を配列に格納させればいいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.2

> 値を保持するには、どうすればいいのでしょうか? keyPressed()メソッドよりも寿命の長い変数を用意して、そこに格納すればいいです。

その他の回答 (1)

  • salsberry
  • ベストアンサー率69% (495/711)
回答No.1

Processingは触ったことがありませんが、考え方だけ。 入力する数字の桁数が決まっている場合は、別に配列を使う必要はありません。 2桁固定だったら、10の位の数字をaという変数に、1の位の数字をbに入れて、a*10+bの計算をすればいいだけです。 問題は、2桁の入力が可能だけど答えが1桁ということもある場合です。答えが7のときは必ず07と入力させるとか、7#のように、入力の終わりを示す記号を入力させる(この場合は答えの計算方法も変わってくる)とかの手段を考える必要があります。

final2909
質問者

補足

配列使わなくてもできるのですか。 でもどうやったらいいのですか? 値を保持するには、どうすればいいのでしょうか? processingの場合、 void keyPressed(){ } という関数があって、入力した値は、keyという変数に入るようなのですが、例えば、最初に1を押したとすると、 key=1になりますが、もう一回キーを押すと、1というデータは消えてしまって、新しいデータに更新されてしまうのですが。

関連するQ&A

  • Processing

    Processing の勉強を始めました。 File名を入力して、そのファイルからデータを loadするというプログラムはProcessing では書けないのでしょうか。Examples には載ってないようですが。

  • ある特定も文字'#'が入力されるまで実行

    C言語である特定の文字#が入力されるまで 入力し、#が入力されたら、合計を出力するプログラム はどのようだと思われますか? #はgetchar()でとるのが最善でしょうか?

  • Processing言語 listの配列数

    Processing言語を学習中です。 いくつか質問がありがありますので、箇条書きにさせて頂きます。 (1)ポートの検索 マイコンとUSB経由で接続しシリアル通信をさせているのですが Processingのプログラム上で自動的にUSBが刺さっているポートを 検出する方法はありますか? (2)「list」の配列数 Processing言語の「list」をPrintlnで出力すると [0] COM1 [1] COM2 [2] COM7 が出力されますが、この配列数(0~2・・・)を求める方法ありますか? http://www.technotype.net/processing/reference/libraries/serial/Serial_list_.html (3)テキスト(txt)に追加で書き込む 「createReader」または「createWriter」で選択したテキストは 一度プログラムを終了させ、再度起動させると選択したテキスト に上書きで書込み、前回のデータが消えてしまう。 「createReader」または「createWriter」で選択したデータに 追加で書き込む方法はありませんか? 御返答よろしくお願い致します。

  • 整数型の配列に a,b,c,: などの文字を入れたら・・・

    整数型の配列に整数データを格納するプログラムで、 入力時に文字を入力してしまった場合、 エラーチェックを行いたいのですが、 具体的にどのような方法があるのでしょうか? 文字を入力した場合に、 とてつもないことがDos画面でおこってしまいます。 どうか皆さん、よろしくお願いします。 言語はC言語で、 visualC++6.0を使っています。

  • 文字入力が!

    文字を入力する時に、キーボード上の文字と違う文字が出てきます。 たとえば「@」を入力しようと思うと数字の「2」をシフトキーで。「¥」を入力しようと思うと「む」のキーを押す・・・という風にキーの位置が変わってしまったんです(T^T)←このようにかっこを使って絵文字を作るのも一苦労です!! 以前に言語バーが出てこなくなって、それを直そうと、ヘルプのページを見ながらちゃんとしたつもりだったんですが、言語バーも以前と違うし、文字入力もそれからおかしくなったんです。 元に戻したいのですが、お願いします。

  • 演算対象の数字と演算子を入力して計算させる

    数字と演算子をそれぞれ入力し、優先順位の高い順に四則演算させるにはどのような考え方をすればよいのでしょうか。 数字をa[7]とおいて、演算子をop[7]としてそれぞれ配列に格納しましたが、そこから先に進めません。 オペランドと演算子の組み合わせならば優先順に計算してくれるのはわかっていますが、オペランドと演算子を格納した配列では上手く行きません。 実は既に全ての演算子の組み合わせをIfで表示させるプログラムを根性で作ったのですが、最適解を知りたいです。 言語はCでvisualstudioを使っております。 条件はn回数字を入力したらn-1回演算子を入力し、n回目に=を入力する。nの最大値は7とする。です。 だらだらと見辛い文章で申し訳ありませんが、何卒宜しくお願いします。

  • しばらくすると文字入力できなくなります

    こんにちは。お知恵を貸してください。 VAIOのノート型でOSはMe、ブラウザはネスケの4.5を使用しています。 言語はATOK14を使っています。 症状としてはブラウザを起動した時は普通に文字入力できるのですが、しばらく経つと文字入力できなくなってしまいます。 文字入力というかタブキーやエンターキーも認識しなくなるので キーボードそのものを認識していないのかもしれません。 この症状はどうやったら治すことが出来るのでしょうか? おわかりになる方、よろしくお願いします。

  • 入力された文字列を一文字ずつ配列に格納する方法

    例えばABCって文字列が入力されたら配列に data[0]="ABC" と格納するのではなく data[0]="A" data[1]="B" data[2]="C" と格納するにはどう書けばいいのでしょうか?

  • アート/デザインのためのプログラミング言語―Processing[BETA]の使い方

     アート/デザイン関係者の間で使われ始めているProcessing[BETA]というプログラミング言語をダウンロードしたのですが、プログラムを実行しようとすると C:/Documents and Settings/???^??????/My Documents/n/processing-0125/processing-0125/..java:0:0:0:0: Semantic Error: The input file "C:/DOCUME~1/^??/LOCALS~1/Temp/build48838.tmp/Temporary_216_4180.java" was not found. というエラーが出て実行できません、どうすれば良いでしょうか。 回答お願いします。

  • C言語のプログラミングについてです。

    C言語のプログラミングについて教えて欲しいです。 scanf関数を用いて、キーボードから文字列(最大30文字)を読み込み、これをchar型配列に格納します。最大10個までの文字列が入力された場合か、「END」が入力された時、入力された逆順で画面に表示するプログラム。作成しなさい。 〈完成例〉 adjm 10mdjp jpd-4 njad' END njad jpd-4 10mdjp adjm

専門家に質問してみよう