Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.10.2017, 21:32   #11
Akkari
Пользователь
 
Регистрация: 01.10.2017
Сообщений: 14
По умолчанию

вот так? (что-то считает, но неверно)
Код:
#include <conio.h>
#include <stdio.h>
#include <math.h>
#define pi 3.1415927
int fact(int n)
{
int f=1;
int i;
for (i=1; i<=n; i++)
{
 f=f*i;
}
return f;
}
void main(void)
{
int N, m, x, k;
double s;
puts (" Vvedite N and x: ");
scanf("%d%d", &N, &x);

    for (s=0, k=0; k<=N; k++){
            for (m=0; m<=N; m++) {
        s+=((cos((k*pi)/4))/fact(m))*pow(x,k);

    }
    printf("\n  s = %lf ", s);
}
    getch();
}

Последний раз редактировалось Akkari; 01.10.2017 в 21:37.
Akkari вне форума Ответить с цитированием
Старый 01.10.2017, 21:47   #12
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,504
По умолчанию

А зачем 2 цикла for ? Ведь факториал вы считаете в функции.
type_Oleg вне форума Ответить с цитированием
Старый 01.10.2017, 21:48   #13
Akkari
Пользователь
 
Регистрация: 01.10.2017
Сообщений: 14
По умолчанию

сейчас переделаю)
Akkari вне форума Ответить с цитированием
Старый 01.10.2017, 21:54   #14
Akkari
Пользователь
 
Регистрация: 01.10.2017
Сообщений: 14
По умолчанию

Код:
#include <conio.h>
#include <stdio.h>
#include <math.h>
#define pi 3.1415927
int fact(int n)
{
int f=1;
int i;
for (i=1; i<=n; i++)
{
 f=f*i;
}
return f;
}
void main(void)
{
int N, x, k;
double s;
puts (" Vvedite N and x: ");
scanf("%d%d", &N, &x);

    for (s=0, k=0; k<=N; k++){
        s+=((cos((k*pi)/4))/fact(k))*pow(x,k);
    printf("\n  s = %lf ", s);
}
    getch();
}
Akkari вне форума Ответить с цитированием
Старый 01.10.2017, 21:56   #15
Akkari
Пользователь
 
Регистрация: 01.10.2017
Сообщений: 14
По умолчанию

Безымянный3.png
первая сумма похожа на правду вроде как, а насчёт остальных сомневаюсь (попробую сейчас отдельно посчитать)
во второй сумме должно получится примерно 1.9998120996

Последний раз редактировалось Akkari; 01.10.2017 в 22:00.
Akkari вне форума Ответить с цитированием
Старый 01.10.2017, 22:04   #16
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Попробуй просто
Код:
s += fact(k);
сопоставь с ручным счётом чисто для факториала (т.е. на каждом шаге "s" распиши).
Если сойдётся - усложни формулу (например, добавь pow(x,k) ) и снова проверка с ручным счётом...
и т.д. пока не будет всё ОК.
ura_111 вне форума Ответить с цитированием
Старый 01.10.2017, 22:06   #17
Akkari
Пользователь
 
Регистрация: 01.10.2017
Сообщений: 14
По умолчанию

спасибо за совет, попробую так сделать
Akkari вне форума Ответить с цитированием
Старый 01.10.2017, 22:20   #18
Akkari
Пользователь
 
Регистрация: 01.10.2017
Сообщений: 14
По умолчанию

тут всё правильно считает:
Код:
s+=(pow(x,k))/(fact(k));
когда добавляю косинус, считает неверно
Akkari вне форума Ответить с цитированием
Старый 01.10.2017, 22:26   #19
Akkari
Пользователь
 
Регистрация: 01.10.2017
Сообщений: 14
По умолчанию

о нет, извините меня) я всё заново пересчитала и поняла, что всё нормально получается в программе
Akkari вне форума Ответить с цитированием
Старый 01.10.2017, 22:26   #20
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

считай его отдельно
Код:
s = sin(k);
градусы/ радианы?
ura_111 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с программой на С++ Andry95 Общие вопросы C/C++ 1 15.03.2016 17:04
Помогите с программой! MAKEDON Общие вопросы Delphi 3 27.12.2007 13:46