3 / 3 / 2
Регистрация: 15.10.2013
Сообщений: 91
1

Не сходится ответ в задаче, что только не пробовал сделать

15.10.2013, 14:03. Показов 1074. Ответов 4
Метки нет (Все метки)

Не могу решить задачку, перепробовал массу вариантов, всё равно не сходятся Y(x) и S(X). Помогите пожалуйста. Вот условия:
Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x)–S(x)| и вывести в виде таблицы. Значения a, b, h и n вводятся с клавиатуры. Так как значение S(x) является рядом разложения функции Y(x), при правильном решении значения S и Y для заданного аргумента x (для тестовых значений исходных данных) должны совпадать в целой части и в первых двух-четырех позициях после десятичной точки.
Работу программы проверить для a = 0,1; b = 1,0; h = 0,1; n=8.
http://higgs.rghost.ru/49377145/image.png
Вот код:
C++
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
27
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main()
{
double a, b, x, h, r,r1,r2, s, y;
int n, k;
puts("Input a,b,h,n");
scanf("%lf%lf%lf%d", &a, &b, &h, &n);
printf("\n  x  |   Y(x)   |   S(x)   |   |Y(x)-S(x)|");
printf("\n__________________________________________");
for(x = a; x<=b; x+=h) {
                r = s = 1;
 
                        y=exp(2*x);
 
                        for(k=1;k<=n;k++){
                        r=pow(2*x,k)/k;
                        s+=r; }
 
                        r2=fabs(y-s);
 
printf("\n %2.1lf | %7.4lf  | %7.4lf  |    %7.4lf  |", x,y,s,r2);
}
printf("\n___________________________________________");
getch();
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.10.2013, 14:03
Ответы с готовыми решениями:

Файлы. Как сделать так, что бы не только последний ответ выводил, а все которые удовлетворяют условию?
Господа, помогите. Сделал программу. В идеале ответ должен выдавать несколько значений, то есть...

Какими только способами не пробовал сделать поиск по базе, ничего не помогает
Проблема такая не могу сделать поиск по базе данных access, она у меня тормозит, поиск реализовал с...

При создании сайта не работает файл <viev_cat.php> что только уже не пробовал!
\\ index.php работает нормально после того как подключил файл viev_cat.php сразу начало выбивать...

Сделать программу что бы она выдавала ответ "да" только при вводе данных последовательностей букв
пожалуйста помогите сделать программу что бы она выдавала ответ &quot;да&quot; только при вводе данных...

4
случайный прохожий
2383 / 1600 / 550
Регистрация: 20.07.2013
Сообщений: 4,490
15.10.2013, 14:29 2
Ты забыл про факториал (k!).
C++
1
2
3
4
5
6
7
8
9
int n, k, fact=1;
....................
for(k=1;k<=n;k++)
{
  fact = fact * k;
  r=pow(2*x,k)/fact;
  s+=r;
}
....................
1
3 / 3 / 2
Регистрация: 15.10.2013
Сообщений: 91
15.10.2013, 15:04  [ТС] 3
Уже выбивает ошибку и останавливает программу.
C++
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
27
28
29
30
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main()
{
double a, b, x, h, r,r1,r2, s, y;
int n, k, fact=1;
puts("Input a,b,h,n");
scanf("%lf%lf%lf%d", &a, &b, &h, &n);
printf("\n  x  |   Y(x)   |   S(x)   |   |Y(x)-S(x)|");
printf("\n__________________________________________");
for(x = a; x<=b; x+=h) {
                r = s = 1;
 
                        y=exp(2*x);
 
for(k=1;k<=n;k++)
{
  fact = fact * k;
  r=pow(2*x,k)/fact;
  s+=r;
}
 
                        r2=fabs(y-s);
 
printf("\n %2.1lf | %7.4lf  | %7.4lf  |    %7.4lf  |", x,y,s,r2);
}
printf("\n___________________________________________");
getch();
}
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32488 / 20974 / 8115
Регистрация: 22.10.2011
Сообщений: 36,246
Записей в блоге: 7
15.10.2013, 15:35 4
C
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
27
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main()
{
    double a, b, x, h, r, r2, s, y;
    int n, k;
    puts("Input a,b,h,n");
    scanf("%lf%lf%lf%d", &a, &b, &h, &n);
    printf("\n  x  |   Y(x)   |   S(x)   |   |Y(x)-S(x)|");
    printf("\n__________________________________________");
    for(x = a; x<=b; x+=h)
    {
        r = s = 1;
        y = exp(2*x);
        for(k = 1; k <= n; k++)
        {
            r *= 2*x / k;
            s += r;
        }
        r2=fabs(y-s);
        printf("\n %2.1lf | %7.4lf  | %7.4lf  |    %7.4lf  |", x,y,s,r2);
    }
    printf("\n___________________________________________");
    getch();
    return 0;
}
1
3 / 3 / 2
Регистрация: 15.10.2013
Сообщений: 91
15.10.2013, 15:50  [ТС] 5
Спасибо, всё сошлось)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.10.2013, 15:50
Помогаю со студенческими работами здесь

Не сходится ответ
Что не так пишу? &lt;?php $x=-2.34; echo $s=(abs($x-5)-sin($x))/3 + sqrt(pow($x,2)+2014) *...

Почему ответ не сходится
Здравствуйте, скажите почему ответ не сходится #include &lt;iostream&gt; #include &lt;conio.h&gt; #include...

Табуляция функции - не сходится ответ
Функция: Cn(x)=\gamma +\ln x+\int_{0}^{x}\frac{t-1}{t}dt Ряд Тейлора: Cn(x)=\gamma + \ln x...

Не работает программа, не сходится ответ
program zadacha_5; uses crt; var a:array of real ; b:array of real; m,w,s,r,q:real; ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru