2014-11-12 2 views
1

Поэтому я хотел бы, чтобы вычислить процент прогресса моей программы в качестве ближайшего целого значенияРасчет Integer Процент

В моих примерах позволяет принимать

int FilesProcessed = 42; 
int TotalFilesToProcess = 153; 

Так Сначала я попробовал:

Int TotalProgress = ((FilesProcessed/TotalFilesToProcess) * 100) 

Это возвращает TotalProgress = 0

Тогда я пробовал

Int TotalProgress = (int)((FilesProcessed/TotalFilesToProcess) * 100) 

Это дает ошибку компилятора говоря Cannot implicitly convert type decimal to int

Ive пытался

Int TotalProgress = Math.Round((FilesProcessed/TotalFilesToProcess) * 100) 

и получить The call is ambiguous between decimal and double

и поэтому теперь я пришел сюда за помощью?

+0

Какие типы '' FilesProcessed' и TotalFilesToProcess'? – musefan

+0

или умножить на 100, чем разделить на 'TotalFiles' – chouaib

ответ

7

Cast к double первым, чтобы он не вычислить разделение между integers:

int totalProgress = (int)((double)FilesProcessed/TotalFilesToProcess * 100); 
Смежные вопросы