HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
0429
ino比較3未解決


ino

リンク

2008/4/29(Tue) 15:52:05|NO.15494

例)
a.0 = 1
a.1 = 0
a.2 = 3
a.3 = 1
a.4 = 6
.
.
上のように数値が入っているとして
同じ数が入っていたらdialogのようにしたいのですがどうすればいいですか?



この記事に返信する


SYAM

リンク

2008/4/29(Tue) 16:00:50|NO.15495

「同じ数が入っていたら」の部分があいまいです。
何と何がどのくらい同じかをハッキリさせたほうがよいと思います。

何か別の入力と同じ要素があったらdialogなのか
もうひとつ別の配列があってぜんぶ同じ要素があったらdialogなのか。

どちらにしろHSP標準命令だと repeat 命令で全部の要素を調べることになるかと思います。
もし、全要素が一致したら…ということなら、たとえば変数 f=1 を代入しておいて、repeat 〜 loopの途中で一致しないものを見つけたら f=0 を代入して break 命令を実行すると、ループを抜けたときには 配列の要素が一致していれば f=1, ひとつでも違っていれば f=0 になってます。



i

リンク

2008/4/30(Wed) 18:05:17|NO.15534

こういうことですか?


a.0 = 1 a.1 = 0 a.2 = 3 a.3 = 1 a.4 = 6 if (a.0=1)&(a.1=0)&(a.2=3)&(a.3=1)&(a.4=6) : dialog "" b.0 = a.0 = 1 b.1 = a.1 = 0 b.2 = a.2 = 3 b.3 = a.3 = 1 b.4 = a.4 = 6 if b.1&b.2&b.3&b.4:dialog "" b.0 = 1 b.1 = 0 b.2 = 3 b.3 = 1 b.4 = 6 if (a.0=b.0)&(a.1=b.1)&(a.2=b.2)&(a.3=b.3)&(a.4=b.4) : dialog ""



KAW

リンク

2008/4/30(Wed) 21:26:45|NO.15539

SYAMさんに同意です。「例だとこうだからdialogを出す」と説明を
加えるとか、dialogを出す例と出さない例の両方を書いた方が、
他の人にもわかりやすいと思います。

仮に「例だと、a.0 と a.3 が同じ数なのでdialogを出す」と解釈
すると、こんな感じでしょうか。ちょっと効率が悪いですが(^^;)。

a.0 = 1 a.1 = 0 a.2 = 3 a.3 = 1 a.4 = 6 f = 0 len_a = length(a) repeat len_a - 1 c0 = cnt b0 = a.c0 repeat len_a - c0 - 1 c1 = cnt + c0 + 1 mes "" + c0 + "番目と" + c1 + "番目を比較" if (b0 == a.c1) { f = 1 mes "→ 値が同じ" } loop loop if (f == 1) :dialog "同じ数字が配列内に複数あるよ!"



ONION software Copyright 1997-2023(c) All rights reserved.