実現したいこと
エラーを解消して、コンパイルを成功させ、それぞれの出力を実現させる。
発生している問題・分からないこと
①エラー:式の開始が不正です
②エラー: ';'がありません
③エラー: 'else'への'if'がありません
エラーメッセージ
error
1Task1_6.java:38: エラー: ';'がありません 2 if (name.equals(CONST_ALICE) ) && (pass.equals(CONST_PASS)) { 3 4 ^ 5Task1_6.java:40: エラー: 'else'への'if'がありません 6 } else if(name.equals(CONST_ALICE) ){ 7 ^ 8Task1_6.java:46: エラー: 式の開始が不正です 9 if (name.equals(CONST_ALICE) ) && (pass.equals(CONST_PASS)) { 10 ^ 11Task1_6.java:46: エラー: ';'がありません 12 if (name.equals(CONST_ALICE) ) && (pass.equals(CONST_PASS)) { 13 14 ^ 15Task1_6.java:48: エラー: 'else'への'if'がありません 16 } else if (pass.equals(CONST_PASS) ) { 17 ^ 18エラー6個
該当のソースコード
Java
1/** 2 * Task1-6: 課題内容 3 * 4 * 本課題では、すべての定数(合計6種類)を使いつつ、if文の使い方に慣れていきましょう! 5 * 問① 〜 問⑤まで回答お願いします! 6 * 7 */ 8public class Task1_6 { 9 10 // 定数(条件) 11 // ① 名前とパスワードの定数を定義してください。 12 // 補足: 13 // 定数は②〜⑤で使い回すために定義しておきます。 14 // final修飾子を付与すると、変数(動的に変わる値)ではなく、定数(変更不可な定まった値)となります。 15 // 「ここへ記述」部分へ適当な値を記述しましょう。 16 // ※詳しくはJava2-10のwikiにて紹介します。 17 private static final String CONST_ALICE = "name"; 18 private static final String CONST_PASS = "pass"; 19 // 定数(メッセージ) 20 private static final String CONST_MSG_SUCCESS = "ログイン成功です。"; 21 private static final String CONST_MSG_ERROR_NAME = "名前に誤りがあります。"; 22 private static final String CONST_MSG_ERROR_PASS = "パスワードに誤りがあります。"; 23 private static final String CONST_MSG_ERROR_INPUT = "入力情報に誤りがあります。"; 24 25 public static void main(String[] args) { 26 27 // 以下の変数「name(名前)」「pass(パスワード)」を使用して、②〜⑤の条件を満たす処理を記述してください。 28 // 名前とパスワードは画面からの入力値だと想定してみましょう。 29 String name = "alice"; 30 String pass = "pass"; 31 32 // ② 名前が「 alice 」、パスワードが「 pass 」であった場合、「 ログイン成功です 」と出力してください。 33 if (name.equals(CONST_ALICE) && pass.equals(CONST_PASS)) { 34 System.out.println(CONST_MSG_SUCCESS); 35 } 36 37 // ③ 名前のみ正しい場合、「 パスワードに誤りがあります。 」と出力してください。 38 if (name.equals(CONST_ALICE) ) && (pass.equals(CONST_PASS)) { 39 System.out.println(CONST_MSG_SUCCESS); 40 } else if(name.equals(CONST_ALICE) ){ 41 System.out.println(CONST_MSG_ERROR_PASS); 42 } 43 44 45 // ④ パスワードのみ正しい場合、「 名前に誤りがあります。 」と出力してください。 46 if (name.equals(CONST_ALICE) ) && (pass.equals(CONST_PASS)) { 47 System.out.println(CONST_MSG_SUCCESS); 48 } else if (pass.equals(CONST_PASS) ) { 49 System.out.println(CONST_MSG_ERROR_NAME); 50 } 51 52 53 // ⑤ 名前もパスワードも間違っていた場合は、「 入力情報に誤りがあります。 」と出力してください。 54 if (!(name.equals(CONST_ALICE)) && !(pass.equals(CONST_PASS))){ 55 System.out.println(CONST_MSG_ERROR_INPUT); 56 } 57 } 58} 59
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
エラー: 式の開始が不正です
→メソッドが正しく閉じられてない場合発生するようですが、正しく閉じれていると思います。
エラー: ';'がありません
→出力のメソッドには終了場所に付けると思うのですが、if文のメソッドにも付けるのでしょうか?
エラー: 'else'への'if'がありません
→elseのすぐ右にifがちゃんとあるように思いますが、エラーへの認識は違うでしょうか?
補足
特になし

回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/07/11 12:23