新しく発言する EXIT インデックスへ
BASICのプログラム

  BASIC の プログラム kbys 2004/04/16 07:56:31 
  こんな感じでどうでしょう? 山中和義 2004/04/16 08:47:25 
   └間違いですね、、、 山中和義 2004/04/16 12:06:54 
    └ありがとうございました。 kbys 2004/04/18 07:02:37 

  BASIC の プログラム kbys 2004/04/16 07:56:31  ツリーへ

BASIC の プログラム 返事を書く
kbys 2004/04/16 07:56:31
「5、6、が与えられている時、任意の数Nを入力すると
(Nは1から9までの1桁の数)、そのNの順位Rは?」
Rを表示するプログラムを、どなたか教えてください。
お願いします。

それぞれ、1、2、3、4は第1順位、5は第2順位、
それぞれ、6、7、8、9、は第3順位ということですが。。。

READ で DATA 5、6 を読み込む。
そこへ、たとえば INPUT で7が入力される。
5、6、7になり、入力された7は第3順位ですが。。。。。。
PRINT R で3が出力されるには。。

どなたか ご教示ください。
よろしく お願いします。

  こんな感じでどうでしょう? 山中和義 2004/04/16 08:47:25  ツリーへ

Re: BASIC の プログラム 返事を書く
山中和義 2004/04/16 08:47:25
こんな感じでどうでしょう?
POS関数で該当数字を検索します。

DATA 5,6 !与えられた数
READ A,B

INPUT N !任意の数を入力する

!順位を確認する
IF POS("1234",STR$(N))>0 THEN LET R=1
IF POS("5",STR$(N))>0 THEN LET R=2
IF POS("6789",STR$(N))>0 THEN LET R=3

PRINT R !順位を表示する

END

   └間違いですね、、、 山中和義 2004/04/16 12:06:54  ツリーへ

Re: こんな感じでどうでしょう? 返事を書く
山中和義 2004/04/16 12:06:54
間違いですね、、、
順位(ランク)を求めることですね。

DIM A(10),JUN(10)
DATA 5,6,7 !元データで確認する

!データの数を設定する
LET N = 3

!データを読込む
FOR i=1 TO N
READ A(i)
NEXT i

!順位を算出する
FOR i=1 TO N !1番目から順に
LET X = 1 !まず、1番とする
FOR J=1 TO N !他と比較して大きいのがあれば、
IF A(J)<A(i) THEN LET X = X + 1 !順位を下げる
NEXT J
LET JUN(i) = X !確定する
NEXT i

!順位を表示する
FOR i=1 TO N
PRINT JUN(i);
NEXT i

END

    └ありがとうございました。 kbys 2004/04/18 07:02:37  ツリーへ

Re: 間違いですね、、、 返事を書く
kbys 2004/04/18 07:02:37
ありがとうございました。

助かりました。


インデックスへ EXIT
新規発言を反映させるにはブラウザの更新ボタンを押してください。