N88互換BASIC for Windows95(手引き書) - INPUT


◇ 困っていたこと  (INPUT Q$ )

 (2004/ 1/20 解決途上中→本項の後半部に)

1900 PRINT : INPUT "住所を入力して下さい"; E$
2000 COLOR 6: PRINT : PRINT E$ : COLOR 7
2010 INPUT "上記で良ければリターンを。 訂正するなら再入力をして下さい。"; Q$
2020 IF Q$<>"" THEN E$=Q$: goto 2000
2030 PRINT
2040 PRINT "本当は以降も続きますが、これはテスト用のプログラムなので、これにて終了です。"
透明スペーサー
 例えば顧客管理や経理などなどでは、一人毎に、または伝票1枚ごとに入力を求められます。ところがせっかく入力したデーターに、一部の間違いがあるというケースは少なくありません。
 それをゼロから再入力したのでは、プログラムとしては使い勝手が悪く実用性がありません。
 そこでデーターの部分訂正をすることになります。
 上記はそのデーター入力と訂正する部分だけを、抜き出したプログラムなのです。
透明スペーサー
 下記は、それをさらに単純化したプログラムです。
透明スペーサー
2000 PRINT E$
2010 INPUT Q$
2020 IF Q$<>"" THEN E$=Q$
 もしQ$がヌルなら(=データー入力が無ければ)、 E$はそのままで、
 もしQ$としてデーター入力があれば、そのQ$が新 E$になります。というプログラムです。
透明スペーサー
 例えば上記のようなプログラムで、データー E$の一部を訂正するケースでは、
  誤って入力した E$ の内容 → "〒969-3102 福島県耶麻郡猪苗代町字葉山"
      ↓↓
      ↓↓ 上記では番地7105が抜けていたので、以下のように追加したいとします。
      ↓↓
  正しく入力したい E$ の内容 → "〒969-3102 福島県耶麻郡猪苗代町字葉山7105"
透明スペーサー
 DOS-BASICでは、カーソルを一行上に上げて、表示されている E$の一部を直すだけで済みます。すなわち、データー E$の最後尾にカーソルを置き、7105のみを入力して、リターン(=Enter)で済みます。
 しかし、テキスト画面を持たないN88互換BASICでは、グラフィック画面に E$を表示するため、同じ方法が出来ません。
 即ち、一部訂正の場合でも、 E$の新データー全て「〒969-3102 福島県耶麻郡猪苗代町字****」を打ち込む必要があるのです。

 今現在はこの問題で悩んでいます。実務で使うプログラムとしては、この使い勝手はたいへんに重要な問題なのです。
 どなたか良いアィディアをお持ちの方は、教えていただければ幸いです。
丸ボタン mailへ、お願い申し上げます。
 その後、99Basicではこれが出来ることが分かりました(2004/ 5/01)。
  • 99Basicインタプリター(開発者 飯田 崇之さんの公式サイト)
     2002-03-09 でバージョンアップなど取り止めて、その代わりフリーウエアに。ファンの方の努力で、掲示板などもかろうじて生きています。

Top  88Menu




★その解決策 = 入力サブルーチン★ (2004/ 1/20)

 上記のような悩みを1年間近く載せていたところ、
N88互換BASIC入力サブルーチンを作ってみましたので参考にしてください。
透明スペーサー
昨年、NEC PC98シリーズが製造中止になったので、N88BASIC版のプログラムをDOS/V互換機に移行する必要が出てきました。
「N88互換BASIC for Windows95」を利用する予定ですが、INPUT関数がN88BASICと異なるので困っていました。
使いやすい入力ルーチンが、インターネット上に公開されているかと探しましたが見当たらないので作ってみました。
テストしたパソコンはPentiumIII800MHz、OSはWindowsNT4.0SP6です。
        M.YAMASAKI
 このような嬉しいメールを、2004/ 1/17にM.YAMASAKIさんから頂戴しました。私のWindows XPでもテストしたところ、正常に動作します。
  私の本業はスキースクールなので、冬の今は大戦争中です。雪が消える季節になり時間が出来たら、少し変えて利用させて頂くつもりでいます。これで長い間の悩みが消え、使い勝手の良いプログラムに直せるものと喜んでいます。
透明スペーサー
 制作者の許可を得ましたので、「入力サブルーチン」のソースプログラムを公開致します。

Top  88Menu