![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
Perl初心者です。お願いいたします。
下記のような動きを実現したいのですが、どのような方法があるでしょうか。
できる限りすっきり書きたいのですが、自分で書きますと全パターンを記述していく・・等しか思いつきませんでした。お分かりになる方お教えいただけますと助かります。
$a1、$a2、$a3、$a4、$a5、$a6の6種類のデータがあり、いずれも「1」または「2」が代入されます。
その時に「1」が代入されたもののうち、aの後ろの数字が大きいほうの変数を抽出したいです。
たとえば、$a1、$a2、$a3、$a4、$a5、$a6 のデータが、1、2、2、1、1、2 であれば、「1」のうち数字が大きいのは$a5 なので $TOP = $a5; 、としたいです。
宜しくお願いします。
No.5ベストアンサー
- 回答日時:
表示がくずれるので空白2文字を全角空白1文字で書いていることに注意
use strict;
use warnings;
use feature 'say';
my $a1 = 1;
my $a2 = 2;
my $a3 = 3;
my $a4 = 1;
my $a5 = 2;
my $a6 = 3;
my $top = 'Not Found';
for my $num ( reverse 1 .. 6 ) {
my $var = eval '$a' . $num;
if ( $var == 1 ) {
$top = $num;
last;
}
}
say $top; # 4
お礼が遅くなりまして申し訳ありません。
皆さまのアドバイスで大変勉強になりました。_--_1l1_1様の例で無事実現に至りました。
つたない質問に回答くださり大変ありがとうございました。
No.4
- 回答日時:
No.2
- 回答日時:
if ($a1 == 1) {$TOP = 1;}
if ($a2 == 1) {$TOP = 2;}
if ($a3 == 1) {$TOP = 3;}
if ($a4 == 1) {$TOP = 4;}
if ($a5 == 1) {$TOP = 5;}
if ($a6 == 1) {$TOP = 6;}
No.1
- 回答日時:
そこの「たとえば」の状況では $TOP の値は 1 となりますが, それでいいのですか?
ちなみに, 値が 1 のものがないときにどうすればいいのかも書かれていませんね.
この回答への補足
早速ありがとうございます。そしてご指摘助かります。
TOPが「1」では困ります。。すみません、$TOP=5 にしたいです。
それから「1」が全くなかった場合ですが、その場合は別処理で、このプログラムを通らずに進むことになっていて、そちらの方は動いています。
なので「1」が全くない場合はない、と思っていただけると幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) SUMIF関数について 4 2023/06/14 13:13
- Excel(エクセル) VBAにてエクセルをpdf化する方法 1 2023/03/10 16:20
- Visual Basic(VBA) Sheet2の日付をキーにオートフィルターで2023年1月のデータを抽出し、Sheet3へ書き出すた 2 2023/03/06 23:57
- Excel(エクセル) マクロ セルの選択 5 2022/08/12 22:47
- Visual Basic(VBA) エクセル VBA 条件付き書式 簡略化したい 2 2022/06/02 17:46
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- Excel(エクセル) 【関数】【マクロ】データの転記の方法について 2 2023/07/26 15:22
- Visual Basic(VBA) エクセルについて教えてください。 3 2023/06/28 09:11
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストファイルで提出とは?
-
ファイルをディレクトリ分配の...
-
openした後、closeしないでプロ...
-
perlのプログラミング 部分入れ...
-
Perlのエラーについてご教授く...
-
画像が表示でnull; this.src
-
perlプログラミング 空白行削除
-
Perlで特定文字列から特定文字...
-
ラズベリーパイ初心者です。 ラ...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
bashスクリプト
-
ファイルアイコンの左下に緑の□...
-
perlでリテラル値はメモリにど...
-
perlで2次元配列をサブルーチ...
-
Perlで時間の計算
-
perlについて
-
perlのrequireの動き方について...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
openした後、closeしないでプロ...
-
テキストファイルで提出とは?
-
INDIRECT 横に再度抽出したい
-
Perlで特定文字列から特定文字...
-
perlをバージョンアップしたら...
-
Wallpaper Engineでおすすめの...
-
arduino の割り込み処理について
-
アルファベットに付いて質問し...
-
Strawberry Perl for Windows ...
-
Perlで時間の計算
-
このファイルを開く方法で困っ...
-
TeraPadエディターの操作方法に...
-
cgiでサーバーにファイルを追加...
-
フローチャート 九九
-
LinuxにおいてのPerlのプログラ...
-
perl 初等プログラミングについて
-
Perlのエラーについてご教授く...
-
こんにちは ブラケッツでプログ...
-
bashスクリプト
-
perlプログラミング 空白行削除
おすすめ情報