重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

import java.io.*;
class Sample1
{
public static void main(String args[])throws IOException
{

BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));
do{

System.out.println("1:入力文字整数確かめ");
System.out.println("2:終了");
String hako = br.readLine();
int sen = Integer.parseInt(hako);
switch (sen){
case 1:
System.out.println("整数を入力してください。");
String hako2 = br.readLine();
int hako3 = Integer.parseInt(hako2);
if ((hako3%2)==0){
System.out.println("これは偶数ですね。");
}
System.out.println("奇数ですね。");
break;
case 2:
System.out.println("終了いたします。");
break;
}
}while(sen != 2);

}
}
上記のように組んだのですが、}whileのところでエラー
が出てしまうのです。
これってなぜなのでしょう??
初心者特有の質問かもしれませんがご教授いただけたら嬉しいです。宜しくお願いいたします。
関係ないのかも知れませんがJDK1-5-006を使用してます。

A 回答 (3件)

ちょっと試してないですが、sen のスコープの問題だと思います。



do { の前に「int sen = 0;」 と記述して、
int sen = Integer.parseInt(hako); から「int」を取れば、
コンパイルエラーはなくなると思います。
    • good
    • 0
この回答へのお礼

ありがとうございます。宣言場所がだめだったのですね。
うう・・お恥ずかしい。
お返事ありがとうございました^^

お礼日時:2006/03/08 00:00

ほかの方のご指摘通りです。

コードを書いておきます。やりすぎですか。
import java.io.*;
class Sample1{
public static void main(String args[])throws IOException{
BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));
int sen = 0;
do{
System.out.println("1:入力文字整数確かめ");
System.out.println("2:終了");
String hako = br.readLine();
sen = Integer.parseInt(hako);
switch (sen){
case 1:
System.out.println("整数を入力してください。");
String hako2 = br.readLine();
int hako3 = Integer.parseInt(hako2);
if ((hako3%2)==0){
System.out.println("これは偶数ですね。");
}
System.out.println("奇数ですね。");
break;
case 2:
System.out.println("終了いたします。");
break;
}
}while(sen != 2);
}
}
    • good
    • 0
この回答へのお礼

うう・・大切なお時間を沢山使っていただけて本当にありがとうございます。
タチワさんを含めて、お答えいただいたご回答はみなさんすばらしくわかりやすいので、今回は先着順とさせていただきました。
なので、タチワさん、お気を悪くしないでください。
お返事ありがとうございました^^

お礼日時:2006/03/08 00:05

{


}while();
のブロックの中で
int sen; が宣言されているからですね。
外にだしましょう
    • good
    • 0
この回答へのお礼

いつもお返事いただけてありがとうございます。
どんな質問もお答えできるのですね・・。
また解らないことがありましたら宜しくお願いします^^

お礼日時:2006/03/08 00:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!