Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
pparkourr
0 / 0 / 0
Регистрация: 04.06.2013
Сообщений: 8
1

Вычислить значение выражения Z=cosα+ cos2α+ cos6α+ cos7α

04.04.2014, 16:50. Просмотров 615. Ответов 6
Метки нет (Все метки)

Добрый день , требуется написать простенькую программу ИСКЛЮЧИТЕЛЬНО на С .
Задание:
Z=cosα+ cos2α+ cos6α+ cos7α
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2014, 16:50
Ответы с готовыми решениями:

Матеріальна точка кидається на горизонтальну площину під кутом α
Матеріальна точка кидається на горизонтальну площину під кутом α до неї зі швидкістю v0. При...

Вычислить значение z по формуле z=sin(cos(x)
Вычислить значение z, соответствующие каждому значению x (xn<=x<=xk, шаг изменения x равен dx) по...

Вычислить значение x по формуле z=sin(cos(x)
Вычислить значение x (xn<<=x<=xk) по формуле z=sin(cos(x)). Определить сумму значений z>x и...

Вычислить значение выражения Z=cos2α+ cos4α
Задача 1 Арифметика: Z=cos2α+ cos4α

Даны натуральное число n, действительные числа α1, l1, α2, l2, ., αn, ln (l1, l2, ., ln ≥ 0). Найти координаты конца ломаной линии, изображенной н
рисунок: в общем прога сделанная, но с ошибками - не могу их найти. program ab; type UgolDlina...

6
Байт
Эксперт C
20059 / 12680 / 2665
Регистрация: 24.12.2010
Сообщений: 26,409
04.04.2014, 22:25 2
C
1
2
3
#include <math.h>
int i; double Z; double a = 0.1;
for(i=0, Z=0; i<7; i++) Z += cos(i*a);
0
BlackSpace
142 / 135 / 94
Регистрация: 15.03.2014
Сообщений: 284
05.04.2014, 11:48 3
Байт, Вы неверный код написали для данного задания.
1
Байт
Эксперт C
20059 / 12680 / 2665
Регистрация: 24.12.2010
Сообщений: 26,409
05.04.2014, 12:07 4
Цитата Сообщение от BlackSpace Посмотреть сообщение
Байт, Вы неверный код написали
Примите мои глубочайшие извинения
C
1
2
3
#include <math.h>
int i; double Z; double a = 0.1;
for(i=1, Z=0; i<=7; i++) Z += cos(i*a);
Так лучше?
0
BlackSpace
142 / 135 / 94
Регистрация: 15.03.2014
Сообщений: 284
05.04.2014, 13:24 5
Байт, нет не лучше
Я бы не стал говорить, что код неверный из-за смещения на единицу счетчика цикла. Я бы просто указал на это.

Ваш код совсем неверный
Вот я гляжу на формулу и на значение http://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha которое Вы приняли за 0.1 радиана.
Произвожу расчет вручную.
0.995004165278 + 0.980066577841 + 0.82533561491 + 0.764842187284 = 3.565248545313

Ваша программа рассчитывает сумму 6.319229.
Таким образом - отличие в результатах видно.
Вообще говоря, в использовании цикла, на мой взгляд, здесь нет необходимости, так как можно вычисление суммы записать в одну строку.
0
Байт
Эксперт C
20059 / 12680 / 2665
Регистрация: 24.12.2010
Сообщений: 26,409
05.04.2014, 15:31 6
BlackSpace, Простите, я просто не заметил отсутствия точек...
Я увидел задание как
z = cos a + cos 2a +... + cos 6a + cos 7a, что было бы естественно в разделе, посвященном программированию.
А так... Это упражнение на работу с таблицами Брадиса, или там с калькулятором. К сожалению, устройство форума таково, что я не могу уже уничтожить попавшие туда сообщения. Просто считайте их несуществующими, как говорят юристы "ничтожными".
В попытках искупить cвою вину могу предложить пару программных решений
C
1
2
3
#include <math.h>
int i; double Z; double a = 0.1;
for(i=1, Z=0; i<=7; i++) if (i<=2 || i>=6)  Z += cos(i*a);
C
1
2
3
4
#include <math.h>
static int *ind = { 1, 2, 6, 7, 0 };
int i; double Z; double a = 0.1;
for(i=0, Z=0; ind[i]; i++) Z += cos(ind[i]*a);
C
1
2
3
#include <math.h>
int i; double Z; double a = 0.1;
for(i=1, Z=0; i<=2; i++) Z += cos(i*a) + cos((8-i)*a);
0
BlackSpace
05.04.2014, 21:24     Вычислить значение выражения Z=cosα+ cos2α+ cos6α+ cos7α
  #7

Не по теме:

О том что Вы не заметили отсутствия точек я как-то не догадался, хотя и пытался понять почему Вы написали такой код.
Искал причину в тригонометрических формулах, перепроверил несколько раз разными способами. А тут все проще оказалось. :D
:thank_you:

0
05.04.2014, 21:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.04.2014, 21:24
Привет! Вот еще темы с ответами:

Выразите из равенства u=√(2gh(1-cos ⁡α)угол α
Выразите из равенства u=√(2gh(1-cos⁡ α))угол α

почему cosα=a/g мы можем записать по-другому в виде cosα=h/s ?
почему cosα=a/g мы можем записать по-другому в виде cosα=h/s ???

Даны α1, α2, …, α8; γ1, γ2, …, γ5, составить новый массив
Даны α1, α2, …, α8; γ1, γ2, …, γ5. \huge a_j=\gamma_j^2\cdot\sum_{i=1}^{8}\alpha_i^2


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru