我的总问题40和Correct_Answer = 36且Incorrect_Answer = 4.
如何在android程序中将它乘以百分比。
心灵的结果总是显示0.0%
代码:
int total_score = (Correct_Answer/40)*0.01);
Txt_Total_Score.setText(Integer.toString(total_score + "%"));
答案 0 :(得分:2)
你正在两个整数之间执行整数除法,其中除数大于被除数,并且因为36/40将给你0.9,总得分是一个int,小数部分被剥离。所以你必须从股息和除数中推广一个浮动执行演员:
在最后一行中,因为你用一个整数连接一个String,你会得到一个String作为结果(Integer.toString没用)
float correctAnswerFloat = (float)Correct_Answer / 40 ;
int total_score = (int )( correctAnswerFloat * 100 );
Txt_Total_Score.setText(total_score + " %"));
答案 1 :(得分:1)
而不是整数使用float。并且还乘以100。
float total_score = ((float)Correct_Answer/40)*100);
Txt_Total_Score.setText(Float.toString(total_score + "%"));
答案 2 :(得分:0)
试试这样:
float total_score = ((float)Correct_Answer * 100 / 40); // Edited with information from comments :)
Txt_Total_Score.setText(Float.toString(total_score) + "%");
答案 3 :(得分:0)
你应该试试这个:
int total_score = (Correct_Answer*100)/40;
在你做的事情中,括号给出0 int
小数点后缀的结果。首先乘以100然后除以总问题。