2014-11-23 1 views
-2
import java.util.*; 
public class lab1 
{ 
public static void main(String args []) 
{ 
    double Fahrenheit; 
    int celsius = 0; 
    while (celsius <= 15); 
    Fahrenheit= (9.0/5.0 * celsius) + 32; 
    System.out.println("Fahrenheit:" + Fahrenheit + "celsius:" + celsius); 
    celsius++; 
    } 
    } 

이 프로그램에 문제가 있습니다. 나는 컴파일 오류를 얻지 않지만 실행하면 결과를 표시하지 않습니다. 섭씨 온도가 주어지며 화씨를 찾을 때마다 1을 더해야합니다. 또한 : 어떻게 아래의 예섭씨에서 화씨로 변환하는 동안 루프

Math scores   English scores 
0       0 
2       2 
3       7 
4       10 
2       0 
2       1 

답변

0

당신의 while 루프 후 세미콜론 infinite로 프로그램을 일으키는 (대신 수학, 영어의 I는 화씨와 섭씨를 데려 가고 싶다는)처럼 두 개의 열이있는 결과를 보여 않습니다 루프, 그래서 아무것도 인쇄 중입니다.

while (celsius <= 15);while (celsius <= 15)으로 변경하고 while 회 돌이 후에 중괄호로 묶은 다음 세 줄을 둘러싸 야합니다.

+0

도와 주셔서 감사합니다. 나는 또 다른 질문이있다. – Charlos

+0

자바를 실행하면 결과가 화씨와 섭씨로 표시됩니다. 화씨를위한 열과 섭씨 열의 열을 만드는 방법이 있습니까?이 열은 한 번 표시되며 그 다음에 결과가 오른쪽입니까? – Charlos

+0

루프 앞에 첫 번째 행 ("화씨 \ tCelsius") 만 인쇄하면됩니다. 그런 다음 루프 내부에서 값 (화씨 + "\ t"+ 섭씨) 만 인쇄하십시오. – irrelephant

0

while 루프에는 작동시킬 블록이 없습니다. 그것은 다음과 같이해야합니다 :

자바의 모든 루프는 자신의 몸 (동작 블록)가

import java.util.*; 
public class Lab1 { 
    public static void main(String[] args) { 
    double fahrenheit, celsius = 0; 
    while (celsius <= 15) { 
     fahrenheit = (9.0/5.0 * celsius) + 32; 
     System.out.println("Fahrenheit:" + fahrenheit + "Celsius:" + celsius); 
     celsius++; 
    } 
    } 
} 
, 그것이이 블록 내에서 수행해야하는 작업을 반복합니다; 당신은 아무것도하지 않으므로 무한대로 반복됩니다.