Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
7 / 5 / 3
Регистрация: 02.11.2019
Сообщений: 85
1

Большие числа java, реализовать не сложную формулу

06.03.2020, 11:56. Показов 867. Ответов 4

Author24 — интернет-сервис помощи студентам
Нужно написать программу ApproximateE.java для нахождения
приближенного значения числа "e", используя следующую формулу:
Большие числа java, реализовать не сложную формулу

Для того, чтобы получить лучшую точность, нужно использовать BigDecimal с
точностью 25 разрядов. В программе нужно определить значение e для i = 100,200, ..., 1000. для
этого вычисления числа "e" надо сделать в отдельном статическом методе в
main-классе, или даже представить в виде отдельного класса.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import java.math.BigInteger;
 
public class ApproximateE {
 
public static BigInteger factorial(long n) {
     BigInteger result = BigInteger.ONE;
     for (int i = 1; i <= n; i++)
     result = result.multiply(new BigInteger(i+""));
     return result;
     }
public static void main (String[]args) {
    BigInteger e = BigInteger.ZERO;
    BigInteger a = BigInteger.ZERO;
    BigInteger result = BigInteger.ONE;
    int n=10;
    for(int i=1; i<=n; i++) {
        a=e.divide(factorial(i));
        result=result.add(a);
        e=result;
    }
    
    System.out.println(e);
}
}
Почему всегда результат выходит "1"?
Что сделано не правильно?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.03.2020, 11:56
Ответы с готовыми решениями:

Описать на языке С# сложную формулу
Здравствуйте, мне нужно описать следующую формулу...

Как забить сложную формулу
Подскажите пожалуйста, как решать? Как забить эту формулу в ячейку? e - это что?

Как посчитать очень большие числа в Java?
BigInteger справляется меньше чем на половину с необходимыми подсчётами, то есть нужно что-то, что...

Как правильно записать сложную формулу
Всем привет, я студент, только перешли к формулам. Прошу помощи экспертов в записи этой формулы на...

4
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
06.03.2020, 12:01 2
Integer - это целые числа
0
7 / 5 / 3
Регистрация: 02.11.2019
Сообщений: 85
06.03.2020, 12:15  [ТС] 3
Цитата Сообщение от xoraxax Посмотреть сообщение
Integer - это целые числа
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.math.BigDecimal;
 
 
public class ApproximateE {
 
     
    public static BigDecimal factorial(long n) {
        BigDecimal result = BigDecimal.ONE;
         for (int i = 1; i <= n; i++)
         result = result.multiply(new BigDecimal(i+""));
         return result;
         }
    public static void main (String[]args) {
        BigDecimal e = BigDecimal.ZERO;
        BigDecimal a = BigDecimal.ZERO;
        BigDecimal result = BigDecimal.ONE;
        int n=1;
        for(int i=1; i<=n; i++) {
            a=e.divide(factorial(i));
            result=result.add(a);
            e=result;
        }
        
        System.out.println(e);
    }
    }
Exception in thread "main" java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
at java.math.BigDecimal.divide(Unknown Source)
at homeWork.ApproximateE.main(ApproximateE.java:21)
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
06.03.2020, 12:25 4
смотри перегрузки метода divide с MathContextом
0
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
06.03.2020, 12:50 5
Цитата Сообщение от valick18 Посмотреть сообщение
используя следующую формулу:
Найти сумму ряда при n=5. Что не так в коде например и Нахождение значения функции
0
06.03.2020, 12:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.03.2020, 12:50
Помогаю со студенческими работами здесь

Дайте сложную задачу по Java
Здравствуйте ! Изучаю Java , хочу прособеседоваться на Juniorа . Искал задачи в интернете , но они...

Как реализовать такую сложную анимацию?
Интересует анимация на этом сайте. pride-reklama.ru изучил немного html css. хотел бы научиться...

Реализовать сложную передаточную функцию в Simulink
Всех с наступающим! Помогите реализовать данную передаточную функцию Wд(S) = (Tд2 S + 1)(Tд3 S +...

Реализовать сложную функцию, с интегрированием и получением множества графиков.
Добрый день, только начинаю осваивать matlab. И встал вопрос, можно ли как-то использовать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru