Менеджмент - это управление организацией, функционирующей в условиях рыночной экономики.
Риски предприятия при реализации проектов
Приложение А
Листинг разработанной программы
В данном приложении приведён листинг программы, разработанной в среде MATLAB. Подробное описание программы и взаимосвязь её структурных блоков приведены в главе 3 дипломного проекта.
Основные блоки программы
Основными считаются блоки программы, ведущие непосредственное взаимодействие с пользователем, например, требующие ввода данных или выбора действия или варианта из предложенного списка. Основные блоки программы используют в своей работе вспомогательные блоки, которые описаны в следующем разделе.
Главное диалоговое окно
functionDiplom
clc;
formatcompact
disp('Использоватьтестовыеданные?');=input('1 - да, 2 - нет: ');
if a==1Data_Input
disp(' _');('ВЫБЕРИТЕ ДЕЙСТВИЕ ИЗ СПИСКА:');=char('1 Изменение исходных данных', '2 Расчёт плановых показателей эффективности проектов', '3 Расчёт штрафов и показателей эффективности при заданных механизмах управления, ограничения и коррекции;' .
,' оценка рисков реализации проектов', '4 Оптимизация выбора механизмов управления для минимизации функции штрафов', '5 Оптимизация выбора механизмов управления, ограничения и коррекции для минимизации риска','6 Оптимизация выбора механизмов для максимизации чистой приведённой стоимости портфеля проектов','0 Выход');
disp(Choice);=input('Выбор: ');choice~=0choice1
disp('Использовать тестовые данные? 1 - да, 2 - нет');=input('1 - да, 2 - нет: ');
if a==1Data_Input2_Parameters3_Modelling4_Optimizing5_Optimizing6_Optimizing
disp(' _');('ВЫБЕРИТЕ ДЕЙСТВИЕ ИЗ СПИСКА:');
disp(Choice);=input('Выбор: ');
Вводисходныхданных
Data_Inputn Iplan CFplan Lmax Transfer CVI CVCF CVINF inflation Rsis rmin W E H Aa
disp(' ');('ВВОД ИСХОДНЫХ ДАННЫХ');
Lmax=0;=[];=[];=[];=[];=[];=input('Введите число проектов (1,2, n)_');
[N,M]=size(n);=zeros(n,1);
while(N~=1)||(M~=1) %Проверка правильности ввода числа проектов('Ошибка ввода!');=input('Введите число проектов (1,2, n)_');
[N,M]=size(n);i=1:n %Ввод плановых инвестиций, разрешений на передачу инвестиций и плановых доходов=num2str(i);=strcat('Введите время начала проекта №',si,' (0,1, t)_');
t=input(str);
[Nt,Mt]=size(t);
while(Nt~=1)||(Mt~=1) %Проверка правильности ввода параметра t('Ошибка ввода!');=strcat('Введите время начала проекта №',si,' (0,1, t)_');
t=input(str);
[Nt,Mt]=size(t);
end=strcat('Введите значения инвестиций в проект №',si,' в каждом периоде ([I1 I2 .It])_');
Ip=input(str);=size(Ip,1);
while NIp~=1 %Проверка правильности ввода инвестиций
disp('Ошибкаввода!');=input(str);=size(Ip,1);=length(Ip);
str=strcat('Задайте разрешение на передачу инвестиций из проекта №',si,' в каждом периоде ([0/1])_');
T=input(str);=(L==length(T));
b=(sum(T)==sum(T==1));(a~=true)||(b~=true) %Проверка правильности ввода разрешений
disp('Ошибкаввода!');=input(str);=(L==length(T));=(sum(T)==sum(T==1));
end=strcat('Введите плановые значения доходов от проекта №',si,' в каждом периоде ([CF1 CF2 .CFt])_');
CFp=input(str);=size(CFp,1);=(length(Ip)==length(CFp));
while (Nc~=1)||(a~=true) %Проверка правильности ввода доходов('Ошибка ввода!');=input(str);
Nc=size(CFp,1);=(L==length(CFp));
end=strcat('Коэффициент вариации инвестиций проекта №',si,' линейно изменяется от_');
cvi1=input(str);
[Ni,Mi]=size(cvi1);
while(Ni~=1)||(Mi~=1) %Проверка правильности ввода
disp('Ошибкаввода!');=input(str);
[Ni,Mi]=size(cvi1);=input('до ');
[Ni,Mi]=size(cvi2);(Ni~=1)||(Mi~=1) %Проверка правильности ввода('Ошибка ввода!');=input('до ');
[Ni,Mi]=size(cvi2);=cvi1:(cvi2-cvi1)/(L-1):cvi2;
str=strcat('Коэффициент вариации доходов проекта №',si,' линейно изменяется от_');