- ベストアンサー
for やif
akino4の回答
- akino4
- ベストアンサー率18% (35/185)
線で結ぶんじゃなくて{}にカーソルをあわせると 強調表示したり、}をうつと対応する{に一端移動して強調したり が世の中に出回ってるエディタのほとんどだとおもうのですが それではなぜダメなんですか????
関連するQ&A
- if文の初歩的な質問
if文の初歩的な質問なのですが、 if (a==1) c=10; else if (a==2) c=20; else if (a==3) c=30; System.out.println(c); この文のelseはなぜいるのでしょうか?どちらでも良いのでしょうか? 基本のルールとしては、elseが付くのでしょうか?
- ベストアンサー
- Java
- End Ifは不要な場合もある?
Excel2010使用で下記のVBAのコードを書きました。 Sub イフとエンドイフは組ではなかったのか() Dim Flag As Boolean Dim S As Worksheet For Each S In Worksheets If S.Name = "合計" Then Flag = True ' Else ' Flag = False ' End If Next S If Flag = True Then MsgBox "「合計」というシートはすでに存在します" Else Worksheets(1).Copy after:=Worksheets(Worksheets.Count) ActiveSheet.Name = "合計" End If End Sub 前半の >' Else >' Flag = False >' End If の部分があると「Elseに対応するIfがありません」というエラーが出ます。 Elseに関する記述だけをコメントアウトすると「End Ifに対応するIfブロックがありません」というエラーが出ます。 この部分をコメントアウトすればきちんと動作するのですが、If文はちゃんと存在しているにもかかわらず、またほとんど同じ記述の後半ではエラーが出ないというのに、なぜこのようなエラーが出るのかわかりません。 なにか勘違いをしているのでしょうか。
- ベストアンサー
- Excel(エクセル)
- for文&if文を使った問題について教えてください。
参考書の練習問題を解いていて、応用力がないのか理解できない ので、分かる方教えていただけませんか? 問題: キーボードから整数を入力させ、その数が素数であるかどうかを 判断するコードを記述してください。 解答: import java.io.*; class SampleP5 { public static void main(String[] args) throws IOException { System.out.println("2以上の整数を入力してください。"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); int num = Integer.parseInt(str); for(int i=2; i<=num; i++){ if(i = = num){ System.out.println(num + "は素数です。"); } else if(num % i = = 0){ System.out.println(num + "は素数ではありません。"); break; } } } } 例えば"7"を入力すると「7は素数です」と出力されるようなんですが、 『i = 7』だとして、『 if(i = = num)』の条件って当てはまるん ですか?for文でiの初期値が2だから、『2 = = 7』で当てはまらない と思うんですが・・・ 考え方が間違っているんですかね? ※ちなみに(= =)のところ、実際はスペース空いてません。 ここの画面での表示上くっついて1本の線になってしまうので、 スペースを空けて入力したまでです。
- ベストアンサー
- Java
- 複数のFOR~を抜けるには?
sub 1() for a = 1 to 4 for b 1 to 6 call 2 next b '111 next a endsub sub 2() --- ---- ---- on error goto herr if ---- for c = 1 to 5 if --- ------ 'ここでエラーが起きた場合に'111まで end if next c else for d =1 to 5 if --- ------ 'ここでエラーが起きた場合に'111まで end if next b end if herr endsub このような場合でも'111までForを抜けることは かのうでしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- java for文、if文を使っての三角形
例:1 23 456 78910 ・・・・・・のようにひょうじさせるプログラムを作成するのに、for文とIf文を使っての三角形を 作成したいのですが、If文の条件式が分からないのとどうしたら、上記のようなプログラムが 出来るのか教えてください。お願いします。 public static void main(String[] args) { // TODO 自動生成されたメソッド・スタブ // 行に表示させる個数を表現するための変数がないため今回、新たに変数を用意する。 int a = 1; //行の終わりを改行して1増やすための変数がないため今回、新たに変数を用意する。 int b = 1; // 1~100までの数字を用意する。 for (int i = 1; i <= 100; i++) { //変数iをSystem.out.printを使って変数iをコンソールの中に出力させる。 System.out.print(i); //System.out.println("")を使って改行する。 System.out.println(" "); //変数iに1増加して数字を順番にする。 i++; if(a <= i){ System.out.print(a);
- ベストアンサー
- その他(学問・教育)
- javaでの#if 0 #endif文
javaでC言語のような一部分のプログラムのコメントアウトとしての機能の#if 0に当たるコードはどのように書いたら良いでしょうか? どうぞ、教えて頂きますようお願い致します。
- ベストアンサー
- Java
- マクロ IF分岐 結果がうまく表示されない
I列J列、M列N列、Q列R列の、それぞれ2列ともに水色と紫色のフォントが両方あったら、U、V、W列に、う、キ、ち、とそれぞれ入力する、というマクロを作ってみたのですが、入力結果が指定した列に表示されません。添付のように「キ」がU列にきたり、「ち」がU列にきたりしています。何をどうすればいいでしょうか? Sub test() ' For nRow = 7 To 233 If Cells(nRow, 9).DisplayFormat.Font.ColorIndex = 33 And Cells(nRow, 10).DisplayFormat.Font.ColorIndex = 47 Then Cells(nRow, 21) = "う" ElseIf Cells(nRow, 10).DisplayFormat.Font.ColorIndex = 33 And Cells(nRow, 9).DisplayFormat.Font.ColorIndex = 47 Then Cells(nRow, 21) = "う" Else Cells(nRow, 21) = "" End If Next nRow For nRow = 7 To 233 If Cells(nRow, 13).DisplayFormat.Font.ColorIndex = 33 And Cells(nRow, 14).DisplayFormat.Font.ColorIndex = 47 Then Cells(nRow, 21) = "キ" ElseIf Cells(nRow, 14).DisplayFormat.Font.ColorIndex = 33 And Cells(nRow, 13).DisplayFormat.Font.ColorIndex = 47 Then Cells(nRow, 22) = "キ" Else Cells(nRow, 22) = "" End If Next nRow For nRow = 7 To 233 If Cells(nRow, 17).DisplayFormat.Font.ColorIndex = 33 And Cells(nRow, 18).DisplayFormat.Font.ColorIndex = 47 Then Cells(nRow, 21) = "ち" ElseIf Cells(nRow, 18).DisplayFormat.Font.ColorIndex = 33 And Cells(nRow, 17).DisplayFormat.Font.ColorIndex = 47 Then Cells(nRow, 23) = "ち" Else Cells(nRow, 23) = "" End If Next nRow End Sub
- ベストアンサー
- Visual Basic
- 条件に寄って、ifの中身が変わる時の書き方。
条件に寄って、ifの中身が変わる時の書き方。 条件として3つのチェックボックスがあります。 □ 10<A □ 5>B □ 1<C チェックが入っている条件に合ったデータのみを抽出します。 例えば、 ■ 10<A □ 5>B □ 1<C で有れば、Aの値が10以上の条件に合ったものを抽出 ■ 10<A ■ 5>B ■ 1<C であれば、「Aが10以上」かつ「Bが5以下」かつ「Cが1以上」の条件にあったデータを抽出する。 というのを作りたいのですが… チェックボックスの付け方として、8パターンありますが、どうしても複雑になってしまいます。もっとシンプルに書けないのでしょうか?アドバイスお願いします。 for ($n=1; $n<=100; $n++){ if ($_POST[A]==true){ if($_POST[B]==true){ if($_POST[C]==true){ if(${data.$n}[A]>10 and ${data.$n}[B]<5 and ${data.$n}[C]>1){ print_r(${data.$n}); }//すべてにチェックが入っている場合 } else { if(${data.$n}[A]>10 and ${data.$n}[B]<5){ print_r(${data.$n}); }//AとBにチェックが入っている } } else { if($_POST[C]==true){ if(${data.$n}[A]>10 and ${data.$n}[C]>1){ print_r(${data.$n}); }//AとCにチェックが入ってる } else { if(${data.$n}[A]>10){ print_r(${data.$n}); }//Aにチェックが入っている } } } else { if($_POST[B]==true){ if($_POST[C]==true){ if(${data.$n}[B]<5 and ${data.$n}[C]>1){ print_r(${data.$n}); }//BとCにチェックが入っている } else { if(${data.$n}[B]<5){ print_r(${data.$n}); }//Bにチェックが入っている } } else { if($_POST[C]==true){ if(${data.$n}[C]>10){ print_r(${data.$n}); }//Cにチェックが入っている } else { print_r(${data.$n});//チェックなし } } } }
- ベストアンサー
- PHP
- Java for文
for文について、キーボードで入力して、その数が素数(1またはその数以外で割り切れない数)であるかを判断するコードですが、for文とif文の関係が良くわかりません。ご教示ください。 <サンプル> public static void main(String[] args) throws IOException{ System.out.println("2以上の整数を入力してください。"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); int num = Integer.parseInt(str); ※1 for(int i=2; i<=num; i++){ if(i == num){ System.out.println(num + "は素数です。"); ※2 }else if(num % i == 0){ System.out.println(num + "は素数ではありません。"); break; ※1と※2の処理について初心者でもわかるような解説をおねがいできますでしょうか? よろしくお願いいたします。
- ベストアンサー
- その他(学問・教育)
- バッチのFOR及びIF文
バッチであるTEXTファイルから一部を置換して別のファイルを作成する処理を考えてます。 「あるTEXTファイル」にはSQL文があります。 SELECT CODE ||'","'|| NAME FROM TEST01 WHERE (UPDATEDATE || UPDATETIME) > TO_CHAR(_HENKAN_) の内容が入ってます。 このファイルから「_HENKAN_」をバッチファイル内で置換し、実行できるSQLファイルを作成する処理です。 しかし、FOR文の中のIF文で全然動かないです。 FOR /F "tokens=1 delims=" %%A IN (C:\sql.txt) DO ( if /i %%A=="TO_CHAR(_HENKAN_)" ( echo TO_CHAR(%HENKAN%) >> %出力ファイル% 2>&1←%HENKAN%は時間を設定済み*ここが問題 echo %%A ←テストのため ) else ( echo %%A >> %出力ファイル% 2>&1 ) ) 実行時はエラーはなく実行されますが、echo TO_CHAR(%HENKAN%)が全然効かないようです。 いや、そもそも if /i %%A=="TO_CHAR(_HENKAN_)"が効かないですね。echo %%Aで全SQL文が表示されます。 いろいろ調べたのですが、理由がわかりませんでした。 バッチに詳しい方は教えてください。 よろしくお願いします。
- ベストアンサー
- Windows系OS
お礼
ありがとうございます。