2014-09-01 4 views
0
import java.util.Scanner; 

public class TemperaturTo { 
    public static void main (String[] args){ 

//lager en variabel for Fahrenheit/making a variable for Fahrenheit 
Scanner keyboard = new Scanner(System.in); 
System.out.println("Skriv fahrenheit: "); 
float fahrenheit = keyboard.nextInt(); 


//lager formelen for Celsius ved gitt fahrenheit/implement the formula for Celsius 

double celsius = (fahrenheit - 32)/1.8; 

//skriver ut et resultat/write out the result 

System.out.println("Temperatur gitt i fahrenheit: " + fahrenheit); 
System.out.println("Temperatur i Celsius: " + celsius); 

if(celsius > 30 && celsius < 50){ 
    System.out.println("Det var for varmt"); 
}else if(celsius < 30 && celsius > 25) { 
    System.out.println("Dette var kanskje for varmt"); 
}else if(celsius == 25) { 
    System.out.println("Dette var akkurat passelig"); 
}else if(celsius < 20 && celsius >= 0) { 
    System.out.println("Dette var litt for kaldt"); 
}else if(celsius < 0 && celsius > -20) { 
    System.out.println("Kaldt!"); 
}else if(celsius == -273) { 
    System.out.println("Det absolutte nullpunkt!"); 
}else { 
    System.out.println("Dette har jeg ingen kommentar om"); 

    } 
} 
} 

Мой вопрос, как я могу заставить эту программу работать без ее реселлера? Я новичок в этом, и я хочу как-то зациклить функцию сканера, сделав его возможным вставить несколько переменных для Фаренгейта в растяжку, не перезагружая весь код.Как я могу заставить программу работать с разными переменными без ее ресекции?

Заранее спасибо

+1

Вы захочет разместить большую часть кода, код, в который вы вводите пользовательский ввод, и вычислять с ним результаты отображения в цикле, такие как цикл for или while. Используйте цикл for, если вы знаете ** перед ** циклом, сколько раз цикл, и используйте цикл while, если вы этого не сделаете, если вы скажете, что вы выйдете из цикла, когда пользователь вводит какое-то контрольное значение. –

ответ

2

Я предлагаю просто оборачивать все дело в сделай время цикла, прося пользовательского ввода для того, чтобы продолжить итерации, например, так:

import java.util.Scanner; 

public class TemperaturTo { 
    public static void main(String[] args) { 

    // lager en variabel for Fahrenheit/making a variable for Fahrenheit 
    Scanner keyboard = new Scanner(System.in); 
    String answer = null; 

    do { 
     System.out.println("Skriv fahrenheit: "); 
     float fahrenheit = keyboard.nextInt(); 

     // lager formelen for Celsius ved gitt fahrenheit/implement the 
     // formula for Celsius 

     double celsius = (fahrenheit - 32)/1.8; 

     // skriver ut et resultat/write out the result 

     System.out.println("Temperatur gitt i fahrenheit: " + fahrenheit); 
     System.out.println("Temperatur i Celsius: " + celsius); 

     if (celsius > 30 && celsius < 50) { 
      System.out.println("Det var for varmt"); 
     } else if (celsius < 30 && celsius > 25) { 
      System.out.println("Dette var kanskje for varmt"); 
     } else if (celsius == 25) { 
      System.out.println("Dette var akkurat passelig"); 
     } else if (celsius < 20 && celsius >= 0) { 
      System.out.println("Dette var litt for kaldt"); 
     } else if (celsius < 0 && celsius > -20) { 
      System.out.println("Kaldt!"); 
     } else if (celsius == -273) { 
      System.out.println("Det absolutte nullpunkt!"); 
     } else { 
      System.out.println("Dette har jeg ingen kommentar om"); 

     } 
     System.out.println("Do you want to continue?(Y/N) "); 
     answer = keyboard.next(); 
     while (!answer.equalsIgnoreCase("Y") 
       && !answer.equalsIgnoreCase("N")) { 
      System.out.println("Please answer with Y or N: "); 
      answer = keyboard.next(); 
     } 

    } while (answer.equalsIgnoreCase("Y")); 
} 

}

 Смежные вопросы

  • Нет связанных вопросов^_^