演習
■演習1-シンプルなインプット
mainメソッドにて以下の処理を実行するInputp01
クラスを作成してください。
1.あなたの名前は?と画面出力し、入力を受け付ける
2.「入力された値」+さん、こんにちは、と画面出力
ヒント:
・BufferedReader部分は、以下の見本を見ながら、もしくはコピペでかまいません。
コピペする場合、コピペの後にCtrl+Shift+o
を入力し、Import文を追加してください。(詳細は解説動画にて)
・readLine部分の赤線エラーを消すには、候補から「スロー宣言」の追加が必要です。
BufferedReader reader =new BufferedReader(new InputStreamReader(System.in));
//変数nameに入力値を代入
String name = reader.readLine();
■演習1解答例
package lesson03input;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Inputp01 {
public static void main(String[] args) throws IOException {
// インプットを受け付けるための機能readerを用意
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
// 変数nameに入力値を代入
String name = reader.readLine();
System.out.println(name + "さん、こんにちは");
}
}
■演習2-複数回のインプット
以下の処理を実行するInputp02
クラスを作成してください。
変数は、必要なものを自分で用意すること。
1.あなたの名前は?と画面出力し、入力を受け付ける
2.好きな食べ物は?と画面出力し、入力を受け付ける
3.趣味は?と画面出力し、入力を受け付ける
4.「こんにちは、(あなたの名前)さん。(あなたの名前)さんの好きな食べ物は(好きな食べ物)、趣味は(趣味)ですね。」と画面出力。()内は、1~3の処理の入力値を出力すること。
ヒント:
・BufferedReader部分は、以下の見本を見ながら、もしくはコピペでかまいません。
・変数は、3つ必要です。
・変数名は、中身がわかるようにするとミスなく作りやすいです。
//インプットを受け付けるための機能readerを用意
BufferedReader reader =new BufferedReader(new InputStreamReader(System.in));
//変数nameに入力値を代入
String name = reader.readLine();
■演習2解答例
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Inputp02 {
public static void main(String[] args) throws IOException {
// インプットを受け付けるための機能readerを用意
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
// 画面に「あなたの名前は?」と出力して入力を受け付ける
System.out.println("あなたの名前は?");
String name = reader.readLine();
// 画面に「好きな食べ物は?」と出力して入力を受け付ける
System.out.println("好きな食べ物は?");
String favoriteFood = reader.readLine();
// 画面に「趣味は?」と出力して入力を受け付ける
System.out.println("趣味は?");
String hobby = reader.readLine();
// 取得した情報を用いて挨拶を行う
System.out.println("こんにちは、" + name + "さん。" + name + "さんの好きな食べ物は" + favoriteFood + "、趣味は" + hobby + "ですね。");
}
}
■演習3-入力値を計算(以降のレクチャーでヒントあり)
以下の処理を実行するInputp03クラスを作成してください。
変数は、必要なものを自分で用意すること。
1.りんごの金額を入力してくださいと画面出力し、入力を受け付ける
2.りんごの数を入力してくださいと画面出力し、入力を受け付ける
3.「合計は(りんごの数*りんごの金額の計算結果)です」と画面出力。
()内は、1~2の処理の入力値の乗算(かけ算)の結果を出力すること。
ヒント:
・BufferedReader部分は、以下の見本を見ながら、もしくはコピペでかまいません。
//インプットを受け付けるための機能readerを用意
BufferedReader reader =new BufferedReader(new InputStreamReader(System.in));
*以下、まだ講義で伝えていない内容です。次の動画で詳しく解説しています。
余力がある方は以下のヒントだけでトライしてみてください。
・reader.readLine()の結果は文字型です。一度、String型の変数に格納する必要があります。
//変数nameに入力値を代入
String input = reader.readLine();
・String型をintに変えるには、Integer.parseInt()
メソッドを使います。
変数inputの内容をint型の変数applePriceに格納する場合、以下のように記述します。
int applePrice =Integer.parseInt(input);
■演習3:追加ヒント
演習3の追加ヒントです。
★の中身を、コメントに書かれている処理に置き換えれば完成します。
package lesson03input; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Inputp03 { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String input; System.out.println("りんごの金額を入力してください"); input=reader.readLine(); //★inputの値を数値変換して、int型の変数applePriceに代入する処理 System.out.println("りんごの数を入力してください"); input=reader.readLine(); //★inputの値を数値変換して、int型の変数appleNumに代入する処理 //★applePrice✕appleNumの結果を、int型の変数sumに代入する処理 //★sumを画面出力する処理 } }
演習3回答例
package lesson03input; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Inputp03 { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String input; System.out.println("りんごの金額を入力してください"); input = reader.readLine(); //★inputの値を数値変換して、int型の変数applePriceに代入する処理 int applePrice = Integer.parseInt(input); System.out.println("りんごの数を入力してください"); input = reader.readLine(); //★inputの値を数値変換して、int型の変数appleNumに代入する処理 int appleNum = Integer.parseInt(input); //★applePrice✕appleNumの結果を、int型の変数sumに代入する処理 int sum = applePrice * appleNum; //★sumを画面出力する処理 System.out.println("合計は: " + sum +"です。"); } }
問題集
1.mainメソッドにて以下の処理を実行するInputd01
クラスを作成してください。
・「選択肢を選んでください1:走って追いかける 2:電話する 3:あきらめる」と画面出力し、入力を受けつける
・「(入力された値)を選択しました」 と画面出力
*今回、入力値は文字列のままでOKです。数値変換する必要はありません。
2.mainメソッドにて以下の処理を実行するInputd02
クラスを作成してください。
・「Playerの攻撃力を決定します。1から10の値のいずれかを入力してください」と画面出力し、入力を受けつける
・「攻撃力は(入力値)です。」と画面出力
・変数PlayerParam
を宣言し、10-(入力値)
の計算結果を代入
・「割り振り可能なパラメーターは残りPlayerParam
です」と画面出力
ヒント:入力値を計算に利用するためには、数値に変換する必要があります。
問題集回答例
1.mainメソッドにて以下の処理を実行するInputd01
クラスを作成してください。
・「選択肢を選んでください1:走って追いかける 2:電話する 3:あきらめる」と画面出力し、入力を受けつける
・「(入力された値)を選択しました」 と画面出力
*今回、入力値は文字列のままでOKです。数値変換する必要はありません。
package lesson03Input; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Inputd01 { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); System.out.println("選択肢を選んでください 1:走って追いかける 2:電話する 3:あきらめる"); String input = reader.readLine(); System.out.println(input + "を選択しました"); } }
2.mainメソッドにて以下の処理を実行するInputd02
クラスを作成してください。
・「Playerの攻撃力を決定します。1から10の値のいずれかを入力してください」と画面出力し、入力を受けつける
・「攻撃力は(入力値)です。」と画面出力
・変数PlayerParam
を宣言し、10-(入力値)の結果を代入
・「割り振り可能なパラメーターは残りPlayerParam
です」と画面出力
ヒント:入力値を計算に利用するためには、数値に変換する必要があります。
package lesson03Input; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Inputd02 { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); System.out.println("Playerの攻撃力を決定します。1から10の値のいずれかを入力してください"); int attackPower = Integer.parseInt(reader.readLine()); System.out.println("攻撃力は" + attackPower + "です。"); int playerParam = 10 - attackPower; System.out.println("割り振り可能なパラメーターは残り" + playerParam + "です"); } }