![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 22.12.2017
Сообщений: 14
|
![]()
День добрый. Прошу помощи экспертов.
Задание Для каждого 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 выбрать в зависимости от задания (10, 20, 50, 100). n = 30. S(x) = E(k=0,n) cos(kPi/4)*x^k/k! Y(x) = e^xcosPi/4*(cos(xsinPi/4) Полученные результаты не совпадают с пожеланиями в задании. Подскажите,пожалуйста, в чём косяк может быть. Спасибо. Мой код: { double a,b,x,h,Pi,e,y,s,r,f,t,v,m; int n,k; Pi=3.14159265359; e=2,718281828459045; t=cos(Pi/4); v=sin(Pi/4); for (x = a; x<=b; x+=h) { y=pow(e,t)*cos(x*v); for(k=1,f=1; k<=n; k++) { f=f*k; //факториал m=(cos(k*Pi/4)*pow(x,k))/f ; //член ряда s=s+m; //сумма r=fabs(y-s); } . |
![]() |
![]() |
![]() |
#2 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,543
|
![]() Цитата:
Цитата:
Код:
программа — запись алгоритма на языке понятном транслятору
|
||
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 22.12.2017
Сообщений: 14
|
![]()
да. все значения вводятся через Edit в formCreate
|
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,543
|
![]() Цитата:
в предыдущем сообщении красным выделены те переменные, значения которых не заданы. для проверки сделайте вывод этих значений ВО время вычислений.
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 06.01.2018 в 21:11. |
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 22.12.2017
Сообщений: 14
|
![]()
значения верно присвоены переменным. проверял.
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Ну и покажи где в твоем коде, например, переменной a присваивается значение?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 22.12.2017
Сообщений: 14
|
![]()
в начальном коде я не указывал. хотел кратенько основное выложить
void __fastcall TForm1::FormCreate(TObject *Sender) { Edit1->Text="0,1"; Edit2->Text="1,0"; Edit3->Text="30"; Edit4->Text="0,1"; } void __fastcall TForm1::Button1Click(TObject *Sender) { ....... a = StrToFloat(Edit1->Text); b = StrToFloat(Edit2->Text); n = StrToInt(Edit3->Text); h = StrToFloat(Edit4->Text); ...... } |
![]() |
![]() |
![]() |
#8 | ||||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,543
|
![]() Цитата:
одно из них ты уже показал Цитата:
Цитата:
Цитата:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 08.01.2018 в 10:15. |
||||
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 22.12.2017
Сообщений: 14
|
![]()
evg_m
немного не понимаю, зачем 2 раза инициализировать переменные a,b,n,h. есть a = StrToFloat(Edit1->Text); и есть Edit1->Text="0,1"; в любом случае, при инициализации путём double a=0.1, b=1.0,... результат не меняется. |
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Как насчет начального значения s? Да и k в формуле суммы от 0, а не от 1
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 08.01.2018 в 22:48. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Бесконечная сумма и факториал | guardi | Помощь студентам | 11 | 14.12.2017 20:05 |
Сумма ряда | Vika2016 | Общие вопросы C/C++ | 2 | 26.10.2016 17:15 |
(Си) сумма ряда | Nikolay625 | Помощь студентам | 0 | 17.06.2014 17:18 |
Сумма ряда | Veina | Помощь студентам | 0 | 06.04.2011 19:48 |
Сумма ряда | eKStaSy | Помощь студентам | 4 | 25.10.2009 17:41 |