powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Math.Log(Decimal)
11 сообщений из 11, страница 1 из 1
Math.Log(Decimal)
    #38923294
adimmat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, Друзья!
У меня одна проблема с функцией Мат.Лог()!
есть 2 параметра, decimal а, decimal b! Хочу проделать след. манипуляцию (код внизу) с ними и вывести на экран результат! Но проблема в том, что компилятор мне говорит, что данный метод работает только с переменными типа double! Был бы признателен, если бы вы помогли, как с такой проблемой разбираться. мне нужно именно для decimal, так как для меня важно количество элементов после запятой, чем больше их будет, тем лучше!
Спасибо!
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
static void Main(string[] args)
        {
            Console.WriteLine("I'm the first decimal number");
            const long a = 102.12345678901234567777777889;
            Console.WriteLine(a.ToString());

            Console.WriteLine("I'm the second decimal number");
            const long b = 112.1234784960123456777777889;
            Console.WriteLine(b.ToString());

            Console.WriteLine("I'm the first double number");
            double c = 102.123467890;
            Console.WriteLine(c.ToString());

            Console.WriteLine("I'm the second double number");
            double d = 2.601234678897777;
            Console.WriteLine(d.ToString());

            Console.WriteLine("I'm the Log result after Convert");
            (вот операция, о которой упоминалось выше)
            double lenth_1 = (Math.Floor(2 - Math.Log((double)(a - b)) / Math.Log(10, Math.E))); 
            Console.WriteLine(lenth_1.ToString());
            Console.Read();
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923298
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
long - это ж Int64, а не decimal
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923299
adimmat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pallaris, Я извиняюсь, я ошибся, там decimal везде, я просто поэкспериментировал и забыл все обратно вернуть!
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923306
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adimmat,

ясно. Если нужна супер-точность для логарифма, то нужно искать сторонние библиотеки, .Net только с double предлагает
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923308
adimmat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pallaris, А можете посоветовать какой нибудь сайт, а то я новичок и еще не силен в этих делах?! Спасибо!
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923600
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adimmatPallaris, А можете посоветовать какой нибудь сайт, а то я новичок и еще не силен в этих делах?! Спасибо!
Например Mathdotnet
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923628
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adimmatмне нужно именно для decimal, так как для меня важно количество элементов после запятой, чем больше их будет, тем лучше!
Насколько я понимаю, double в этом плане лучше, чем decimal
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923633
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79adimmatмне нужно именно для decimal, так как для меня важно количество элементов после запятой, чем больше их будет, тем лучше!
Насколько я понимаю, double в этом плане лучше, чем decimal
Чем лучше?
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923666
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Axeleron,

Вы правы, точность у decimal больше. У double границы шире, а точность хуже.
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923674
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79Вы правы, точность у decimal больше. У double границы шире, а точность хуже.
Хотя я не понимаю почему в MS не могли написать перегружаемую функцию Math.Log для decimal - так же как сделали для Math.Floor...
...
Рейтинг: 0 / 0
Math.Log(Decimal)
    #38923957
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronArm79Вы правы, точность у decimal больше. У double границы шире, а точность хуже.
Хотя я не понимаю почему в MS не могли написать перегружаемую функцию Math.Log для decimal - так же как сделали для Math.Floor...
Вероятно из-за того, что там такая точность просто не имеет смысла
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Math.Log(Decimal)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]