Как разделить без остатка (не округлить а просто "отрезать" остаток после запятой) на C#?
UPD
Я пытаюсь простой таймер написать для Unity :)
После чего секунды снова пересчитываются в часы,минуты и секунды и присваиваются соответствующим переменным.
Вот тут и появляется проблема: Нужно либо конвертировать секунды из float в int, либо изначально все переменные сделать float но "отрезать" знаки после запятой.
https://ideone.com/DTGGxw
using System;
public class Test
{
public static void Main()
{
double x = 1e11;
Console.WriteLine((long)x / 60);
Console.WriteLine(Math.Floor(x / 60));
}
}
И вообще, нет никакого смысла использовать дробные числа для времени. Используй целые секунды или миллисекунды, как везде.
Понимаю, что это костыль и ужасный способ реализации, но он роботает
int a = 10, b = 3;
float c = a / b; //рекомендую сделать проверку (деление на ноль)
int result = 0; //ответ без остатка
string[] arr = c.ToString().Split(',', '.');
result = Convert.ToInt32(arr[0]);
Еще раз повторяю - это костыль.
Если есть другой способ реализации - предлагайте. Не стоит минусовать данный ответ, лучше свой предложите. Всем удачи :)
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости