• 締切済み

for文の質問です。

x1からx2.x3.x4...x25までをループさせる場合はどうしたらいいのでしょう? 1から25ならわかるのですが変数付きだとわかりません。 よろしくお願いします。

みんなの回答

回答No.8

int型だったとして int x[] = {x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25}; などとする方法もあります。参考になれば。

全文を見る
すると、全ての回答が全文表示されます。
回答No.7

x[0]=x1; x[1]=x2; x[2]=x3; x[3]=x4; x[4]=x5; x[5]=x6; x[6]=x7; x[7]=x8; x[8]=x9; x[9]=x10; x[10]=x11; x[11]=x12; x[12]=x13; x[13]=x14; x[14]=x15; x[15]=x16; x[16]=x17; x[17]=x18; x[18]=x19; x[19]=x20; x[20]=x21; x[21]=x22; x[22]=x23; x[23]=x24; x[24]=x25; としてからfor文でループさせるのでは駄目ですか。なお、この場合は値をコピーしてます。 なお、このくらいの文は自作ツールで書けないと、ですね。printfで充分です。別言語やスクリプト言語でも構わないですけどね。 型が分からないので型宣言は省略しています。適切な型でx[24]配列宣言を行ってください。 ポインタを使いたければ、しかるべき方法で。上のコードを参考に。

全文を見る
すると、全ての回答が全文表示されます。
回答No.6

char ss[]="x**" ; int ci=0 ; for( ci=1 ; ci<=25 ; ci++ ) { if( ci < 10 ) { // 1桁の場合 ss[1] = (char) ( '0' + ci ) ; ss[2] = '\0' ; }else { // 2桁の場合 ss[1] = (char) ( '0' + (ci/10) ) ; ss[2] = (char) ( '0' + (ci%10) ) ; ss[3] = '\0' ; } printf( "%s\n" , ss ) ; }

全文を見る
すると、全ての回答が全文表示されます。
回答No.5

> for(i=1;i<=25;i++) > x[i] > という感じですか? 訊くまでもない。やってごらんよ。

全文を見る
すると、全ての回答が全文表示されます。
  • usa3usa
  • ベストアンサー率33% (20/59)
回答No.4

x1,x2,...,x25 を配列 x[] として扱えばよいでしょう。 for(i=1; i<25; i++) {  xi = x[i]; // 値を使う場合  x[i] = xi; // 値を代入する場合 }

全文を見る
すると、全ての回答が全文表示されます。
  • hashioogi
  • ベストアンサー率25% (102/404)
回答No.3

再度説明してもらいましたが意味がよくわかりません。 x1とかx2には何が入っていますでしょうか ?

全文を見る
すると、全ての回答が全文表示されます。
  • ESE_SE
  • ベストアンサー率34% (157/458)
回答No.2

x1~x25が一体何なのかによって答えは変わります。 変数名だとしたらそのままでは無理でしょう。 配列 x[25]を宣言してx[1]=x1、x[2]=x2、と言う風にひとつずつ代入するか そもそもx1に値を代入するときに代わりにx[1]に代入すればループで処理出来ます。 for(i=1;i<=25;i++) { x[i]についての処理 } x1~x25がデータだとしたら、以下のループで。 for(i=1;i<=25;i++) { tempValue="x"+i; 以下tempValueについての処理 }

takki-a
質問者

補足

なるほど。 x[1]=何か x[2]=,, を x[25] までやればよろしいのですか。 これなら変数としてループできます? for(i=1;i<=25;i++) x[i] という感じですか?

全文を見る
すると、全ての回答が全文表示されます。
  • hashioogi
  • ベストアンサー率25% (102/404)
回答No.1

例えば、以下のようなものですか ? for (i=5 ; i<=10 ; i++) { } の代わりに、 x1=5 ; x2 = 10 ; for (i=x1 ; i<=x2 ; i++) { } こんなんではないなら、もう少し詳しく説明してください。

takki-a
質問者

補足

for文でx1~x25までを一気に処理したいんです。 for(i=1;i<=25;i++){ break } とやると1から25が処理されますよね? これのx1からx25を処理したいんです。 説明下手ですみません

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • for文を使って変数に値を入れる方法

    以下のプログラムでfor文を使ってx1に1, x2に2, x3に3を代入したいのですが、 変数x1~3をfor文を使って表す方法がわかりません。 下記のように var test = "x" + i; で変数testにx1という文字列を持たせ、そこにiを代入すれば上手くいくかなと思いましたが 上手くいきません。どのようにすれば期待通りになるか教えていただけないでしょうか。 ============================================ var x1 = 0; var x2 = 0; var x3 = 0; for(var i=1; i<=3 ; i++){ //x1に1, x2に2, x3に3を代入したい var test = "x" + i; test = i; } alert("x1=" + x1 + ",x2=" + x2 + ",x3=" + x3); ============================================

  • [VBA] for文の3次元ループ

    for文の3次元ループがうまく働いてくれません。 8通り(2x2x2)の組み合わせ表示を期待しましたが2通り(y1のみ)のみでループが終わってしまいます。エラーなどはでません。何が原因なのか分かりません。ご指導お願いします。 Public x1 As Single, y1 As Single, z1 As Single Sub Start1() i=1 For x1 = 0.3 To 0.4 Step 0.1 For y1 = 0.5 To 0.6 Step 0.1 For z1 = 0.4 To 0.5 Step 0.1 Cells(i, 1) = x1 Cells(i, 2) = y1 Cells(i, 3) = z1 i=i+1 Next z1 Next y1 Next x1 End Sub

  • for文の中の参照変数について

    以下のように、 for文(例えば、10回ループ)の中で参照変数を宣言した場合、 1回目のループが終わったタイミングで、cccという変数はメモリ上から削除されるのでしょうか? 削除されないとしたら一つのメソッド内で同じ変数名が繰り返し宣言されることになるので 毎回削除されているのだとは思いますが。。 -------------------- method() { for(AAA aaa : bbb){ CCC ccc= null; } } -------------------- 教えて下さい。

    • ベストアンサー
    • Java
  • 確率の質問

    自分で考えた確率の問題なのですが、 解けずに困っています 「問題」 同じ連続確率分布f(x)に従う確率変数X1,X2,X3 がある。 確率変数Yを Y=Xi ( X1<X2<X3→Xi=X2, X3<X1<X2→Xi=X1, ... 真ん中の値をXiとする) とおくとき 確率変数Yの従う確率分布の平均と分散を求めなさい

  • どうやってもFor文を抜けてしまいます…(VBA)

    いつもお世話になっております。 VBAで作業をしていたところ、とある箇所でずっと詰まってしまい、 また皆様のお力を借りたいと思い・・・。 おそらく、基礎中の基礎かもしれませんが、お付き合い頂ければ助かります;; 【質問内容】 Functionが2つあったとします。 現在のFunctionから、別のFunctionに飛んで、また元のFunctionに戻ってきた際に、 Forでループ中でも抜けてしまうのでしょうか? おそらく、何を言ってるか分からないと思いますので、以下にコード例を記載します。 _________________________________ 【コード例】 function sample1() Dim roop as Long ’シート1のCell(7,4)には「100」と入力されており、「roopが2~100」の間ループさせます。 for roop + 2 To sheets("シート1").cells(7,4) 処理2 ’特定条件を満たしたら、「sample2」に飛びます。 if 条件 then call sample2 End If next End function _________________________________________________________________________________________ function sample2() ’sample1()で使用していたroop変数をそのまま使用します for roop + 1 To 50 処理2 roop + 1 next ’処理が終わりsample1()のnextに戻ります。 ’roopには、仮に50が格納されているとします。 End function _________________________________________________________________________________________ 上記のコードとなります。 最初はSample1()で処理を行い、特定条件を満たしたらSample2()に移行。 Sample2()の処理が終わったら、元のSample1()に戻る。 2つのFunction内で使用していた「roop」変数は、まだ80にも関わらず、 Sample1()のFor文を抜けてしまいます。 Sample1()のForのループ条件は「2~100」としていますが、 これは別のFunctionに飛ぶと、無くなってしまうのでしょうか? 何を言っているのか分からないなどございましたら、ご指摘ください・・・;; 以上、よろしくお願いします。

  • Forループの制御について

    VB 2005,Framework2.0を使用しています。 For文を使ったループについてお尋ねしたいことがあります。 For i As Integer = 0 To 10     ’処理 Next i とあったとします。 そうするとループ変数iが0から10になるまで連続してループを行うのですが、これをある条件の時に現在のループ変数から一つ飛ばして次のループからまた処理を行いたい場合どのようにすれば良いのでしょうか? 例えば0~10回中に、現在5回目で特定の条件が一致したときその次の6回目のループは飛ばして7回目のループから再開したいです。 ちなみにこの様に書いても0から10回必ずループされてしまいました。 Dim TEST(10) As Integer TEST(5) = 1 For i As Integer = 0 To 10 If TEST(i) = 1 Then i = i + 1 End If Next i

  • 特殊なfor文について

    SJC-P 問題集 問13の疑問より for文について教えてください。 一般的なfor文だと次の形だと思うのですが for(int i = 0; i < 5; i ++){ //5回ループする } Animal [] animals = { new Animal(), new Cow() }; for( Animal a : オブジェクト配列animals ){ a.saySomething(); } のような場合、このfor文は 「オブジェクト配列の中にanimalsがあるまでの間、ループする」という意味を指しているのでしょうか? for( クラス名 オブジェクト名 : オブジェクト配列) の一文にある「:」← の役割は何なのでしょうか?

    • ベストアンサー
    • Java
  • 階層的重回帰分析

    階層的重回帰分析の変数解釈について 例えば、 目的変数:y 説明変数(強制投入法):x1 x2 x3  があるとし、 モデル1では、x1とx2を投入した所、x2が目的変数に対して、有意な変数でした。 そして、次にモデル2では、x1とx2に加え、x3を投入しました。 その結果、目的変数にたいし、x3は有意な変数となりましたが、 モデル1で有意な変数であったx2が有意な変数ではなくなりました。 このような場合の目的変数に対しての影響関係の解釈がいまいち理解できません。 これはどのように解釈すればよいのでしょうか。 よろしくお願いします。

  • Delphi for文

    これって、Delphiのバグですか?特性ですか? procedure TForm1.Button1Click(Sender: TObject); begin test(); end; //-------------------------- procedure TForm1.test(); var k,x:integer; begin paintbox1.Canvas.pen.Color:=clBlack ; x:=0; for k:=1 to 3 do begin paintbox1.Canvas.moveto(x,0); paintbox1.Canvas.lineto(x,paintbox1.Height); x:=x+2; end; end; forループ内にブレークポイントを付けて「k」の値の変化を見ると、3,2,1と逆順になります。 「x:=x+2」を「x:=x+k」に変更すると、1,2,3と普通の順になります。 なぜ、こうなるのか? 対処法はありますか? Delphi Ver6・ターボDelphi どちらも同じ状況です。

  • シンプレックス法の質問です。

    シンプレックス法でfはx1,x2,x3,x4の関数であり、それを最小化したいとします。その途中で式を正準系に直し、fの変数の中で負で最も係数の大きいものを次の基底変数に選びます。では次の「非基底変数」にはどういうものをを選べばいいのでしょう?

px-5vの実寸印刷について
このQ&Aのポイント
  • photoshopで275mm×380mm、300d/iの画像データを作成しました。上記のデータをA3の用紙に実寸で印刷したいです。
  • 印刷プロパティの設定方法を教えてください。
  • EPSON社製品の中でもpx-5vについての質問です。
回答を見る