2017-06-30 50 views
-5

Hey people of Stackoverflow! Javaオンラインでこのレッスンを行っている間に私が遭遇したエラーについての質問があります。だから、これはコードです:Javaで数値を分割する

import java.util.Scanner; 
public class GradesAndPoints { 
    public static void main(String[] args) { 

     System.out.print("Type in your score between (0-27): "); 
     Scanner ask = new Scanner(System.in); 
     int num = ask.nextInt(); 

     int result = (num/27); 

     System.out.println(result); 

エラーがある:私は、変数「numが」任意のint型の値であるとのコードを実行するたびに、それが0に出力し、このエラーが発生した理由を誰かが私に説明することができますし、私はこれを解決するために実装することができますソリューション?

+1

*変数 "num"がint値のコードを実行するたびに、0になるように出力されます。*本当ですか?あなたは27を試しましたか? – shmosel

答えて

0

あなたがこれをやっているように、あなたはダイビングの整数です。これは、定義上、切り捨てられた整数を取得します。

5/10 = 0 

あなたが(最後に.を追加することによって)フロートにそれらのいずれかを有効にした場合、あなたが探しているものである小数点除算を、浮動取得します。

5./10 = 0.5 
5/10. = 0.5 
5.0/10.0 = 0.5