XMLPro 5回目
前回の復習
2
前回の復習1
• scanner を利用して文字を入力した
• if を利用して条件によって処理を分岐させた
前回の復習2
4
import java.util.Scanner;//インポート
Scanner s=new Scanner(System.in);//sも変数名
型名 変数名=s.nextInt();
で文字が入力できる
5
前回の復習3
6
if(条件A){
条件Aが真の時に実行される処理
} else if(条件B){
条件Bが真の時に実行される処理
}else{
条件ABともに真では無いときに実行される処理
}
もし条件が真であれば { }内の処理を実行する
7
本日の内容
BufferedReader
繰り返し
8
の前に…
• Eclipseの便利な機能を使ってますか??
• sysout CTRL+スペースキーで
• System.out.println();←これが出てきます
9
クラス作成の時に
10
• チェックを入れると自動で
public static void main(String[] args) { }
↑
書いてくれます
11
• 便利な機能は使っていきましょう!
12
パッケージの作成
• ダンボールみたいなやつをクリック
13
名前を入力して完了
今回はxmlpro0515 とします (なんでもいいです)
完了がでない
↓
XMLPro2014/src
を選択して反転
もしくはソース・
フォルダの指定
14
• 先ほど作成したパッケージをクリックして選
択した状態で
クラスを作成します
15
クラスの作成
• 新規javaクラスを選択
16
クラスの作成2
• クラス名を入力
• クラス名はお好きにどうぞ
→クラス名の頭文字は大文字!!
Lesson1, Sample1, とか
今回の最初はBufferedとかでもよい
小文字でもエラーはおこらない
17
BufferedReader
• 前回はScannerをやった
• この2つに大きな違いは無い
• 書く量が違うくらい
• 正確には実行速度に差があるがほぼ無いに
等しい
18
import java.io.*;
class クラス名{
public static void main(String[] args)
throws IOException {
BufferedReader br=
new BufferedReader(new Input
StreamReader(System.in));
String str=br.readLine();
int num=Integer.parseInt(str);
}
}
19
20
• int num=Integer.parseInt(str)
• の1文で入力した文字列をint型に変換してい
ます
• BufferedReaderはString型と認識するので他
のかたとして使うときには変換する必要があ
ります
21
文字列からの変換
String s→int i
String str = br.readLine();
int i=Integer.parseInt(s)
String s→double d
String str = br.readLine();
double d= Double.parseDouble(s)
22
• ここでのthrows IOExceptionは今はまだ何か
はわからなくても大丈夫
• 動くのに必要なおまじないです。
• 正直な話 Scanner使ったほうが楽です
23
繰り返し処理
ここで
• 1から20までの数字を順番に表示してみてく
ださい。
• それができたら1000まで順番に表示してみて
ください
25
System.out.println(1);
System.out.println(2);
System.out.println(3);
System.out.println(4);
System.out.println(5);
System.out.println(6);
.....
26
同じようなことを繰り返すのか…
• でも20くらいまでなら…
• だけど1000は無理!!
27
ここで使うのが繰り返し処理
• 読んで字のごとし、
決められた内容を繰り返し実行する
プログラムの部分のことです。
• こういうのを「ループ」ともいいます。
28
書いてみる
29
真と偽について
• boolean型という真(1)と偽(0)
の2状態を扱うことのできる型が存在している
真はtrue
偽はfalse
としてプログラム上で使用する
30
実行結果
• こうなれば成功
31
for(int a=1;a<=10;a++){
繰り返したい内容
}
• for(変数の初期化;繰り返し条件式; 一回終わ
るごとの処理)
32
注意点
• 最初に条件式を評価しtrue(真)だった場合に
{ }の中を実行する。実行が終わると再び条件式を
評価
条件式がfalse(偽)だった場合にはfor文が終了する。
繰り返したい内容の中で変数を宣言すると
ループのたびに初期化されてしまいます
33
while文
while(繰り返し条件){
繰り返したい内容
}
繰り返し条件が真である間{ }の中を繰り返す
書いてみる
35
実行結果
こうなれば成功
36
この場合では
ループが一周するとiの値が1増加する
• ( )のなかの条件がfalse(偽)になったら終了
• もし最初から条件がfalse(偽)だったらwhlie文
は実行されない
37
無限ループに注意!!
• 条件式を間違えると
ループが止まらなくなります
38
そんな時は
• ここをクリック
39
無限ループさせたいときは…
while(条件式)
の条件式がtrueならループする
↓
40
do whlie文
• 大体while文と同じ
• だが必ず一回は実行される
• while(条件式)がfalseになったら終了
41
42
• 100までの数の中で自分が入力した数字の倍
数のみ表示するプログラムを作ってみる
43
ヒント
44
• 入力した数字までの数字の和を求めるプログ
ラムを作ってみる
• 例)
• 5と入力→15
• 6と入力→21
45
ヒント
46

基礎構文班 5回目 繰り返し