Разработка инвестиционного проекта ОАО "Завод по производству труб большого диаметра"

Основные понятия инвестиционного проектирования. Общая характеристика методов оценки эффективности инвестиционного проекта. Общие понятия неопределенности и риска. Построение модели оценки риска инвестиционного проекта.

Рубрика Экономика и экономическая теория
Вид дипломная работа
Язык русский
Дата добавления 12.09.2006
Размер файла 294,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Необходимый уровень безопасности пользователей ПЭВМ и обеспечение наиболее быстрого устранения ситуаций, угрожающих здоровью или жизни людей, поддерживается путем организации комплекса мер по предупреждению и наиболее быстрому устранению подобных ситуаций, а также, с помощью наличия средств защиты пожаротушения /21/.

По взрывоопасности помещение лаборатории относится к категории "В", так как в нем имеются твердые горючие и трудногорючие вещества и материалы (бумага, столы, шкафы, тумбочки), способные гореть при взаимодействии с воздухом.

Подкатегории "В" приведены в таблице 13.

Таблица 13 - Определение подкатегории пожароопасных помещений

Наименование категории

Удельная пожарная нагрузка, МДж/м2

1

2

В1

Более 2200

В2

1401 - 2200

ВЗ

181 - 1401

В4

1 - 181

Определение пожароопасной категории помещения осуществляется путем сравнения максимального значения удельной временной пожарной нагрузки на любом из участков с величиной удельной пожарной нагрузки.

Пожарная нагрузка помещений может включать в себя различные сочетания горючих и трудногорючих жидкостей и твердых материалов в пределах пожароопасного участка определяется по формуле

Q = ? Gi Qi , (74)

где Q - пожарная нагрузка, МДж;

Gi - масса i-го материала пожарной нагрузки, кг;

Qi - низшая теплота сгорания i-гo материала, МДж/кг.

Удельная пожарная нагрузка определяется по формуле

q=Q/S, (75)

Для помещения площадью S = 24 м2 пожарная нагрузка Q = 2180 МДж. По формуле (75) удельная пожарная нагрузка равна 90,83 МДж/м2. Следовательно, помещение относится к категории В4.

Степень огнестойкости помещений - II. /22/

К средствам защиты пожаротушения относятся огнетушители, системы пожаротушения и сигнализация. Исправность огнетушителей периодически проверяется.

4.5 Инженерная разработка. Расчет защитного зануления персонального компьютера

Работы по созданию диплома велись на персональном компьютере в течение трех месяцев. Для обеспечения безопасной работы в фирме установлен распределительный щиток с защитным занулением. Электрическая сеть с глухозаземленной нейтралью имеет напряжение 220 В.

Условия срабатывания защиты

IК = k I, (76)

где IК - ток однофазного короткого замыкания, А;

k - коэффициент, принимается в зависимости от типы защиты электроустановки;

I - ток срабатывания автоматического выключателя, А.

Если защита осуществляется автоматическим выключателем, срабатывающем без выдержки времени, то k принимается в пределах 1,25-1,4. Определяем наименьшее допустимое по условиям срабатывания значение тока: IК = 1,25 50 = 62,5 А.

Полное сопротивление трансформатора ZТ = 1,949 Ом.

Вычисляем сопротивление фазного проводника (R, Ом) по формуле

, (77)

где - удельное сопротивление проводника, Ом мм2/м;

l - длина проводника, м;

S - сечение проводника, мм2.

Тогда для линии длиной 100 м получаем активное сопротивление фазного проводника

RФ = 0,018 100/2,25 = 0,8 Ом.

Поскольку провод медный, принимаем внутреннее индуктивное сопротивление фазного проводника Хф = 0.

Вычисляем плотность тока в стальном нулевом защитном проводнике

д = IK/S = 62,5/(40 2) = 0,78 А/мм2.

Активное сопротивление стального проводника rw=4,2 Ом/км.

Индуктивное сопротивление стального проводника xw=2,52 Ом/км. Тогда для линии длиной 100 м имеем: RН.З = rw l = 4,2 0,1 = 0,42 Ом, XН.З = xw l = 2,52 0,1 = 0,252 Ом.

Определяем внешнее индуктивное сопротивление петли фаза-нуль (Ом/км) по формуле

, (78)

где - угловая частота, рад с-1;

L - индуктивность линии, Г;

- относительная магнитная проницаемость среды;

0 = 4 10-7, Г/м - магнитная постоянная;

l - длина линии, м;

D - расстояние между проводами линии, м.

Получаем: ХП = ХП l = 0,6 0,1 = 0,06 Ом.

Действительное значение тока однофазного короткого замыкания, проходящего по петле фаза-нуль при замыкании фазы на корпус персонального компьютера вычисляется по формуле

, (79)

Согласно формуле (79): = 115 А.

Вывод: поскольку действительное (вычисленное) значение тока однофазного короткого замыкания превышает наименьшее допустимое по условиям срабатывания защиты значение 62,5 А, проводник выбран правильно, т.е. обеспечена отключающая способность системы зануления.

Таким образом, параметры защитного зануления персонального компьютера в рассматриваемом помещение соответствуют оптимальным нормам /23/.

5 Охрана природной окружающей среды

В настоящее время значительно возросло количество компьютерной техники, используемой в различных отраслях деятельности человека. В этих условиях ставится задача максимального уменьшения вредного воздействия компьютеров на окружающую среду. Обычно выделяют несколько групп стандартов, регламентирующих вредное воздействие компьютерной техники /24/. Рассмотрим их основные категории:

- стандарты безопасности;

- эргономические требования;

- требования к излучениям;

- требования к электрической безопасности;

- дополнительные требования;

- экологические стандарты;

- стандарты пониженного энергопотребления.

Дипломная работа выполнялась в организации, где используются мониторы, поддерживающие стандарт ТСО-99.

5.1 Стандарты безопасности

ТСО (Шведская конфедерация профессиональных рабочих) - является шведским национальным законодательным органом в области ввода стандартов по электрическим и магнитным помехам, излучаемым компьютерной техникой.

В недалеком прошлом существовали различные стандарты в области безопасности мониторов различных типов (TCO-92, TCO-95, MPR II), сейчас же стандарт TCO-99 не только объединил все ранее описанные требования, но и еще более ужесточил их.

TCO-99 предъявляет жесткие требования в следующих областях: эргономика (физическая, визуальная и удобство использования), энергия, излучение (электрических и магнитных полей), окружающая среда и экология, а также пожарная и электрическая безопасность.

Требования представлены в таблице 14.

Таблица 14 - Обязательные требования и рекомендации стандарта TCO-99

Параметр

Обязательное требование

Рекомендация

1

2

3

1. Визуальные эргономические требования: требования к четкости изображения

1.3. Линейность

X1

-

1.4. Ортогональность

X

-

1.5.1. Уровень яркости

X

R2

1.5.2. Равномерность яркости

X

R

1.5.3. Контрастность

X

R

1.6. Отражательная способность обрамления экрана и блеск

X

R

1.7.1. Колебания цветовой температуры

X

R

1.7.2 Цветовая однородность и

характеристики

X

R

2. Визуальные эргономические требования: требования к стабильности изображения

2.1. Периодическое изменение яркости

X

R

2.2. Позиционная неустойчивость (флуктуация)

X

R

3. Факторы внешнего воздействия

3.1. внешние переменные магнитные поля.

X

R

4. Требования к излучениям и энергосбережению

4.1. Рентгеновское излучение

X

R

4.2. Электростатический потенциал

X

-

4.3. Переменное электрическое поле

X

-

4.4. Переменное магнитное поле

X

-

4.5. Энергосбережение

X

R

5. Требования к электрической безопасности

5.1. Электрическая безопасность

X

R

6. Дополнительные характеристики

6.1. Наклон в вертикальной плоскости

-

R

6.2. Регулировка высоты

-

R

6.3. Поворот в горизонтальной плоскости

-

R

6.3. Поворот в горизонтальной плоскости

-

R

6.4. Регулировка яркости и контраста

-

R

6.5. Индикация частоты вертикальной развертки

-

R

6.6. Акустический шум (для ВДТ с вентилятором)

X

R

7. Экологические требования

1. X - характеристики, обязательные для сертификации, которая должна быть проведена аккредитованными лабораториями.

2. R - характеристики, которые не требуются для сертификации в настоящее время, или характеристики, которые могут стать обязательными в будущем.

Также TCO-99 предполагает новые методы проведения тестов. Стандарт TCO-99 распространяется на традиционные CRT мониторы, плоско панельные мониторы (Flat Panel Displays), портативные компьютеры (Laptop и Notebook), системные блоки и клавиатуры. Спецификации TCO-99 содержат в себе требования, взятые из стандартов TCO-95, ISO, IEC и EN, а также из EC Directive 90/270/EEC и Шведского национального стандарта MPR 1990:8 (MPRII) и из более ранних рекомендаций TCO. В разработке стандарта TCO-99 приняли участие TCO, Naturskyddsforeningen и and Statens Energimyndighet (The Swedish National Energy Administration, Шведское Национальное Агентство по Энергетике).

5.2 Эргономические требования

Данные приведены в таблице 15. Требуемые параметры на персональном компьюторе соблюдены (размер диагонали - 17'', разрешение 1280х1024, частота 85 Гц).

Таблица 15 - Соответствие эргономическим требованиям

Размер диагонали ЭЛТ

Частота вертикальной развертки

Разрешение

1

2

3

14-15"

Не менее 85 Гц

не менее 800 x 600

17"

Не менее 85 Гц

не менее 1024 x 768

19-21"

Не менее 85 Гц

не менее 1280 x 1024

Не более 21"

Не менее 85 Гц

не менее 1280 x 1024

Рекомендация: частота вертикальной развертки не менее 100 Гц.

5.3 Стандарты уровней излучения

5.3.1 Требования к электромагнитным излучениям и энергопотреблению

Требования к электромагнитному излучению электронно-лучевых мониторов не изменились, но условия измерений стали более жесткими. Теперь измерения уровней излучения проводятся при частоте кадровой развертки 85 Гц вместо 75 Гц и яркости не меньше 100 кд/м2.

5.3.2 Рентгеновское излучение

Рентгеновское излучение не более 5000 Гр/ч. Рекомендация - не более 300 Гр/ч. Метод измерения: Согласно IEC 60 950 (Приложение H). Оборудование: согласно IEC 60 950. (Погрешность измерений не более ±10%).

5.3.3 Электростатический потенциал

Эквивалентный поверхностный потенциал не более ±0,5 кВ.

5.3.4 Переменное электрическое поле

Полоса I: 5 Гц-2 кГц, - не более 10 В/м (на расстоянии 30 см перед экраном, 50 см вокруг). Полоса II: 2 кГц-400 кГц, - не более 1.0 В/м (на расстоянии 30 см перед экраном, 50 см вокруг).

5.3.5 Переменное магнитное поле

Полоса I: 5 Гц-2 кГц, - не более 250 нТ (на расстоянии 30 см перед экраном, 50 см вокруг). Полоса II: 2 кГц-400 кГц, - не более 25 нТ (на расстоянии 30 см перед экраном, 50 см вокруг).

5.3.6 Энергосбережение

Энергопотребление в режиме standby не более 15 Вт. Энергопотребление в режиме off не более 5 Вт. При выходе из режима standby различимое изображение должно появиться не более чем за три секунды.

5.4 Требования к электрической безопасности

ВДТ должен быть сертифицирован согласно стандарту EN 60950 (IEC 60950) "Безопасность оборудования для информационных технологий, включая бизнес-оборудование". Все компьютер в офисе поддерживают данный стандарт.

5.5 Дополнительные требования

5.5.1 Наклон в вертикальной плоскости

Рекомендация: монитор должен поворачиваться вертикальной плоскости в диапазоне от -5° до +20°.

5.5.2 Регулировка высоты

Рекомендация: должна быть возможность поднять или опустить ВДТ как минимум на 110 мм.

5.5.3 Поворот в горизонтальной плоскости

Рекомендация: монитор должен поворачиваться относительно подставки в горизонтальной плоскости на 45° в каждую сторону (относительно центрального положения).

5.5.4 Регулировка яркости и контраста

Рекомендация: у пользователя должна быть возможность легко изменить яркость и контраст изображения, например, при помощи экранного меню (OSD).

5.5.5 Индикация частоты вертикальной развертки

Рекомендация: у пользователя должна быть возможность легко узнать частоту вертикальной развертки, например, при помощи экранного меню (OSD).

5.5.6 Акустический шум (для ВДТ с вентилятором)

Встроенный вентилятор должен удовлетворять требованиям, предъявляемым к вентиляторам системного блока компьютера. Громкость шума не более 4,5 бел в режиме Stand-By и не более 5,5 бел в рабочем режиме (1 бел равен 10 децибел).

5.6 Экологические стандарты

Повсеместное распространение мониторов заставляет пользователей проявлять все большее беспокойство по поводу их влияния на организм человека. Западноевропейские страны (Германия и Голландия) и страны Северной Европы (Швеция и Норвегия) были инициаторами программ по контролю электромагнитных излучений, эргономики для защиты зрения, экономии энергии и, наконец, охраны окружающей среды и утилизации отходов.

Было доказано, что некорректное применение тяжелых металлов , таких как свинец, ртуть, кадмий, бериллий, барий, стронций и медь, негорючих бромовых смесей и разрушителей озона (CFC, HCFC), серьезно влияет на окружающую среду.

Пользователи осознали, что вышеперечисленные факторы пагубно влияют на организм, в результате стала невозможна торговля изделиями, не удовлетворяющими требованиям стандартов ТСО-99.

5.7 Стандарты пониженного энергопотребления

Рассматриваемые здесь стандарты определяют допустимые уровни мощности, потребляемой устройством, находящимся в неактивном режиме и призваны обеспечивать экономию энергии, в документации их часто включают в раздел охраны окружающей среды, а иногда - в эргономический класс.

Самым распространенным энергосберегающим нормативом является стандарт Energy Star, предложенный американским Агентством по защите окружающей среды. По стандарту ЕРА Energy Star устройство должно потреблять в неактивном режиме не более 30 Вт электроэнергии. Для выполнения требований стандарта ЕРА Energy Star ассоциацией VESA был разработан специальный стандарт DPMS, программное обеспечение которого имеет функцию поддержки управления экономным потреблением мощности. Стандарт сигнализации системы управления мощностью монитора приведен в таблице 15.

Таблица 15 - Стандарт сигнализации системы управления мощностью монитора

Состояние

Нормальное функциониро-вание

Режим функции сохранения питания

Временный режим

Режим отключения питания

1

2

3

4

Горизонтальная
Вертикальная
Видео

Активна
Активна
Активна

Активна / Не активна
Не активна / Активна
Не используется

Не активный

Не активный
Не используется

Индикатор
(Цвет LED)

Зеленый

Оранжевый

Оранжевый,
Зеленый,

Мигающий (интервал 1 сек)

Потребление мощности

до 80 Вт

Меньше 15 Вт

Меньше
8 Вт

В соответствии со спецификацией VESA монитор может находиться в одном из четырех режимов: On (включен), Stand by ("дежурный", или "ждущий"), Suspend (минимальное потребление электроэнергии) и Off (выключен). Переход на каждый следующий режим происходит после определенного времени не активности, которое задается программно.

Нормы энергосбережения содержатся также в стандарте ТСО-99.

5.8 Экологическая оценка компьютера как объекта загрязнения окружающей среды.

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

Утилизация: расширение областей применения компьютерной техники, ее быстрое моральное старение остро ставит вопрос о необходимости разработки новых технологий переработки компьютерного лома.

До недавнего времени при утилизации старых компьютеров происходила их разработка на фракции: металлы, пластмассы, стекло, провода, штекеры. Вторичные ресурсы металлов складываются из лома (3-4 %) и отходов (57 %). Из одной тонны компьютерного лома получают до 200 кг меди, 480 кг железа и нержавеющей стали, 32 кг алюминия, 3 кг серебра, 1 кг золота и 300 г палладия.

В настоящее время разработаны следующие методы переработки компьютерного лома и защиты литосферы от него:

- сортировка печатных плат по доминирующим материалам;

- дробление и измельчение;

- гранулирование, в отдельных случаях сепарация;

- обжиг полученной массы для удаления сгорающих компонент;

- расплавление полученной массы, рафинирование;

- прецизионное извлечение отдельных металлов;

- создание экологических схем переработки компьютерного лома;

- создание экологически чистых компьютеров.

В последнее время приняты радикальные меры по улучшению разделки, сортировки и использования лома и отходов цветных металлов. Важной задачей является переработка медных проводов и кабелей, так как более одной трети меди идет на производство проводов.

Лучшим способом разделки проводов можно считать отделение изоляции от проволоки механическим способом. С помощью грануляторов специальной конструкции удовлетворительно решена проблема отделения термоплавкой и резиновой изоляции. Установка пригодна для переработки проволоки, изолированной термопластом и бумагой. Установка не пригодна для некоторых типов проводов, изолированных хлопчатобумажной тканью, для кабелей со свинцовой оболочкой и для всех сортов изоляции, которая прилипает к проводу так, что не отделяется от металла даже при очень тонкой грануляции. При переработки проводов, у которых разделение изоляции и меди осуществляется удовлетворительно и почти без потерь получается термопласт, последний может служить сырьем для изготовления менее ответственных деталей.

Если между проводами, изолированными термопластом, есть изоляция из ткани, ее можно удалить из смеси кусков меди и изоляции с помощью отсасывающего устройства. Эта установка закрыта и механизирована, требует минимального обслуживания и обеспечивает производительность - 500 тонн изолированной проволоки в год. При работе установки не загрязняется атмосфера, технология экономически более выгодна, чем обжиг изоляции в печах.

Переработку промышленных отходов производят на специальных полигонах, создаваемых в соответствии с требованиями СНиП 2.01.28-85 и предназначенных для централизованного сбора обезвреживания и захоронения токсичных отходов промышленных предприятий, НИИ и учреждений.

При всех существующих способах переработки компьютерного лома необходимы новые, более совершенные, экологически чистые методы.

Таким образом, параметры экологической оценки компьютера как объекта загрязнения окружающей среды в рассматриваемом помещение соответствуют оптимальным нормам /25/.

Выводы

1 В дипломной работе разработана новая модель оценки уровня риска инвестиционного проекта, сочетающая в себе достоинства уже применяемых в практике моделей.

2 Для однозначной характеристики уровня риска проекта было предложено использование нечетко-множественной модели принятия решения.

3 Новая модель использует свертку трех критериев оценки уровня риска проекта: вероятность попадания в зону неэффективности, критерий ликвидности и критерий покрытия, при помощи которых наиболее полно можно охарактеризовать неопределенность существующей информационной среды.

4 Разработана технология использования нечеткого вывода для принятия решения по оценке уровня риска инвестиционного проекта.

5 Разработано программно-алгоритмическое обеспечение расчета значений используемых в модели критериев и объединения их в один общий показатель, характеризующий уровень риска проекта.

6 Преимущества разработанной модели были показаны при оценке уровня риска инвестиционного проекта строительства завода труб большого диаметра в Нижнем Тагиле.

7 В разделе безопасность жизнедеятельности учтено влияние опасных и вредных факторов и проведен расчет защитного зануления.

Список использованных источников

1 Савчук В.П. Оценка инвестиционных проектов. - На сайте:

2 Каблуков В.В. Модели оценки рисков стратегических инвестиционных проектов: Дис…кандидата экономических наук. - Санкт-Петербург, 1999. - 167 с.

3 http://sedok.narod.ru/inv_risk_calc.html - Бессонов Д.А. Оценка риска инвестиционного проекта

4 Абрамов С.И. Инвестирование. - М.: Центр экономики и маркетинга, 2000.

5 Виленский В.Л., Лифшиц В.Н., Смоляк С.А. Оценка эффективности инвестиционных проектов. Теория и практика. - М. Дело, 2001.

6 Недосекин О.А. Нечетко-множественный анализ рисков фондовых инвестиций. - СПб.: Сезам, 2003.

7 Моделирование рисковых ситуаций в экономике и бизнесе / Дубров А.М., Лагоша Б.А., Хрусталев Е.Ю. и др.; Под ред. Б.А.Лагоша; М.: Финансы и статистика, 2001.

8 Лапуста М.Г., Шаршукова Л.Г. Риски в предпринимательской деятельности. - М.: Инфра, 1998.

9 http://www.cfin.ru/finanalysis/quant_risk.shtml - Дмитриев М.Н., Кошечкин С.А. Количественный анализ риска инвестиционных проектов.

10 Козинцев Т.О. - Использование техники динамического моделирования в менеджменте процентных рисков. - М.: Диалог-МГУ, 2000.

11 Заде Л. - Понятие лингвистической переменной и ее применение к принятию приближенных решений, М., Мир, 1976.

12 Беллман Р., Заде Л. - Принятие решений в расплывчатых условиях // Вопросы анализа и процедуры принятия решения. - М.: Мир, 1976.

13 Кофман А. - Введение в теорию нечетких множеств. - М.: Радио и связь, 1982.

14 Кофман А., Хил Алуха Х. - Введение теории нечетких множеств в управлении предприятиями, Минск, Вышэйшая школа, 1992.

15 http://sedok.narod.ru/sc_group.html - Недосекин О.А. Оценка риска инвестиций по NPV произвольно-нечеткой формы.

16 http://sedok.narod.ru/sc_group.html - Недосекин О.А., Кокош А.М. Оценка риска инвестиций для произвольно-размытых факторов инвестиционного проекта.

17 Смирнов А.П., Якунин А.Г.. Модель управления операциями участка «сталь-прокат» в классе нечетких систем // Черная металлургия. - 2001. - №3.

18 Прикладные нечеткие системы: пер. с япон. / К.Асаи, Д.Ватада, С.Иваи и др.; под. ред. Т.Тэрано, К.Асаи, М.Сугэно. - М.: Мир, 1993.

19 Бабайцев И.В., Варенков А.Н., Потоцкий Е.П. Безопасность жизнедеятельности и экология в дипломной работе. Учебное пособие. - М.: мисис, 1997.

20 ГОСТ 12.0.003-74. Опасные и вредные производственные факторы. Классификация. - М.: Издательство стандартов, 1975.

21 СНиП 2.01.02-85. Противопожарные нормы. - М.: Стройиздат, 1986.

22 НПБ 105-95. Определение категорий помещений и зданий по взрывопожарной и пожарной опасности. М.:МВД РФ. Государственная противопожарная служба, 1995.

23 ГОСТ 12.1.030-81. Электробезопасность. Защитное заземление. Зануление. - М.: Издательство стандартов, 1981.

24 СанПиН 2.2.542-96. Гигиенические требования к видеодисплейным терминалам, персональным электронно-вычислительным машинам и организации работы. - М.: Госкомсанэпиднадзор России, 1996.

25 Учебное пособие по разделам «Безопасность жизнедеятельности» и «Охрана окружающей природной среды» в дипломной работе / под ред. проф. Б.С.Мастрюкова - М.: мисис, 2000.

Приложение Б. Текст программы

unit datamodul;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, StdCtrls, ExtCtrls, ComCtrls, Spin, Menus;

type

TForm1 = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

Panel1: TPanel;

Label1: TLabel;

Label2: TLabel;

SpinEdit1: TSpinEdit;

Label3: TLabel;

Edit1: TEdit;

StringGrid1: TStringGrid;

Label4: TLabel;

StringGrid2: TStringGrid;

Label5: TLabel;

StringGrid3: TStringGrid;

CheckBox1: TCheckBox;

StringGrid4: TStringGrid;

Label6: TLabel;

N6: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

SaveDialog1: TSaveDialog;

OpenDialog1: TOpenDialog;

Label7: TLabel;

Edit2: TEdit;

N5: TMenuItem;

N9: TMenuItem;

GroupBox1: TGroupBox;

Label8: TLabel;

Edit3: TEdit;

Label9: TLabel;

Edit4: TEdit;

Button1: TButton;

procedure FormCreate(Sender: TObject);

procedure SpinEdit1Change(Sender: TObject);

procedure StringGrid1KeyPress(Sender: TObject; var Key: Char);

procedure StringGrid2KeyPress(Sender: TObject; var Key: Char);

procedure StringGrid3KeyPress(Sender: TObject; var Key: Char);

procedure StringGrid4KeyPress(Sender: TObject; var Key: Char);

procedure CheckBox1Click(Sender: TObject);

procedure N8Click(Sender: TObject);

procedure N7Click(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure N4Click(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure Edit2KeyPress(Sender: TObject; var Key: Char);

procedure N5Click(Sender: TObject);

procedure N9Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

i,j,n,nRt : integer; {циклич.пер-е, кол-во ПУП,кол-во ПУП для рассчета Rt}

Ir,G : real; {соб.кап вложения для Rt, критерий эффективности}

Ip : array[1..3] of real; {макс. и мин-е значение первонач.кап.вложений}

RSvar,Rdvar,Vt : array[1..20] of real;{реальное значение Si и di для подсчета Rt, кр.риска}

dvar : array[1..3,1..20] of real; {безриск.%ставка 1-я строка - мин, 2 - макс.}

Svar,NPVvar,Rt : array[1..3,1..20] of real; {интервалы ден.потоков 1 строка - мин,2 - сред.зн.,3 - макс,NPV-массив,кр.ликвидности}

At,Zt,Ct : array[1..2,1..20] of real; {соб,заем средства, кр.покрытия 1- мин, 2- макс}

mCt,mVt,mRt : array[1..4,1..20] of real; {массивы функций принадлежностей к риску}

kCt,kVt,kRt,kre : array[1..3] of real; {массивы верхних границ весов для оценки риска, 1- минимальный, 4 - недопустимый}

implementation

uses Rtmodul, Rezaltmodul, Formirmodul, mmodul, Rulermodul;

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin

n:=SpinEdit1.Value;

StringGrid1.ColCount:=n;

StringGrid2.ColCount:=n;

StringGrid3.ColCount:=n;

StringGrid4.ColCount:=n;

Checkbox1.Checked:=false;

kCt[1]:=0.25;kCt[2]:=0.5;kCt[3]:=0.75;

kRt[1]:=0.25;kRt[2]:=0.5;kRt[3]:=0.75;

kVt[1]:=0.05;kVt[2]:=0.1;kVt[3]:=0.2;

kre[1]:=0.25;kre[2]:=0.5;kre[3]:=0.75;

for j:=0 to n-1 do begin

StringGrid1.Cells[j,0]:=IntToStr(j+1);

StringGrid2.Cells[j,0]:=IntToStr(j+1);

StringGrid3.Cells[j,0]:=IntToStr(j+1);

StringGrid4.Cells[j,0]:=IntToStr(j+1);

RSvar[j+1]:=0;Rdvar[j+1]:=0;

end;

Rtkey:=false; Ir:=0;nRt:=0;

end;

procedure TForm1.SpinEdit1Change(Sender: TObject);

begin

n:=SpinEdit1.Value; CheckBox1.Checked:=false;

Form4.StringGrid1.ColCount:=n+1; Form4.StringGrid2.ColCount:=n+1; Form2.SpinEdit1.Value:=n;

Form3.StringGrid1.RowCount:=n+1; Form3.StringGrid2.RowCount:=n+1;

StringGrid1.ColCount:=n; StringGrid2.ColCount:=n; StringGrid3.ColCount:=n; StringGrid4.ColCount:=n;

for j:=0 to n-1 do begin

StringGrid1.Cells[j,0]:=IntToStr(j+1); StringGrid2.Cells[j,0]:=IntToStr(j+1); StringGrid3.Cells[j,0]:=IntToStr(j+1);

StringGrid4.Cells[j,0]:=IntToStr(j+1);

Form3.StringGrid1.Cells[0,j+1]:=IntToStr(j+1);Form3.StringGrid2.Cells[0,j+1]:=IntToStr(j+1);

Form4.StringGrid1.Cells[j+1,0]:=IntToStr(j+1); Form4.StringGrid2.Cells[j+1,0]:=IntToStr(j+1);

end;

end;

procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char);

begin

Case key of

chr(45),chr(48),chr(49),chr(50),chr(51),chr(52),chr(53),chr(54), chr(55),chr(56),chr(57),chr(59),chr(44),chr(8):;

else key:=chr(0); end;

end;

procedure TForm1.StringGrid2KeyPress(Sender: TObject; var Key: Char);

begin

Case key of

chr(45),chr(48),chr(49),chr(50),chr(51),chr(52),chr(53),chr(54), chr(55),chr(56),chr(57),chr(59),chr(44),chr(8):;

else key:=chr(0); end;

end;

procedure TForm1.StringGrid3KeyPress(Sender: TObject; var Key: Char);

begin

Case key of

chr(48),chr(49),chr(50),chr(51),chr(52),chr(53),chr(54), chr(55),chr(56),chr(57),chr(59),chr(44),chr(8):;

else key:=chr(0);end;

end;

procedure TForm1.StringGrid4KeyPress(Sender: TObject; var Key: Char);

begin

Case key of

chr(45),chr(48),chr(49),chr(50),chr(51),chr(52),chr(53),chr(54), chr(55),chr(56),chr(57),chr(59),chr(44),chr(8):;

else key:=chr(0);end;

end;

procedure TForm1.CheckBox1Click(Sender: TObject);

begin

case CheckBox1.State of

cbChecked: begin

StringGrid4.ColCount:=1; Stringgrid4.RowCount:=1; StringGrid4.FixedCols:=0; StringGrid4.FixedRows:=0;

end;

cbUnchecked: begin

StringGrid4.ColCount:=n; Stringgrid4.RowCount:=2; StringGrid4.FixedCols:=0; StringGrid4.FixedRows:=1;

For j:=1 to n do begin StringGrid4.Cells[j-1,0]:=IntToStr(j); end;

end;

end;

end;

procedure TForm1.N8Click(Sender: TObject);

var

str,str2,str3 : string;

k,ii,iv,re : integer;

Cto,Rto : array[1..20] of real; // массивы обобщенных значений Ct и Rt

smax,smin,sav,min,A1,A2,B1,B2,C1,C2,K1,K2,vr,vrz,vrch,mvr1,mvr2,mvr3,mvr4 : real;

begin

//-------------------------------ввод критерия эффективности

try G:=StrToFloat(Edit2.Text);

Except G:=0;Edit2.Text:=IntToStr(0); end;

//-------------------------------ввод первонач. ден кап

str:=Edit1.Text;

if pos(';',str)<>0 then begin str2:=''; k:=1;

for i:=1 to Length(str) do begin

if (str[i]<>';') then str2:=str2+str[i]

else begin

Ip[k]:=StrToFloat(str2);

str2:='';

k:=k+1;

end;

if i=Length(str) then Ip[k]:=StrToFloat(str2);

end;

end else begin

try

Ip[1]:=StrToFloat(str); Ip[2]:=StrToFloat(str); Ip[3]:=StrToFloat(str);

except

showmessage('Ошибка при вводе значения первоначальных капиталовложений!'); FocusControl(Edit1);

end;

end;

//------------------------------ввод массива денежных потоков:

for j:=0 to n-1 do begin

str:=StringGrid1.Cells[j,1];

if pos(';',str)<>0 then begin str2:='';k:=1;

for i:=1 to Length(str)do begin

if (str[i]<>';') then str2:=str2+str[i]

else begin

Svar[k,j+1]:=StrToFloat(str2);

k:=k+1;str2:='';

end;

if i=Length(str) then Svar[k,j+1]:=StrToFloat(str2);

end;

end else try

Svar[1,j+1]:=StrToFloat(str); Svar[2,j+1]:=StrToFloat(str); Svar[3,j+1]:=StrToFloat(str);

except

showmessage('Ошибка при вводе значений интервалов денежных потоков!'); FocusControl(Stringgrid1);

end;

end;

//----------------------------ввод массива соб.и заем. средств

for j:=0 to n-1 do begin

str:=StringGrid2.Cells[j,1];

str3:=StringGrid3.Cells[j,1];

if pos(';',str)<>0 then begin str2:='';k:=1;

for i:=1 to Length(str)do begin

if (str[i]<>';') then str2:=str2+str[i]

else begin

At[k,j+1]:=StrToFloat(str2);

k:=k+1;str2:='';

end;

if i=Length(str) then At[k,j+1]:=StrToFloat(str2);

end;

end else try

At[1,j+1]:=StrToFloat(str);

At[2,j+1]:=StrToFloat(str);

except

showmessage('Ошибка при вводе значений собственных средств!');

FocusControl(StringGrid2);

end;

if pos(';',str3)<>0 then begin str2:='';k:=1;

for i:=1 to Length(str3)do begin

if (str3[i]<>';') then str2:=str2+str3[i]

else begin

Zt[k,j+1]:=StrToFloat(str2);

k:=k+1;str2:='';

end;

if i=Length(str3) then Zt[k,j+1]:=StrToFloat(str2);

end;

end else try

Zt[1,j+1]:=StrToFloat(str3);

Zt[2,j+1]:=StrToFloat(str3);

except

showmessage('Ошибка при вводе значений заемных средств!');

FocusControl(StringGrid3);

end;

end;

//------------------------Ввод массива безриск.% ставки

case CheckBox1.State of

cbChecked: begin

str:=StringGrid4.Cells[0,0];

if pos(';',str)<>0 then begin str2:='';k:=1;

for i:=1 to Length(str)do begin

if (str[i]<>';') then str2:=str2+str[i]

else begin

dvar[k,1]:=StrToFloat(str2);

k:=k+1;str2:='';

end;

if i=Length(str) then dvar[k,1]:=StrToFloat(str2);

end;

end else begin try

dvar[1,1]:=StrToFloat(str);

dvar[2,1]:=StrToFloat(str);

dvar[3,1]:=StrToFloat(str);

except

showmessage('Ошибка при вводе значения безрисковой процентной ставки!');

FocusControl(Stringgrid4);

end; end;

for i:=2 to n do begin

dvar[1,i]:=dvar[1,1];

dvar[2,i]:=dvar[2,1];

dvar[3,i]:=dvar[2,1];

end;

end;

cbUnchecked: begin

for j:=0 to n-1 do begin

str:=StringGrid4.Cells[j,1];

if pos(';',str)<>0 then begin str2:='';k:=1;

for i:=1 to Length(str)do begin

if (str[i]<>';') then str2:=str2+str[i]

else begin

dvar[k,j+1]:=StrToFloat(str2);

k:=k+1;str2:='';

end;

if i=Length(str) then dvar[k,j+1]:=StrToFloat(str2);

end;

end else try

dvar[1,j+1]:=StrToFloat(str);

dvar[2,j+1]:=StrToFloat(str);

dvar[3,j+1]:=StrToFloat(str);

except

showmessage('Ошибка при вводе значений безрисковой процентной ставки!');

FocusControl(Stringgrid4);

end;

end;

end;end;

//------------------------------Рассчет значения коэф-та покрытия Сt

for i:=1 to n do begin

Ct[1,i]:=1;

Ct[2,i]:=1;

end;

for i:=1 to n do begin

if Zt[2,i]<>0 then Ct[1,i]:=At[1,i]/Zt[2,i];

if Zt[1,i]<>0 then Ct[2,i]:=At[2,i]/Zt[1,i];

j:=3;

if (Ct[1,i]*Ct[2,i])<=(kCt[1]*kCt[1]) then Cto[i]:=(Ct[1,i]*Ct[2,i])/(kCt[1]*kCt[1]);

if ((Ct[1,i]*Ct[2,i])>(kCt[1]*kCt[1]))and (Ct[1,i]*Ct[2,i]<=(kCt[2]*kCt[2]))then j:=0;

if ((Ct[1,i]*Ct[2,i])>(kCt[2]*kCt[2]))and (Ct[1,i]*Ct[2,i]<=(kCt[3]*kCt[3])) then j:=1;

if ((Ct[1,i]*Ct[2,i])>(kCt[3]*kCt[3]))and (Ct[1,i]*Ct[2,i]<1) then j:=2;

if (Ct[1,i]*Ct[2,i]>=1) then Cto[i]:=1;

if (j = 0) or (j = 1) then

Cto[i]:=kCt[1+j]+((((Ct[1,i]*Ct[2,i])-(kCt[1+j]*kCt[1+j]))*(kCt[2+j]-kCt[1+j]))/((kCt[2+j]*kCt[2+j])-(kCt[1+j]*kCt[1+j])));

if j = 2 then

Cto[i]:=kCt[1+j]+((((Ct[1,i]*Ct[2,i])-(kCt[1+j]*kCt[1+j]))*(1-kCt[1+j]))/(1-(kCt[1+j]*kCt[1+j])));

end;

for i:=1 to n do begin

for j:=1 to 3 do begin

NPVvar[j,i]:=0;

end;

end;

//------------------------------Рассчет инервалов NPVt

if Rtkey=false then begin

for ii:=1 to n do begin

for i:=1 to ii do begin

smin:=1;smax:=1;sav:=1;

for j:=1 to i do begin smax:=smax*dvar[1,i];

smin:=smin*dvar[3,i];

sav:=sav*dvar[2,i];

end;

NPVvar[3,ii]:=NPVvar[3,ii]+(Svar[3,i]/smax);

NPVvar[1,ii]:=NPVvar[1,ii]+(Svar[1,i]/smin);

NPVvar[2,ii]:=NPVvar[2,ii]+(Svar[2,i]/sav);

end;

NPVvar[1,ii]:=NPVvar[1,ii]-Ip[3];

NPVvar[2,ii]:=NPVvar[2,ii]-Ip[2];

NPVvar[3,ii]:=NPVvar[3,ii]-Ip[1];

end;

end else begin

for ii:=1 to nRt do begin

for i:=1 to ii do begin

smax:=1;

for j:=1 to i do begin smax:=smax*Rdvar[i];end;

NPVvar[3,ii]:=NPVvar[3,ii]+(RSvar[i]/smax);

end;

NPVvar[1,ii]:=NPVvar[3,ii]-Ir;

NPVvar[2,ii]:=NPVvar[3,ii]-Ir;

NPVvar[3,ii]:=NPVvar[3,ii]-Ir;

end;

for ii:=nRt+1 to n do begin

for i:=1 to nRt do begin

smax:=1;

for j:=1 to i do begin smax:=smax*Rdvar[i];end;

NPVvar[3,ii]:=NPVvar[3,ii]+(RSvar[i]/smax);

end;

NPVvar[2,ii]:=NPVvar[3,ii];

NPVvar[1,ii]:=NPVvar[3,ii];

for i:=nRt+1 to ii do begin

smin:=1;smax:=1;sav:=1;

for j:=1 to i do begin smax:=smax*dvar[1,i];

smin:=smin*dvar[3,i];

sav:=sav*dvar[2,i];

end;

NPVvar[3,ii]:=NPVvar[3,ii]+(Svar[3,i]/smax);

NPVvar[1,ii]:=NPVvar[1,ii]+(Svar[1,i]/smin);

NPVvar[2,ii]:=NPVvar[2,ii]+(Svar[2,i]/sav);

end;

NPVvar[1,ii]:=NPVvar[1,ii]-Ir;

NPVvar[2,ii]:=NPVvar[2,ii]-Ir;

NPVvar[3,ii]:=NPVvar[3,ii]-Ir;

end;

end;

//------------------------------Рассчет значения коэффициента риска Vt

for i:=1 to n do begin

if (NPVvar[3,i]=NPVvar[1,i]) or (NPVvar[2,i]=NPVvar[1,i]) or (NPVvar[3,i]=NPVvar[2,i]) then begin

if (NPVvar[1,i]>G) then Vt[i]:=0;

if (NPVvar[1,i]<=G) and (NPVvar[3,i]>=G) then Vt[i]:=(G-NPVvar[1,i])/(NPVvar[3,i]-NPVvar[1,i]);

if (NPVvar[3,i]<G) then Vt[i]:=1;

end else begin

smin:=(G-NPVvar[1,i])/(NPVvar[3,i]-NPVvar[1,i]);

if G<NPVvar[1,i] then Vt[i]:=0;

if (G>=NPVvar[1,i]) and (G<NPVvar[2,i]) then begin

smax:=(G-NPVvar[1,i])/(NPVvar[2,i]-NPVvar[1,i]);

Vt[i]:=smin*(1+((1-smax)/smax)*Ln(1-smax));

end;

if (G>=NPVvar[2,i]) and (G<NPVvar[3,i]) then begin

if G=NPVvar[2,i] then smax:=1 else smax:=(NPVvar[3,i]-G)/(NPVvar[3,i]-NPVvar[2,i]);

Vt[i]:=1-((1-smin)*(1+((1-smax)/smax)*Ln(1-smax)));

end;

if G>=NPVvar[3,i] then Vt[i]:=1;

end;

end;

//-----------------------------Рассчет значения коэ-та ликвидности Rt

For i:=1 to n do begin

Rt[1,i]:=1;Rto[i]:=1;

Rt[2,i]:=1;

end;

//-----------------------------рассчет прогнозного занчения NPV и Rt

if Rtkey=true then begin

for ii:=1 to n do begin

NPVpmin:=0;NPVpmax:=0;NPVpav:=0;

for i:=1 to ii do begin

smin:=1;smax:=1;sav:=1;

for j:=1 to i do begin smin:=smin*dvar[3,i];smax:=smax*dvar[1,i];sav:=sav*dvar[2,i];end;

NPVpmax:=NPVpmax+(Svar[3,i]/smax);

NPVpmin:=NPVpmin+(Svar[1,i]/smin);

NPVpav:=NPVpav+(Svar[2,i]/sav);

end;

NPVpmin:=NPVpmin-Ip[3];

if NPVpmin<>0 then Rt[1,ii]:=NPVvar[1,ii]/NPVpmin;

NPVpmax:=NPVpmax-Ip[1];

if NPVpmax<>0 then Rt[3,ii]:=NPVvar[3,ii]/NPVpmax;

NPVpav:=NPVpav-Ip[2];

if NPVpav<>0 then Rt[2,ii]:=NPVvar[2,ii]/NPVpav;

if (NPVpmin<=0) and (NPVvar[1,ii]>=0) then Rt[1,ii]:=1;

if (NPVpmax<=0) and (NPVvar[3,ii]>=0) then Rt[3,ii]:=1;

if (NPVpav<=0) and (NPVvar[2,ii]>=0) then Rt[2,ii]:=1;

if (NPVpmin>=0) and (NPVvar[1,ii]<0) then Rt[1,ii]:=0;

if (NPVpmax>=0) and (NPVvar[3,ii]<0) then Rt[3,ii]:=0;

if (NPVpav>=0) and (NPVvar[2,ii]<0) then Rt[2,ii]:=0;

end;

for i:=1 to n do begin

j:=3;

if (Rt[1,i]*Rt[2,i]*Rt[3,i])<=(kRt[1]*kRt[1]*kRt[1]) then Rto[i]:=(Rt[1,i]*Rt[2,i]*Rt[3,i])/(kRt[1]*kRt[1]);

if ((Rt[1,i]*Rt[2,i]*Rt[3,i])>(kRt[1]*kRt[1]*kRt[1]))and (Rt[1,i]*Rt[2,i]*Rt[3,i]<=(kRt[2]*kRt[2]*kRt[2]))then j:=0;

if ((Rt[1,i]*Rt[2,i]*Rt[3,i])>(kRt[2]*kRt[2]*kRt[2]))and (Rt[1,i]*Rt[2,i]*Rt[3,i]<=(kRt[3]*kRt[3]*kRt[3])) then j:=1;

if ((Rt[1,i]*Rt[2,i]*Rt[3,i])>(kRt[3]*kRt[3]*kRt[3]))and (Rt[1,i]*Rt[2,i]*Rt[3,i]<1) then j:=2;

if (Rt[1,i]*Rt[2,i]*Rt[3,i]>=1) then Rto[i]:=1;

if (j = 0) or (j = 1) then

Rto[i]:=kRt[1+j]+((((Rt[1,i]*Rt[2,i]*Rt[3,i])-(kRt[1+j]*kRt[1+j]*kRt[1+j]))*(kRt[2+j]-kRt[1+j]))/((kRt[2+j]*kRt[2+j]*kRt[2+j])-(kRt[1+j]*kRt[1+j]*kRt[1+j])));

if j = 2 then

Rto[i]:=kRt[1+j]+((((Rt[1,i]*Rt[2,i]*Rt[3,i])-(kRt[1+j]*kRt[1+j]*kRt[1+j]))*(1-kRt[1+j]))/(1-(kRt[1+j]*kRt[1+j]*kRt[1+j])));

end;

end;

for i:=1 to n do begin

//----------------------------------Значения ф. принадлежности для Сt

if Cto[i]<=((kCt[2]+kCt[3])/2) then mCt[1,i]:=0;

if (Cto[i]>((kCt[2]+kCt[3])/2)) and (Cto[i]<kCt[3]) then mCt[1,i]:=(2*Cto[i]-kCt[2]-kCt[3])/(kCt[3]-kCt[2]);

if Cto[i]>=kCt[3] then mCt[1,i]:=1;

if (Cto[i]<=((kCt[1]+kCt[2])/2)) or (Cto[i]>=((kCt[3]+1)/2)) then mCt[2,i]:=0;

if (Cto[i]>((kCt[1]+kCt[2])/2)) and (Cto[i]<((kCt[2]+kCt[3])/2)) then mCt[2,i]:=(2*Cto[i]-kCt[1]-kCt[2])/(kCt[3]-kCt[1]);

if (Cto[i]>=((kCt[2]+kCt[3])/2)) and (Cto[i]<=((kCt[3]+1)/2)) then mCt[2,i]:=1-((2*Cto[i]-kCt[2]-kCt[3])/(1-kCt[2]));

if (Cto[i]<=(kCt[1]/2)) or (Cto[i]>((kCt[2]+kCt[3])/2)) then mCt[3,i]:=0;

if (Cto[i]>(kCt[1]/2)) and (Cto[i]<((kCt[1]+kCt[2])/2)) then mCt[3,i]:=(2*Cto[i]-kCt[1])/(kCt[2]);

if (Cto[i]>=((kCt[1]+kCt[2])/2)) and (Cto[i]<=((kCt[2]+kCt[3])/2)) then mCt[3,i]:=1-(2*Cto[i]-kCt[1]-kCt[2])/(kCt[3]-kCt[1]);

if Cto[i]>=((kCt[1]+kCt[2])/2) then mCt[4,i]:=0;

if (Cto[i]<((kCt[1]+kCt[2])/2)) and (Cto[i]>kCt[1]) then mCt[4,i]:=1-(2*(Cto[i]-kCt[1])/(kCt[2]-kCt[1]));

if Cto[i]<=kCt[1] then mCt[4,i]:=1;

//----------------------------------Значения ф. принадлежности для Rt

if Rto[i]<=((kRt[2]+kRt[3])/2) then mRt[1,i]:=0;

if (Rto[i]>((kRt[2]+kRt[3])/2)) and (Rto[i]<kRt[3]) then mRt[1,i]:=(2*Rto[i]-kRt[2]-kRt[3])/(kRt[3]-kRt[2]);

if Rto[i]>=kRt[3] then mRt[1,i]:=1;

if (Rto[i]<=((kRt[1]+kRt[2])/2)) or (Rto[i]>=((kRt[3]+1)/2)) then mRt[2,i]:=0;

if (Rto[i]>((kRt[1]+kRt[2])/2)) and (Rto[i]<((kRt[2]+kRt[3])/2)) then mRt[2,i]:=(2*Rto[i]-kRt[1]-kRt[2])/(kRt[3]-kRt[1]);

if (Rto[i]>=((kRt[2]+kRt[3])/2)) and (Rto[i]<=((kRt[3]+1)/2)) then mRt[2,i]:=1-((2*Rto[i]-kRt[2]-kRt[3])/(1-kRt[2]));

if (Rto[i]<=(kRt[1]/2)) or (Rto[i]>=((kRt[2]+kRt[3])/2)) then mRt[3,i]:=0;

if (Rto[i]>=(kRt[1]/2)) and (Rto[i]<((kRt[1]+kRt[2])/2)) then mRt[3,i]:=(2*Rto[i]-kRt[1])/(kRt[2]);

if (Rto[i]>=((kRt[1]+kRt[2])/2)) and (Rto[i]<((kRt[2]+kRt[3])/2)) then mRt[3,i]:=1-((2*Rto[i]-kRt[1]-kRt[2])/(kRt[3]-kRt[1]));

if Rto[i]>=((kRt[1]+kRt[2])/2) then mRt[4,i]:=0;

if (Rto[i]<((kRt[1]+kRt[2])/2)) and (Rto[i]>kRt[1]) then mRt[4,i]:=1-(2*(Rto[i]-kRt[1])/(kRt[2]-kRt[1]));

if Rto[i]<=kRt[1] then mRt[4,i]:=1;

//----------------------------------Значения ф. принадлежности для Vt

if Vt[i]<=((kVt[2]+kVt[3])/2) then mVt[4,i]:=0;

if (Vt[i]>((kVt[2]+kVt[3])/2)) and (Vt[i]<kVt[3]) then mVt[4,i]:=(2*Vt[i]-kVt[2]-kVt[3])/(kVt[3]-kVt[2]);

if Vt[i]>=kVt[3] then mVt[4,i]:=1;

if (Vt[i]<=((kVt[1]+kVt[2])/2)) or (Vt[i]>=((kVt[3]+1)/2)) then mVt[3,i]:=0;

if (Vt[i]>((kVt[1]+kVt[2])/2)) and (Vt[i]<((kVt[2]+kVt[3])/2)) then mVt[3,i]:=(2*Vt[i]-kVt[1]-kVt[2])/(kVt[3]-kVt[1]);

if (Vt[i]<((kVt[3]+1)/2)) and (Vt[i]>((kVt[2]+kVt[3])/2)) then mVt[3,i]:=1-((2*Vt[i]-kVt[2]-kVt[3])/(1-kVt[2]));

if (Vt[i]<=(kVt[1]/2)) or (Vt[i]>=((kVt[2]+kVt[3])/2)) then mVt[2,i]:=0;

if (Vt[i]>(kVt[1]/2)) and (Vt[i]<((kVt[1]+kVt[2])/2)) then mVt[2,i]:=(2*Vt[i]-kVt[1])/(kVt[2]);

if (Vt[i]>=((kVt[1]+kVt[2])/2)) and (Vt[i]<=((kVt[2]+kVt[3])/2)) then mVt[2,i]:=1-((2*Vt[i]-kVt[1]-kVt[2])/(kVt[3]-kVt[1]));

if Vt[i]>=((kVt[1]+kVt[2])/2) then mVt[1,i]:=0;

if (Vt[i]<((kVt[1]+kVt[2])/2)) and (Vt[i]>kVt[1]) then mVt[1,i]:=1-(2*(Vt[i]-kVt[1])/(kVt[2]-kVt[1]));

if Vt[i]<=kVt[1] then mVt[1,i]:=1;

end;

//-----------------------------Вывод значений

For i:=1 to n do begin

str:='('+FloatToStrF(Ct[1,i],ffFixed,9,2)+'; '+FloatToStrF(Ct[2,i],ffFixed,9,2)+')';

Form3.StringGrid1.Cells[1,i]:=str;

Form3.StringGrid1.Cells[4,i]:=FloatToStrF(Vt[i],ffFixed,9,2);

str:='('+FloatToStrF(NPVvar[1,i],ffFixed,9,2)+'; '+FloatToStrF(NPVvar[2,i],ffFixed,9,2)+'; '+FloatToStrF(NPVvar[3,i],ffFixed,9,2)+')';

Form3.StringGrid1.Cells[2,i]:=str;

str:='('+FloatToStrF(Rt[1,i],ffFixed,9,2)+'; '+FloatToStrF(Rt[2,i],ffFixed,9,2)+'; '+FloatToStrF(Rt[3,i],ffFixed,9,2)+')';

Form3.StringGrid1.Cells[3,i]:=str;

end;

for j:=1 to n do begin

// Form3.StringGrid2.Cells[1,j]:=FloatToStr(Cto[j]);

// Form3.StringGrid2.Cells[2,j]:=FloatToStr(Rto[j]);

k:=1; ii:=1;iv:=1;

for i:=2 to 4 do begin

if mCt[i-1,j]<mCt[i,j] then k:=i;

if mRt[i-1,j]<mRt[i,j] then ii:=i;

if mVt[i-1,j]<mVt[i,j] then iv:=i;

end;

if k=1 then Form3.StringGrid2.Cells[1,j]:=FloatToStrF(mCt[k,j],ffFixed,9,2)+'-минимальный';

if k=2 then Form3.StringGrid2.Cells[1,j]:=FloatToStrF(mCt[k,j],ffFixed,9,2)+'-повышенный';

if k=3 then Form3.StringGrid2.Cells[1,j]:=FloatToStrF(mCt[k,j],ffFixed,9,2)+'-критический';

if k=4 then Form3.StringGrid2.Cells[1,j]:=FloatToStrF(mCt[k,j],ffFixed,9,2)+'-недопустимый';

if ii=1 then Form3.StringGrid2.Cells[2,j]:=FloatToStrF(mRt[ii,j],ffFixed,9,2)+'-минимальный';

if ii=2 then Form3.StringGrid2.Cells[2,j]:=FloatToStrF(mRt[ii,j],ffFixed,9,2)+'-повышенный';

if ii=3 then Form3.StringGrid2.Cells[2,j]:=FloatToStrF(mRt[ii,j],ffFixed,9,2)+'-критический';

if ii=4 then Form3.StringGrid2.Cells[2,j]:=FloatToStrF(mRt[ii,j],ffFixed,9,2)+'-недопустимый';

if iv=1 then Form3.StringGrid2.Cells[3,j]:=FloatToStrF(mVt[iv,j],ffFixed,9,2)+'-минимальный';

if iv=2 then Form3.StringGrid2.Cells[3,j]:=FloatToStrF(mVt[iv,j],ffFixed,9,2)+'-повышенный';

if iv=3 then Form3.StringGrid2.Cells[3,j]:=FloatToStrF(mVt[iv,j],ffFixed,9,2)+'-критический';

if iv=4 then Form3.StringGrid2.Cells[3,j]:=FloatToStrF(mVt[iv,j],ffFixed,9,2)+'-недопустимый';

//----------------------------------Рассчет общего риска проекта

re:=TR[iv,k,ii];

min:=mVt[iv,j];

if mRt[ii,j]<min then min:=mRt[ii,j];

if mCt[k,j]<min then min:=mCt[k,j];

if re=1 then begin

A1:=0;B1:=0;K1:=0;C1:=0;

C2:=(((1-min)*(kre[2]-kre[1]))+2*kre[1])/2;

K2:=(kre[1]+kre[2])/2;

A2:=(-2/(kre[2]-kre[1]));

B2:=1+((2*kre[1])/(kre[2]-kre[1]));

end;

if re=2 then begin

A1:=2/kre[2];

B1:=-kre[1]/kre[2];

K1:=kre[1]/2;

C1:=((min*kre[2])+kre[1])/2;

C2:=(((1-min)*kre[3])+kre[2]+(min*kre[1]))/2;

K2:=(kre[2]+kre[3])/2;

A2:=(-2/(kre[3]-kre[1]));

B2:=1+((kre[1]+kre[2])/(kre[3]-kre[1]));

end;

if re=3 then begin

A1:=2/(kre[3]-kre[1]);

B1:=-(kre[1]+kre[2])/(kre[3]-kre[1]);

K1:=(kre[1]+kre[2])/2;

C1:=((min*(kre[3]-kre[1]))+kre[1]+kre[2])/2;

C2:=(((1-min)*(1-kre[2]))+kre[3]+kre[2])/2;

K2:=(kre[3]+1)/2;

A2:=(-2/(1-kre[2]));

B2:=1-((kre[2]+kre[3])/(1-kre[2]));

end;

if re=4 then begin

A1:=(2/(kre[3]-kre[2]));

B1:=-(kre[2]+kre[3])/(kre[3]-kre[2]);

K1:=(kre[2]+kre[3])/2;

C1:=((min*(kre[3]-kre[2]))+kre[2]+kre[3])/2;

C2:=1;K2:=0;A2:=0;B2:=0;

end;

vrch:=(A1*((C1*C1*C1)-(K1*K1*K1))/3);

vrch:=vrch+((B1*((C1*C1)-(K1*K1)))/2);

vrch:=vrch+(min*((C2*C2)-(C1*C1))/2);

vrch:=vrch+(A2*(((K2*K2*K2)-(C2*C2*C2)))/3)+(B2*((K2*K2)-(C2*C2))/2);

vrz:=(A1*((C1*C1)-(K1*K1))/2);


Подобные документы

  • Инвестиционные риски и методы оценки устойчивости инвестиционного проекта. Укрупненная оценка устойчивости инвестиционного проекта. Оценка ожидаемого эффекта проекта с учетом количественных характеристик неопределенности. Расчет границ безубыточности.

    курсовая работа [165,7 K], добавлен 24.06.2009

  • Рассмотрение основных стадий разработки инвестиционного проекта на примере ООО "Мир окон", проведение анализа его целесообразности. Выявление путей повышения оценки эффективности инвестиционной деятельности с учетом факторов риска и неопределенности.

    дипломная работа [716,1 K], добавлен 18.04.2011

  • Изучение понятия инвестиционного проекта. Рассмотрение методов анализа риска и влияния инфляции на инвестиционный проект. Анализ финансово-хозяйственной деятельности предприятия. Характеристика затрат, производственного и финансового планов организации.

    курсовая работа [90,3 K], добавлен 27.05.2015

  • Изучение теоретических аспектов существующих методов оценки инвестиций. Анализ текущей деятельности предприятия ООО "Ферроком". Разработка экономико-математической модели инвестиционного проекта организации и общая характеристика его эффективности.

    дипломная работа [324,0 K], добавлен 29.04.2014

  • Технико-экономическое обоснование, анализ и расчет показателей создаваемого инвестиционного проекта: оценка затрат и эффективности с учетом факторов риска и неопределенности; определение срока окупаемости. Отличие ТЭО от инвестиционного меморандума.

    реферат [35,2 K], добавлен 27.11.2010

  • Принципы и подходы к оценке эффективности инвестиций. Текущее состояние экономического окружения инвестиционного проекта. Общие положения о потоках денежных платежей. Учет неопределенности и риска при оценке эффективности ИП. Анализ чувствительности ИП.

    курсовая работа [1,0 M], добавлен 29.07.2013

  • Теоретические основы инвестиционного проектирования. Организация финансирования инвестиционных проектов. Маркетинг продукции и управление рисками. Разработка инвестиционного проекта по производству строительных материалов из твердых бытовых отходов Пензы.

    дипломная работа [3,2 M], добавлен 05.12.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.