• ベストアンサー

for文を指定回数回したい

for $each(@man){ 処理; } これを下記のように指定回数回したいのですが、どうすればよいでしょうか? for ($j = 0; $j < 7; $j++){ 処理; }

  • Perl
  • 回答数2
  • ありがとう数13

質問者が選んだベストアンサー

  • ベストアンサー
  • hok212
  • ベストアンサー率66% (100/150)
回答No.2

回答1の方でほとんど答えは出ているようですが。 for ($j = 0; $j < 7; $j++){ $each = $man[$j]; } こうゆうことではないでしょうか。

Scotty_99
質問者

お礼

回答ありがとうございます。 No1の方の宿題を解けず、No2の方が素晴らしい回答くださいました。 力量不足も痛感しました。

その他の回答 (1)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

for $each(@man){ 処理; } というのは $each=$man[0]; 処理; $each=$man[1]; 処理; .... とループするものだから # 厳密には違うけど # あと、$eachって変数名もちょっと... for ($j = 0; $j < 7; $j++){ 処理; } とループさせるなら、$eachにあたるものはどうすればいいか、わかりませんか?

Scotty_99
質問者

お礼

奥深い回答ありがとうございます。 意味は半分も理解していませんが、勉強になります! もうしばらく考えてみます。

関連するQ&A

  • For構文に入りうる変数を指定する方法

    通常、For構文は処理の回数を指定しますよね。 回数ではなく、入りうる変数を全て指定した上で、処理をループさせる方法はあるんでしょうか。もしあったら教えて下さい。 イメージとしては↓な感じです。(イメージなのでかなり適当です。すみません。) For i = 1,4,5,6,12,13 Cells(i+5 ,2).Value = 3 next i

  • For ~ Next文

    VB6でのFor~Next文で、指定した数字だけ処理しない方法はありますか? 例えばFor A = 0 To 100でA=20,50,80の場合は処理をスキップするという感じです。

  • 指定したセルに1がない時、For を抜けたいのですが・・・

    Office XP Personal 2002 Excel 2002 指定した範囲セルに1がない時、下記の1つの For だけ を抜けたいのですが・・・ どのように変更すればよろしいでしょうか? よろしくお願い致します。 Sub test() Dim i As Integer Dim n As Range For i = 1 To Worksheets.Count - 1  Worksheets(i).Activate  For Each n In .Range("E6", .Range("E6").End(xlDown))   If Not n.Cells.Value = 1 Then   End If   Next n    MsgBox "「1」 がありません。", 48   Exit For  'For Each n In .Range("E6", .Range("E6").End(xlDown))   '続く   '・    '・ End Sub

  • DOSコマンドのFOR文で空白を含むファイルパスの指定方法

    DOSコマンドのFOR文で空白を含むファイルパスの指定方法 DOSコマンドのFOR文で、FORの繰り返し条件に 空白を含むファイルパスを指定する方法を教えてください。 やりたいことのイメージはこんな感じです。 for /f %%a in (C:\Documents and Settings\user\デスクトップ\list.txt) do ( echo %%a ) バッチファイルとlist.txtを同じディレクトリに配置し、かつ FOR文の前にCDを含めない事を条件にすれば 下記でもうまくいきます。 for /f %%a in (list.txt) do ( echo %%a ) 他のコマンドとの関係からこの前の処理で一度ディレクトリの 変更を行なう処理を含むため、FOR文で指定するファイルは 絶対パス指定をしたいと思っています。 簡単なことのような気もするのですが、 もしかしたら出来ないのかもしれないとも思っています。 FORの繰り返し条件に空白を含むファイルパスを 指定することはできるのでしょうか? 出来るのならばその方法を教えてください。 よろしくお願いします。

  • for文を簡単な処理に書き変えたい

    いま、配列を作る作業をしているのですが、for文を使うと、forをいくつ書けば良いのか分からない状態です。 作ろうとしている配列が、A[X][Y]で、Xの要素数は固定で良いのですが、Yの要素数が実験のたびに変動するためです。そして、処理したいのが、この配列の各列の値を適当な値(このfor文の前に値が決まっています)を代入することです。 例えば、for文だと、Y=3のときには for(i=0;i<○;i++){ for(j=0;j<○;j++){ for(k=0;k<○;k++){ A[line][0] = C[i];//(Cという配列のi成分) A[line][1] = B[j]; A[line][2] = E[k]; } } } のように書くような内容なのですが、Yが増えると、for文も増やさないといけません。 ここで、再帰処理のような方法をつかってうまく書きたいのですが、どう書いたら良いのか分かりません。 一般的なfor文の書き換え方みたいなことでも良いので、教えて頂けませんか?宜しくお願いします。

  • 【VBA】for each文でListbox値取得

    VBA7.1でfor each文を使い、Listbox(Lst1)の全ての値を 取得したいと思っています。 For Each 変数 In コレクションや配列 のコレクションや配列には何を指定したらよいでしょうか。 よろしくお願いいたします

  • for文におけるiなどの整数の使用回数

    for文は int i; for(i=0;i<10;i++) { 式や文 } のように使いますが、このiは何度でも使ってもよいのでしょうか? たとえば、 int i,j; for(i=0;i<10;i++) { for(j=0;j<10;j++) { 式や文 } } for(i=0;i<10;i++) { for(j=0;j<10;j++) { 式や文 } } としてもよいのか、あるいは、 int i,j,k,l; for(i=0;i<10;i++) { for(j=0;j<10;j++) { 式や文 } } for(k=0;k<10;k++) { for(l=0;l<10;l++) { 式や文 } } としなければいけないのかということです。 一応調べてはみたのですが、確証が持てないので… よろしくお願いします。

  • [VBA] For文の使い分けについての疑問

    こちらの識者の方々にはいつもお世話になっています。 VBAの質問です。 環境は下記になります。 OS=windows7 pro 64bit Office=Excel2010(14.0.7128.5000) ・疑問点 For each nextもFor nextも、最下行まで処理をしたいときに使用することが多いのですが、 単列の場合はFor each next、複数列の場合はFor nextというような使い方をしています。 例:For each next Sub test()  Dim ws As Worksheet  Dim r As Range  Dim endRow As Long  Set ws = ThisWorkbook.Sheets(1)  endRow = ws.Cells(Rows.Count, 1).End(xlUp).Row  For Each r In ws.Range("A1:A" & endRow)   If r.Value Mod 2 = 0 Then r.Font.Bold = True  Next r End Sub 例:For next Sub test2()  Dim ws As Worksheet  Dim i As Long  Dim endRow As Long  Set ws = ThisWorkbook.Sheets(1)  endRow = ws.Cells(Rows.Count, 1).End(xlUp).Row  For i = 1 To endRow   If ws.Cells(i, 1).Value Mod 2 = 0 Then ws.Cells(i, 1).Font.Bold = True   If ws.Cells(i, 2).Value Mod 3 = 0 Then ws.Cells(i, 2).Font.Bold = True  Next i End Sub 単純に、複数列での処理をする場合にはFor each next文を2つ書かないといけないと思い(込み)、 上記のような運用にしていますが、そもそもこの考え方は合っていますでしょうか? 単列の処理であってももちろんFor next文で問題なく使用できますし、 複数列の処理の場合もFor each next文で処理することはできます(冗長ですが)が、 VBA的に正しいというか、合理的な考えであるのかどうかが疑問です。 みなさんはFor each nextとFor nextをどのように使い分けていますか? 質問に不備不足等ございましたらご指摘ください。 ご面倒お掛けしますがよろしくお願いします。

  • for文で配列を引数として

    こんばんは。 for文で配列a[i][j]を引数として何らかの関数を呼び出すときがうまく動かないって事が起きてます。その関数にa[0][3]のように指定して動かすとうまく動くのですが・・・。 どうしてなのか分かりますか? for(i=0;i<=5;i++){ for(j=0;j<=6;j++){ ここで関数呼び出し; } } 抽象的な質問ですみません。

  • for文の中の余計な(?)括弧の意味を教えて下さい

    ・下記のようなコードがありました for(var j = 0;j < 8;++j){  {   console.log(j);  } } ・下記とは何が異なるのでしょうか? for(var j = 0;j < 8;++j){  console.log(j); } ・JavaScript(ECMAScript)では、括弧を幾つ設定しても良いのでしょうか? for(var j = 0;j < 8;++j){  {{{{{{{{{{{ console.log(j);  }}}}}}}}}}} }