初めてこのサイトを利用するのとjava初心者なので、もし至らない点があればご指摘ください。
暗証番号をキーボードから入力し、正しければ「暗証番号が確認できました」間違っていれば「暗証番号が確認できません。 もう一度暗証番号を入力してください」というメッセージを表示させ、再入力(正しい暗証番号が入力されるまでループ)させるプログラムを書いているのですが、暗証番号を入力しても正しくても間違っていても数字入力が終わった時点でコンソールが終了されます。
理想
パターン1
暗証番号を入力してください。
//↓ 暗証番号入力受付
1111 //正しい暗証番号
//↓
暗証番号が確認できました。
パターン2
暗証を入力してください。
//↓ 暗証番号入力受付
2222 //間違った暗証番号
//↓
暗証番号が確認できません。もう一度暗証番号を入力してください
//↓ 暗証番号入力受付
暗証番号を入力してください。
// 正しい暗証番号が入力されるまでループ
現実
パターン1
暗証番号を入力してください。
//↓ 暗証番号入力受付
1111 //正しい暗証番号
//終了
パターン2
暗証番号を入力してください。
//↓ 暗証番号入力受付
2222 //間違った暗証番号
//終了
素人が無い知恵振り絞って考えてもダメで独学で勉強していて周りに教えてくれる人もいないのでどうか知恵を貸してください。
1個目のソースが現実のパターンになり、2個目のソースは「構文エラーがあります。"while ( Expression ) ;" を挿入して DoStatement を完了してください」が全く解決しなくて実行できてないです。
1個目
import java.util.Scanner;
public class Yooo {
public static void main(String[] args){
Scanner man=new Scanner(System.in);
boolean a;
int A; //正しい暗証番号 1111
String an;
an="暗証番号を入力してください"; a=true; System.out.println(an); A=man.nextInt(); while(!a){ System.out.println(an); A=man.nextInt(); if(A==1111){ System.out.println("暗証番号が確認できました。"); a=true; } if(a){ System.out.println("暗証番号が確認できません。 もう一度"+an); A=man.nextInt(); } } }
}
2個目
import java.util.Scanner;
public class Hoooo {
public static void main(String[] args){
Scanner man=new Scanner(System.in);
boolean a;
int A; //正しい暗証番号 1111
String an;
an="暗証番号を入力してください"; a=true; do{ System.out.println(an); A=man.nextInt(); if(A==1111){ System.out.println("暗証番号が確認できました。"); a=true; } if(a){ System.out.println("暗証番号が確認できません。 もう一度"+an); A=man.nextInt(); }while(!a); } } }
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/10/17 15:40