CGI-BBS > CGI > Perl > CGIの設置で複数の比較を同時に行いたい。


カレッヂ
カレッヂ


質問者 さや  投稿日 2005/8/2(火) 02:49:08
こんにちは、初心者ですが宜しくお願い致します。_(__)_

比較についてなのですが…、数字を比較し一番高い数値から処理していくという、
カンジなのですが単数の比較は参考書に記載されているのですが複数の比較の仕方が
解りません…。

<例>

A〜Fにそれぞれ数字(〜100までのそれぞれ別の乱数)が入っている状態で
A〜Fを比較し、数値の高い順に処理を行っていくとゆうカンジです…。

if(A > B)
参考書により、単数の比較の仕方は載っていたのですが複数の比較の仕方が
載っていません…。(T_T;


初心的な質問かもしれませんが、宜しくお願いいたします。

【習熟度】初めて

回答者 ひろ  [削除]  投稿日 2005/8/2(火) 15:16:43
perl では sort が便利です。大きい、小さい順に並び替えてくれます。
並び替えたらその順番に処理したらいいです。

例えばこんな使い方をします。
---
$A = 100; $B = 50, $C = 567, $D = 43;

@sorted = sort { $a <=> $b }($A, $B, $C, $D);#小さい順
@sorted = sort { $b <=> $a }($A, $B, $C, $D);#大きい順
 
print "$sorted[0] $sorted[1] $sorted[2] $sorted[3]";
---

ここで出てくる $a, $b はsortで使われる特殊な変数なので変更しないように注意してください。
回答者 さや  [削除]  投稿日 2005/8/2(火) 23:40:41
ひろ様、迅速な対応に感謝致します。m(__)m

そうなんですか!!、並び変えるといいのですね…、思い浮かびませんでした。(^^;
<例>の方もご親切に有難うございます、大変解りやすいです、参考書の方だと
内容は載っているのですが使い方などが無く、非常にわかりずらいです…。(__;
ひろ様、この度は素敵なご指摘どうも有難うございました。


返信(回答)する

 


Web裏技