Q:

Calculating a value and rounding to nearest whole number

I'm trying to calculate a number below. I keep getting 0 when it should be something like 83.12454.
I believe i want a Double variable type. What am I doing wrong below? Once I get the value I need to trim the decimal.
Ratings GetNoVotes = new Ratings();
int DATotalYesVotes = GetNoVotes.GetTotalNOVotes(1, yesPictureId); //80
int DaTNoVotes = GetNoVotes.GetTotalNOVotes(2, yesPictureId);      //15
int DaTotalVotes = DATotalYesVotes + DaTNoVotes;                   //95

double Percentage = (DATotalYesVotes / DaTotalVotes)*100;          //84.2105
// Math.Round(Percentage);
TotalyesVotes.Text = Percentage.ToString();

A:

The problem is that DATotalYesVotes is an integer less than DaTotalVotes.  Because / means integer division, it rounds down before multiplying by 100.  Here are two approaches:
(1) Multiply by 100 first (still some roundoff error - but not much)
double Percentage = (DATotalYesVotes * 100 / DaTotalVotes); 

(2) Cast to doubles first
double Percentage = ((double)DATotalYesVotes / (double)DATotalVotes)*100;

