2016-12-29 9 views
-2

%を計算したいと思います。ここのデータは完全に動的です。Javaでパーセンテージ計算の結果は定義されていません

int sample1 = 0; 

int total = 0; 

int finalValue = 0; 

finalValue = ((sample1*100)/total) 

ここで、finalValueは、データがある場合とまったく同じように印刷されます。しかし、データベースからの値が0(ゼロ)の場合、この単純な計算によってエラーが発生します。計算機で計算を実行すると、「結果は未定義です」と表示されます。だからそのような場合私はif and elseの条件を使ってみました。

if(sample1>0) 
{ 
    //execute code 
} 
else 
{ 
    //sample1 = 0; 
} 

ここではこのロジックは機能しません。だから、パーセンテージ計算を行うのは簡単で好ましい方法でしょう。

+0

完全な関連コードをご記入ください – sidgate

+0

私にはわかりませんが、あなたが投稿した小さなものに基づいてあなたの問題になる可能性についての手掛かりはありません。 –

+0

実際には "未定義"とは言いますか?それを作り出すコードは何ですか?それはアフリカのJava概念ではありません。 – Carcigenicate

答えて

0

最初に合計を確認する必要があります。

ゼロによる除算は許可されていませんし、それがエラーに

if(total != 0) 
{ 
    //execute code 
} 
else 
{ 
throw (err) ; // handle the division by zero error 
} 

注意を与える理由です

:!=を意味していないに等しい

あなたは事実を利用することができる
0
finalValue = ((sample1*100)/total) 

0で割っています。

最初にtotalを確認する必要があります。

データベースからのデータがある場合は、nullになる可能性があります。

0

その(intではなく)double

int sample1 = 0; 
    int total = 0; 
    double finalValue = 0; 
    finalValue = ((sample1 * 100)/((double) total)); 
    System.out.println(finalValue); 

このプリント:

不定値を表すことができ
NaN 

「数字ではありません」の略です。

関連する問題