どう考えてもこれで十分だろ。
($x, $y, $z) = sort { $b <=> $a } ($x, $y, $z);
sortを使わないとなると、if文やリスト、配列を使うのでしょうか?
>>973 変数3個なら並び方は順列で6通りだから if〜elsif 文でなんとかなるだろ
$i = @nums = ( $x, $y, $z );
foreach (0 .. $i) {
foreach (0 .. @nums) {
@nums[ $_, $_ + 1 ] = @nums[ $_ + 1, $_ ] if $nums[$_] < $nums[ $_ + 1 ];
}
unshift @sorted, pop @nums;
}
sort() を使わないと、こんな愉快なコードを保守する破目になりますが、かまいませんか?
それは変数三つに対して大仰だろう
if ($x < $y) { ($x, $y) = ($y, $x) }
if ($y < $z) { ($y, $z) = ($z, $y) }
if ($x < $z) { ($x, $z) = ($z, $x) }
って順番間違えたorz 正しくはこうだ
if ($x < $y) { ($x, $y) = ($y, $x) }
if ($x < $z) { ($x, $z) = ($z, $x) }
if ($y < $z) { ($y, $z) = ($z, $y) }
980 :
960:2006/12/21(木) 21:05:54
@a=($a=10,$b=5,$c=30);
if($a<$b){
($a,$b)=($b,$a)
} elsif($a<$c){
($a,$c)=($c,$a)
} elsif($b<$c){
($b,$c)=($c,$b)
}
print $a $b $c
xyzをabcに変えました。
これでできません・・・どうしたらよいのでしょうか?
981 :
960:2006/12/21(木) 21:27:49
教えてくれるほどの技術の人が居ないようなので
別のところで質問することにします。
さようなら
982 :
960:2006/12/21(木) 21:29:31
>>980 自分で$x,$,$zで質問して、なぜ$a,$b,$cに代えるの?
無知なフリして無駄に時間を使わせないで下さい
しかもつまらないし
皆さんも、親切なだけではなく、ガマン強いですね
もう相手にするのはやめては?
>>980 上のほうで if (条件) { ブロック } を3つ並べる例を出してもらってるのに
if〜elsif〜elsif〜に動作変えちゃったのはなぜ?
つーか、sort で…というのを踏まえて $a $b を使う方向に変えたのかなあ。
985 :
960:2006/12/21(木) 21:44:48
($x=10,$y=100,$z=30);
if ($x < $y) {
($x, $y) = ($y, $x)
} if ($x < $z) {
($x, $z) = ($z, $x)
} if ($y < $z){
($y, $z) = ($z, $y)
}
print "$x,$y,$z";
でやったらできました。
しかしifの中がいまいちわかりません。。
>>979 そうだ、プログラマは無精であるべきだったな。
対象が増えることを予期するべきだった。私とした事が。
罰として久しぶりに次スレ建ててくる。
どうしてsortを使わないのかいまいち分かりません。。
本当は分かるけど。課題なんだろ。
>>986はスレ立てを蹴られたのか、テンプレの準備がなかなか進まないのか。
ごめん、蹴られて別回線使おうとしてたところだけど駄目だった。
990 :
988:2006/12/21(木) 22:33:59
俺も蹴られたらどうしよう?と思いながら逝ってくる。
991 :
デフォルトの名無しさん:2006/12/21(木) 22:38:00
992 :
デフォルトの名無しさん:2006/12/21(木) 22:41:52
うめ
993 :
デフォルトの名無しさん:2006/12/21(木) 22:42:02
うめ
994 :
デフォルトの名無しさん:2006/12/21(木) 22:42:17
うめ
995 :
デフォルトの名無しさん:2006/12/21(木) 22:42:54
うめ
996 :
デフォルトの名無しさん:2006/12/21(木) 22:43:29
うめ
997 :
デフォルトの名無しさん:2006/12/21(木) 22:43:35
うめ
$s = q{$self->kakikomi(qq{\$s = q{$s};\n$s\n__END__\n埋め})};
$self->kakikomi(qq{\$s = q{$s};\n$s\n__END__\n埋め});
__END__
埋め
999 :
デフォルトの名無しさん:2006/12/21(木) 22:43:50
うはww
1000 :
デフォルトの名無しさん:2006/12/21(木) 22:44:10
1000なら彼女できる
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。