Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 0
Регистрация: 27.03.2013
Сообщений: 84

Формула

13.10.2015, 23:03. Показов 424. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, требуется написать формулу. Подскажите пожалуйста, где я сделал ошибки и как их можно исправить.
Тип данных float.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class test {
    public static void main(String[]args){
        float[] a={0.3F, 0.7F, 0.9F, 1.3F, 1.7F, 1.9F, 2.3F, 2.7F, 2.9F, 3.3F, 3.7F};
        float s = 0;
        float c = 0;
        float d = 0;
    for(int i=0;i<args.length;i++){
        c+=Math.pow(Math.abs(Math.sin(a)), Math.sin(a))+Math.pow(Math.abs(Math.cos(a)), Math.cos(a));
    }
    c+=Math.log(c);
    for(int i=0;i<args.length;i++){
        d+=Math.pow(Math.pow(Math.sin(a),Math.sin(a)), 2);
    }
    d+=3*d;
    s+=c/d;
    System.out.println(s);
}
}
Миниатюры
Формула  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.10.2015, 23:03
Ответы с готовыми решениями:

Формула
Помогите пожалуйста, написать формулу в Java. Тип данных float. S=\sum_{i=1}^{11}\frac{cos\, 2a_i}{1-sin\, 2a_i}

Формула сочетаний из n по k, выразить n
Добрый день. Есть следующая задача: Все в мире знают, что число сочетаний из N по K есть C = N! / (K! * (N - K)!) и что 0! = 1. ...

Неправильно считается формула
Выполнял лабораторку. Суть - надо посчитать систему уравнений как на картинке. Написал следующую функцию public static double...

5
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
13.10.2015, 23:50
во первых цикл, а именно i у тебя от 1 до 11 включительно

Добавлено через 17 минут
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public class Test {
    public static void main(String[]args){
        float[] a = {0.3f, 0.7f, 0.9f, 1.3f, 1.7f, 1.9f, 2.3f, 2.7f, 2.9f, 3.3f, 3.7f};
 
        float summa = 0f;
 
        for (int i = 0; i < a.length; i++){
            float sinA = (float) Math.sin(a[i]);
            float cosA = (float) Math.cos(a[i]);
            float onePart = (float) (Math.pow(Math.abs(sinA), sinA) + Math.pow(Math.abs(cosA), cosA));
 
            float aPow = (float) Math.pow(a[i], Math.sin(a[i]));
            float twoPart = (float) Math.pow(Math.sin(aPow), 2);
 
            float s = (float) (Math.log(onePart) / (3 * twoPart));
 
            System.out.println("a[" + i + "] = " + a[i] + "; S = " + s + ";");
            summa += s;
        }
 
        System.out.print("\n ОТВЕТ: S = " + summa + ";");
    }
}
Добавлено через 19 минут
Вернее сверху код не правильный, там общая сумма считается 11 раз... переделал, ниже:

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
public class Test {
    public static void main(String[]args){
        float[] a = {0.3f, 0.7f, 0.9f, 1.3f, 1.7f, 1.9f, 2.3f, 2.7f, 2.9f, 3.3f, 3.7f};
        
        float summaOnePart = 0f;
        for (int i = 0; i < a.length; i++){
            float sinA = (float) Math.sin(a[i]);
            float cosA = (float) Math.cos(a[i]);
            float onePart = (float) (Math.pow(Math.abs(sinA), sinA) + Math.pow(Math.abs(cosA), cosA));
            summaOnePart += onePart;
        }
        System.out.println("Сумма в числителе равна: " + summaOnePart);
 
        float summaTwoPart = 0f;
        for (int i = 0; i < a.length; i++){
            float aPow = (float) Math.pow(a[i], Math.sin(a[i]));
            float twoPart = (float) Math.pow(Math.sin(aPow) ,2);
            summaTwoPart += twoPart;
        }
        System.out.println("Сумма в знаменателе равна: " + summaTwoPart);
 
        float shareSumma = (float) (Math.log(summaOnePart) / (3 * summaTwoPart));
 
        System.out.print("\nОТВЕТ: S = " + shareSumma + ";");
    }
}
Добавлено через 1 минуту
или можно 2 цикла объединить для меньшего объёма кода:

Добавлено через 1 минуту
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class Test {
    public static void main(String[]args){
        float[] a = {0.3f, 0.7f, 0.9f, 1.3f, 1.7f, 1.9f, 2.3f, 2.7f, 2.9f, 3.3f, 3.7f};
 
        float summaOnePart = 0f, summaTwoPart = 0f;
        for (int i = 0; i < a.length; i++){
            float sinA = (float) Math.sin(a[i]);
            float cosA = (float) Math.cos(a[i]);
            float onePart = (float) (Math.pow(Math.abs(sinA), sinA) + Math.pow(Math.abs(cosA), cosA));
            summaOnePart += onePart;
 
            float aPow = (float) Math.pow(a[i], Math.sin(a[i]));
            float twoPart = (float) Math.pow(Math.sin(aPow) ,2);
            summaTwoPart += twoPart;
        }
        System.out.println("Сумма в числителе равна: " + summaOnePart + ";\nСумма в знаменателе равна: " + summaTwoPart + ";");
        
        float shareSumma = (float) (Math.log(summaOnePart) / (3 * summaTwoPart));
 
        System.out.print("\nОТВЕТ: S = " + shareSumma + ";");
    }
}
0
1 / 1 / 0
Регистрация: 27.03.2013
Сообщений: 84
14.10.2015, 12:41  [ТС]
Цитата Сообщение от ArtemFM Посмотреть сообщение
(float) (Math.pow(Math.abs(sinA), sinA) + Math.pow(Math.abs(cosA), cosA));
Подскажите пожалуйста, обязательно ставить (float)? или можно и без него?
0
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
14.10.2015, 13:06
по сути функция Math... возвращает значение double

(float) Math... перекастуем (переводим) во float. В данном случае обязательно. Если переменные у тебя будут double, тогда не надо
0
1 / 1 / 0
Регистрация: 27.03.2013
Сообщений: 84
14.10.2015, 14:39  [ТС]
Цитата Сообщение от ArtemFM Посмотреть сообщение
float sinA = (float) Math.sin(a[i]);
* * * * * * float cosA = (float) Math.cos(a[i]);
Это было сделано для удобства? можно было бы просто написать Math.cos(a[i]) и т.п.?
0
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
14.10.2015, 14:52
нет

Math.sin(a[i]) возвращает нам значение double и мы не можем его присвоить переменной float
без каставания...
поэтому float sinA = (float) Math.sin(a[i]); - обязателен
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.10.2015, 14:52
Помогаю со студенческими работами здесь

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

Верно ли оформлена формула в программном коде?
Добрый вечер, форумчане! Возник вопрос - верно ли у меня оформлена формула в программном виде? Math.exp(a - x) / 1.78 *...

Формула для итерационного циклического процесса
Доброго времени суток! Вот борюсь с заданием по итерационному вычислительному процессу. Суть такая. Есть формула (во вложении картинка), я...

Формула Винсента для вычисления расстояния
Доброго времени суток. У меня есть координаты 2 точек на земле (допустим, координаты концов СПБ), надо найти расстояние между ними. ...

Формула: дроби (числитель и знаменатель той же высоты, что и вся формула)
Всем доброго времени суток! Многие сталкивались с тем, что, при создании формул, числитель и знаменатель дроби уменьшаются. Собственно...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru