Результаты поиска
Разница между Math.Floor() и Math.Truncate()
В чем разница между Math.Floor() и Math.Truncate() В.NET?
Решение линейного уравнения
Мне нужно программно решить систему линейных уравнений в C, Objective C или (при необходимости) C++.
Вот пример уравнений:
-44.3940 = a * 50.0 + b * 37.0 + tx
-45.3049 = a * 43.0 + b * 39.0 + tx
-44.9594 = a * 52.0 + b * 41.0 + tx
Исходя из этого, я хотел бы получить наилучшее приближение для a , b и tx .
Небольшая диверсия в точность с плавающей запятой (im), часть 1
Большинство математиков согласны с тем, что:
электронная батарея Ni + 1 = 0
Однако большинство реализаций с плавающей запятой не согласны. Насколько хорошо мы можем разрешить этот спор?
Я очень хочу услышать о разных языках и реализациях, а также о различных методах, чтобы сделать результат как можно ближе к нулю. Будьте изобретательны!
Как сопоставить широту / долготу с искаженной картой?
У меня есть куча пар широта / долгота, которые сопоставляются с известными координатами x / y на карте (географически искаженной).
Тогда у меня есть еще одна пара широта/долгота. Я хочу построить его на карте как можно лучше. Как мне это сделать?
Сначала я решил создать систему линейных уравнений для трех ближайших точек lat/long и вычислить преобразование из них,но это совсем не работает. Поскольку это линейная система,я не могу использовать больше соседних точек.
Вы не можете предположить, что Север вверх: все, что у вас есть, - это существующие сопоставления lat/long->x/y.
Это не проекция Меркатора или что-то в этом роде. Это произвольно искажено для удобства чтения (подумайте о карте метро). Я хочу использовать только ближайшие 5-10 отображений, чтобы искажение на других частях карты не влияло на отображение, которое я пытаюсь вычислить.
Кроме того, вся карта находится в очень маленькой географической области, поэтому нет необходимости беспокоиться о том, что предположения globe--flat-earth достаточно хороши.
Как округлить результат целочисленного деления?
Я думаю, в частности, о том, как отображать элементы управления разбиением на страницы, когда используется такой язык, как C# или Java.
Если у меня есть x элементов, которые я хочу отобразить в кусках y на странице, сколько страниц потребуется?
Как округлить результат целочисленного деления?
Я думаю, в частности, о том, как отображать элементы управления разбиением на страницы, когда используется такой язык, как C# или Java.
Если у меня есть x элементов, которые я хочу отобразить в кусках y на странице, сколько страниц потребуется?
Где я могу найти "Math topic dependency tree", чтобы помочь моему самостоятельному обновлению по этому вопросу?
Я пытаюсь вернуть себе давно забытые математические навыки. Это часть гораздо большего проекта, чтобы эффективно "teach myself software development" с нуля (подробности здесь , Если вы заинтересованы в помощи).
Моим самым большим камнем преткновения до сих пор была математика - как я могу узнать об алгоритмах и асимптотической нотации без нее??
То, что я ищу, - это своего рода "dependency tree", показывающий, что мне нужно знать. Требуется ли исчисление перед дискретным? Что мне нужно знать перед исчислением (читайте: компоненты к общей теме "pre-calculus")? Что я могу вырезать, чтобы ускорить проект ("что я могу вернуться позже")?
Спасибо!
Алгоритм нахождения наибольшего простого множителя числа
Каков наилучший подход к вычислению наибольшего простого множителя числа?
Я думаю, что наиболее эффективным будет следующее:
- Найти наименьшее простое число, которое делится чисто
- Проверьте, является ли результат деления простым
- Если нет, найдите следующий самый низкий
- Перейти к 2.
Я основываю это предположение на том, что легче вычислить малые простые множители. Разве это правильно? Какие еще подходы я должен рассмотреть?
Edit: теперь я понял, что мой подход бесполезен, если в игре есть более 2 простых множителей, поскольку Шаг 2 терпит неудачу, когда результат является произведением двух других простых чисел, поэтому необходим рекурсивный алгоритм.
Правка снова: и теперь я понял, что это все еще работает, потому что последнее найденное простое число должно быть самым высоким, поэтому любая дальнейшая проверка не-простого результата из шага 2 приведет к меньшему простому числу.
Глюк калькулятора Google, может ли float vs double быть возможной причиной?
Я сделал это просто для удовольствия (так что, не совсем вопрос, я вижу, что downmodding уже происходит), но вместо новообретенной неспособности Google правильно делать математику (проверьте это! согласно google 500,000,000,000,002-500,000,000,000,001 = 0), я решил, что попробую следующее в C, чтобы запустить небольшую теорию.
int main()
{
char* a = "399999999999999";
char* b = "399999999999998";
float da = atof(a);
float db = atof(b);
printf("%s - %s = %f\n", a, b, da-db);
a = "500000000000002";
b = "500000000000001";
da = atof(a);
db = atof(b);
printf("%s - %s = %f\n", a, b, da-db);
}
При запуске этой программы вы получаете следующее
399999999999999 - 399999999999998 = 0.000000
500000000000002 - 500000000000001 = 0.000000
Казалось бы, Google использует простую 32-битную плавающую точность (ошибка здесь), Если вы переключите float на double в приведенном выше коде, вы исправите проблему! Может быть, это оно и есть?
/mp
Вычислить расстояние между двумя точками широты и долготы? (Формула гаверсинуса )
Как рассчитать расстояние между двумя точками, указанными широтой и долготой?
Для уточнения я хотел бы получить расстояние в километрах; точки используют систему WGS84, и я хотел бы понять относительную точность доступных подходов.