第2回独習Javaゼミ 第3章 セクション4~5 発表者 直江 宗紀 3.4 forステートメント(1) ループステートメントの一つ forループには様々なバリエーションがある 一般形式例(単一ステートメント実行時) for(initialization; test; increment) statement ; initialization :ループ制御変数の初期化 test :ループ制御変数と目標値の比較 increment :ループ制御変数を一定量増減 3.4 forステートメント(2) 複数のステートメントを実行させたい場合 →コードブロック「{~}」により囲う 例(1~9までの和と積を求めるプログラム) int Sum=0,Prod=0 ; for(int i=1; i<10; i++){ Sum += i ; Prod *= i ; } 3.4 forステートメント(3) forの一般形式例のincrementの部分は増減が 1刻みでなくても構わない。 例(10刻みで100までカウントするプログラム) for(int i=0; i<=100; i+=10) System.out.print(i+” ”) ; System.out.println(””) ; 3.5 インクリメント演算子と デクリメント演算子(1) forステートメントなどのループ処理におけるルー プ制御変数の記述を簡単にできないか →インクリメント演算子、デクリメント演算子を使う インクリメント、デクリメントとは? 「increment:増加」、「decrement:減少」 英語の通り、変数値を1ずつ増減させる演算子 i=i+1 → i++ (左の式と同じ意味を持つ) i=i-1 → i-- (左の式と同じ意味を持つ) 3.5 インクリメント演算子と デクリメント演算子(2) 演算子を変数の前に置くか後ろに置くかで 処理が変わる。 ++i 式の実行前にインクリメントを行う。 i++ 式の実行後にインクリメントを行う。 3.5 インクリメント演算子と デクリメント演算子(3) 変数の前に書くことを前置、変数の後ろに書くこと を後置と呼ぶ。 前置、後置の時の違いについてのプログラム例 int i=10,j=0 ; j = ++i ; //iが計算されてからjに代入 System.out.println(”j:i=”+j+”:”+i) ; //11:11 i=10,j=0 ; j = i++ ; //jに代入されてからiを計算 System.out.println(”j:i=”+j+”:”+i) ; //10:11 練習問題 1.コマンドラインにより1つのint型引数を受け取り、 その引数の数値までの総和を求めるプログラムを 作成せよ。ただし、結果がint型で表現できる数値 の範囲内までとする。 2.コマンドラインにより1つのint型引数を受け取り、 その引数の数値の持つ因数をすべて出力するプ ログラムを作成せよ。 (ただし、以上の問において作成されるプログラム では、インクリメント演算子、デクリメント演算子が 使用可の場合はそれらで表現することとする)
© Copyright 2024 ExpyDoc