IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Помогите разобраться с программой
ss91
сообщение 20.05.2014 14:22
Сообщение #1





Группа: Пользователи
Сообщений: 2
Пол: Мужской

Репутация: -  0  +


Программа считает прогнозы по методу экспоненциальному сглаживанию, сглаживанию Брауна, и по сезонно-декомпозиционной модели Хольта-Уинтерса, программа работает но я не понимаю некоторые значение которые нужно вводить, можете помочь, расписать каждые значения, что они означают, что туда вводить

код программы:
Код
program ec;
uses crt;
var a,dt,ft,ut,bt,et:real;
    bt_1,ut_1,gamma,tau:real;
    Ft_Ltau,Ft_1,A1,B,C,Ft_L:real;
function metod_prostogo_exponentialnogo_sglagivaniya(a,dt,ft:real):real;
begin
metod_prostogo_exponentialnogo_sglagivaniya:=a*dt+(1-a)*ft;
end;

function adaptivnoe_sglagivanie_prognoza_Brauna(ut_1,bt_1,gamma,dt,ft,tau:real):real;
var ut,bt,et:real;
begin
et:=dt-ft;
bt:=bt_1+sqr(1-gamma)*et;
ut:=ut_1+bt_1+(1-sqr(gamma))*et;
adaptivnoe_sglagivanie_prognoza_Brauna:=ut+bt*tau;
end;
BEGIN
writeln('  ***  метод простого экспоненциального сглаживания  ***');
writeln;
repeat
clrscr;
write(' Введите константу сглаживания: 0.1<=a<=1.    a=');
readln(a);
until ((0.1<=a) and (a<=1));
write('Введите фактическое значение наблюдаемого показателя. dt=');
readln(dt);
write('Введите прогноз на момент времени ft=');
readln(ft);
writeln('По методу простого экспоненциального сглаживания f(t+tau)=',
metod_prostogo_exponentialnogo_sglagivaniya(a,dt,ft):8:6);
writeln;
writeln('  ***   адаптивное сглаживание прогноза Брауна   ***');
writeln;
write('Введите показатель линейного роста , bt_1=');
readln(bt_1);
repeat
write('Введите коэффициент дисконтирования 0.1<=gamma<=1,    gamma=');
readln(gamma);
until ((0.1<=gamma) and (gamma<=1));
write(' Введите экспоненциальное взвешенное среднее, ut_1=');
readln(ut_1);
write('Введите период упреждения прогноза , tau=');
readln(tau);
writeln('по методу адаптивного сглаживания прогноза Брауна  f(t+tau)=',
adaptivnoe_sglagivanie_prognoza_Brauna(ut_1,bt_1,gamma,dt,ft,tau):8:6);
writeln;
writeln('  ***  Сезонно-декомпозиционная модель Хольта-Уинтерса   ***');
writeln;
writeln('Введите коэффициенты А, В, С');
write('A=');  readln(A1);
write('B=');  readln(B);
write('C=');  readln(C);
write('Введите значение коэффициента сезонности F(t-L+tau)=');
readln(Ft_Ltau);
write('Введите F(t-1)=');
readln(Ft_1);
write('Введите F(t-L)=');
readln(Ft_L);
writeln;
writeln('Оценка стационарного фактора (т.е. оценка среднеежемесячного');
writeln(' значения независимо от времени года, ut=', A1*dt/Ft_1+(1-A1)*(ut_1+bt_1):8:6);
ut:=ut_1+bt_1+(1-sqr(gamma))*et;
writeln;
writeln('Оценка линейного роста на основе модели роста Хольта, bt=',B*(ut-ut_1)+(1-B)

*bt_1:8:6);
writeln;
writeln('Оценка сезонного фактора (адаптация коэффициента сезонности).');
writeln('Она равен ',dt/ut:8:6);
writeln;
writeln('Экспоненциальное взвешенное среднее текущего значения коэффи-циента ');
writeln(' сезонности: F(t)=',C*dt/ut+(1-C)*Ft_L:8:6);
writeln;
bt:=bt_1+sqr(1-gamma)*et;
writeln('Прогноз. f(t+tau)=',(ut+bt*tau)*Ft_Ltau:8:6);
repeat
until keypressed;
END.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 3)
Федосеев Павел
сообщение 20.05.2014 15:11
Сообщение #2


Бывалый
***

Группа: Пользователи
Сообщений: 298
Пол: Мужской
Реальное имя: Федосеев Павел

Репутация: -  8  +


Я вот тоже не знаю.
Скорее всего эти параметры - результаты расчётов экспериментальных данных для нескольких формул экстраполяции (моделей прогноза).
Но набор в Яндексе ключевых слов выдаёт сылки на пояснительные материалы - [1], [2], [3].

Конечно, прошу прощения за перенаправление в поисковик. Но, полагаю, что так ты быстрее разберёшься - программисты и технари редко помнят что-либо из экономики.

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

Сообщение отредактировано: Федосеев Павел - 20.05.2014 15:24
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
ss91
сообщение 22.05.2014 14:10
Сообщение #3





Группа: Пользователи
Сообщений: 2
Пол: Мужской

Репутация: -  0  +


Федосеев Павел точно попробую найти форум где экономисты, спасибо
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
KIN
сообщение 22.05.2014 21:31
Сообщение #4





Группа: Пользователи
Сообщений: 2
Пол: Мужской

Репутация: -  0  +


Скопируй мою программу и поменяй со своей,будешь читать её на русском языке и Тебе все будет понятно.

program ec;
uses crt;
var a,dt,ft,ut,bt,et:real;
bt_1,ut_1,gamma,tau:real;
Ft_Ltau,Ft_1,A1,B,C,Ft_L:real;
function metod_prostogo_exponentialnogo_sglagivaniya(a,dt,ft:real):real;
begin
metod_prostogo_exponentialnogo_sglagivaniya:=a*dt+(1-a)*ft;
end;

function adaptivnoe_sglagivanie_prognoza_Brauna(ut_1,bt_1,gamma,dt,ft,tau:real):real;
var ut,bt,et:real;
begin
et:=dt-ft;
bt:=bt_1+sqr(1-gamma)*et;
ut:=ut_1+bt_1+(1-sqr(gamma))*et;
adaptivnoe_sglagivanie_prognoza_Brauna:=ut+bt*tau;
end;
BEGIN
writeln(' *** ЊҐв®¤ Їа®бв®Ј® нЄбЇ®­Ґ­жЁ «м­®Ј бЈ« ¦Ёў ­Ёпя ***');
writeln;
repeat
clrscr;
write(' ‚ўҐ¤ЁвҐ Є®­бв ­вг бЈ« ¦Ёў ­Ёпя: 0.1<=a<=1. a=');
readln(a);
until ((0.1<=a) and (a<=1));
write('‚ўҐ¤ЁвҐ д ЄвЁзҐбЄ®Ґ §­ зҐ­ЁҐ ­ Ў«о¤ Ґ¬®Ј® Ї®Є § вҐ«пя. dt=');
readln(dt);
write('‚ўҐ¤ЁвҐ Їа®Ј­®§ ­  ¬®¬Ґ­в ўаҐ¬Ґ­Ё ft=');
readln(ft);
writeln('Џ® ¬Ґв®¤г Їа®бв®Ј® нЄбЇ®­Ґ­жЁ «м­®Ј® бЈ« ¦Ёў ­Ёпя f(t+tau)=',
metod_prostogo_exponentialnogo_sglagivaniya(a,dt,ft):8:6);
writeln;
writeln(' ***  ¤ ЇвЁў­®Ґ бЈ« ¦Ёў ­ЁҐ Їа®Ј­®§  Ѓа г­  ***');
writeln;
write('‚ўҐ¤ЁвҐ Ї®Є § вҐ«м «Ё­Ґ©­®Ј® а®бв  , bt_1=');
readln(bt_1);
repeat
write('‚ўҐ¤ЁвҐ Є®нддЁжЁҐ­в ¤ЁбЄ®вЁа®ў ­Ёпя 0.1<=gamma<=1, gamma=');
readln(gamma);
until ((0.1<=gamma) and (gamma<=1));
write(' ‚ўҐ¤ЁвҐ нЄбЇ®­Ґ­жЁ «м­®Ґ ў§ўҐиҐ­­®Ґ б।­ҐҐ, ut_1=');
readln(ut_1);
write('‚ўҐ¤ЁвҐ ЇҐаЁ®¤ ЇаҐ¦¤Ґ­Ёп Їа®Ј­®§  , tau=');
readln(tau);
writeln('Ї® ¬Ґв®¤г  ¤ ЇвЁў­®Ј® бЈ« ¦Ёў ­Ёп Їа®Ј­®§  Ѓа г­  f(t+tau)=',
adaptivnoe_sglagivanie_prognoza_Brauna(ut_1,bt_1,gamma,dt,ft,tau):8:6);
writeln;
writeln(' *** ‘Ґ§®­­®-¤ҐЄ®¬Ї®§ЁжЁ®­­ п ¬®¤Ґ«м •®«мв - “Ё­вҐаб  ***');
writeln;
writeln('‚ўҐ¤ЁвҐ Є®нддЁжЁҐ­вл Ђ, ‚, ‘');
write('A='); readln(A1);
write('B='); readln(B);
write('C='); readln©;
write('‚ўҐ¤ЁвҐ §­ зҐ­ЁҐ Є®нддЁжЁҐ­в  ᥧ®­­®бвЁ F(t-L+tau)=');
readln(Ft_Ltau);
write('‚ўҐ¤ЁвҐ F(t-1)=');
readln(Ft_1);
write('‚ўҐ¤ЁвҐ F(t-L)=');
readln(Ft_L);
writeln;
writeln('ЋжҐ­Є  бв жЁ®­ а­®Ј® д Єв®а  (в.Ґ. ®жҐ­Є  б।­ҐҐ¦Ґ¬Ґбпз­®Ј®');
writeln(' §­ зҐ­ЁҐ ­Ґ§ ўЁбЁ¬® ®в ўаҐ¬Ґ­Ё Ј®¤ , ut=', A1*dt/Ft_1+(1-A1)*(ut_1+bt_1):8:6);
ut:=ut_1+bt_1+(1-sqr(gamma))*et;
writeln;
writeln('ЋжҐ­Є  «Ё­Ґ©­®Ј® а®бв  ­  ®б­®ўҐ ¬®¤Ґ«Ё а®бв  •®«мв , bt=',B*(ut-ut_1)+(1-B)

*bt_1:8:6);
writeln;
writeln('ЋжҐ­Є  ᥧ®­­®Ј® д Єв®а  ( ¤ Їв жЁп Є®нддЁжЁҐ­в  ᥧ®­­®бвЁ).');
writeln('Ћ­ а ўҐ­ ',dt/ut:8:6);
writeln;
writeln('ќЄбЇ®­Ґ­жЁ «м­®Ґ ў§ўҐиҐ­­®Ґ б।­ҐҐ ⥪г饣® §­ зҐ­Ёп Є®нддЁжЁҐ­в  ');
writeln(' ᥧ®­­®бвЁ: F(t)=',C*dt/ut+(1-C)*Ft_L:8:6);
writeln;
bt:=bt_1+sqr(1-gamma)*et;
writeln('Џа®Ј­®§. f(t+tau)=',(ut+bt*tau)*Ft_Ltau:8:6);
repeat
until keypressed;
END.

Сообщение отредактировано: KIN - 22.05.2014 21:36
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 18.06.2025 16:52
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"