자바 이거 어디가 잘못된건가요?
벛꽃잎
자바 왕왕초보입니다!!
맨아래 제가 표시해둔곳에서 계속 오류가 나는데..
자바 왜 틀린건가요?
그리고 오류가나서 아직 돌려보지 못했거든요~ 돌려보면 잘 돌아갈까요?
이상한 곳이 있으면 좀 알려주세요~
package pro3;
public class pro3 {
public static void main(String args[]) {
System.out.println(1.화씨를 섭씨로 변환. );
System.out.println(2.섭씨를 화씨로 변환. );
System.out.println(숫자를 입력하세요 : );
try{
int a;
double b,c;
a = (int) System.in.read( );
if(a==1)
{
System.out.println(화씨를 입력하세요 : );
b = (int) System.in.read( );
c = 1.8 * (b - 32.0);
System.out.print(화씨에서 섭씨로 변환한 );
}
else if(a==2)
{
System.out.println(섭씨를 입력하세요 : );
b = (int) System.in.read( );
c = 5.0 / 9.0 * (b - 32.0);
System.out.print(섭씨에서 화씨로 변환한 );
}
else
{
System.out.println(잘못입력하셨습니다 );
}
} catch (Exception c) {
System.out.print(결과값은 +c+ 입니다);
}
}
-
벤자민
사과를 바라고 쓴 댓들은 아니예요;; 저도 예전에 질문 많이 하였고;; 요즘도 가끔 하고;;
과제야 어떻게든 넘기시겠지만,,
앞으로가 중요하실거 같아서요. 금방 느실겁니다 !! -
빵야
이런 죄송해요~ 사이트 참조해서 공부 하겠습니다~
-
슬우
catch (Exception c) {
System.out.print(\결과값은\ +c+ \입니다\);
}
이놈은 try 에서 예외가 발생하면 Exception을 c로 받잖아요.
그래서 님이 원하시는 결과은 double c 값이 안나와요..
예외에 대한 구문을 출력하겠지요..
특별한 이유가 없다면..
간단하게 try catch를 걷어내시는게 좋을듯 합니다.
어차피 예외가 발생하면 제대로된 값이 안나오겠지요.. -
블1랙캣
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
이 구문은 실행시에 값을 사용자로 부터 입력을 받는 아이랍니다. -
유진
죄송해요~
저희 교수님이 이거 소스를 어떻게 입력하고 이런거를 하나도 안가르켜주시고..
출력되면 어떻게만 나오는지를 추구하시는 분이시라.. -
즐겨찾기
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 는 어디에 쓰는건가요?
어떤거를 지워야죠?
catch 부분에는 예외 처리 구문을 넣으시고요, 어떻게요?
그리고 마지막에 결과 값을 찍어줘야한다고 하는데.. 어떻게요? 마지막에 결과값
System.out.print(\결과값은\ +c+ \입니다\);이렇게 하면 안되나요? -
도1도캣
저.. 정말 왕왕초보예요~
모르겠어요~~ 님들 말이 뭔지도 모르겠어요~ -
시내
try 에서 Exception 이 발생해야 catch 블럭을 수행하는데,
try 에서 Exception 던지는 부분이 없어서
catch를 수행하지 않을거 같네요..
결과 값을 못 받겠지요..
catch 부분에는 예외 처리 구문을 넣으시고요,
finally 부분에 결과 값을 찍어주서야 할 거 같습니다. -
착히
(int) System.in.read( );
System.in.read() 의 리턴값은 char고 그걸 int로 캐스팅하면 char의 아스키코드가 넘어가겠죠..
정상적인 값을 입력받으려면 타입캐스팅을 사용하면 안되요...
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
Integer.parseInt(br.readLine());
대충 이런식으로 하면 될듯.