Эволюция элитных групп в организационных системахРефераты >> Программирование и компьютеры >> Эволюция элитных групп в организационных системах
12. Конец.
Блок-схема подпрограммы приведена на рис. 8.
3.9. Описание подпрограммы SHOWQUALITY
3.9.1. Вводная часть
Синтаксис:
procedure showquality(typ,kol,Num:word);
Подпрограмма используется в программе ELITE.PAS. Подпрограмма написана на языке программирования Borland Pascal версии 7.0 фирмы Borland International на ПЭВМ IBM PC AT 486DX/50.
3.9.2. Функциональное назначение
Подпрограмма ShowQuality предназначена для вывода в табличной форме результатов моделирования эволюции элитной группы.
3.9.3. Описание информации
Входные данные:
typ - вывод данных элитной группы в таблицу(0 - до моделирования, 1 - после);
Num - размер элитной группы;
Kol - количество критериев отбора.
Выходные данные:
Выводит на экран данные элитной группы в табличной форме. Пример видеограммы приведен на рис. .
3.9.4. Используемые подпрограммы
Данная подпрограмма не использует других подпрограмм, кроме стандартных функций и процедур библиотеки языка программирования Borland Pascal версии 7.0 фирмы Borland International.
3.9.5. Описание логики
Описание блок-схемы подпрограммы ShowQuality;
1. Если typ=0, то переход к п. 2, иначе к п. 4;
2. Вывод “Среднее арифм. критериев”;
3. Вывод таблицы;
4. s:=0; i:=0;
5. Если i>=Kol, то переход к п. 12;
6. j:=0;
7. s:=s+otb[j,i]; j:=j+1;
8. Если j<N, то переход к п. 7;
9. f:=S/(N+1);
10. Вывод t;
11. i:=i+1;
12. Конец.
Блок-схема подпрограммы приведена на рис. 9.
3.10. Описание подпрограммы INPUT
3.10.1. Вводная часть
Синтаксис:
procedure input(Num:byte);
Подпрограмма используется в программе ELITE.PAS. Подпрограмма написана на языке программирования Borland Pascal версии 7.0 фирмы Borland International на ПЭВМ IBM PC AT 486DX/50.
3.10.2. Функциональное назначение
Подпрограмма INPUT предназначена для тестирования всех остальных подпрограмм.
3.10.3. Описание информации
Входные данные:
Num - номер тестируемой подпрограммы:
2 - PRETENDENT;
3,4 - PROPOLKA;
5 - DELEGATION.
Выходные данные:
Не имеет.
3.10.4. Используемые подпрограммы
Данная программа , кроме стандартных подпрограмм библиотеки языка программирования Borland PASCAL версии 7.0 фирмы Borland International, использует следующие подпрограммы:
elem - для моделирования нового элемента;
pretendent - для тестирования;
propolka - для тестирования;
delegation - для тестирования;
showquality - для вывода результатов тестирования в табличной форме.
3.10.5. Описание логики
Описание блок-схемы подрограммы INPUT.
1. Если flag=15 &(nm2=0 or nm2=6), то переход к п. 40;
2. Вызов подпрограммы nm2:=menu(2);
3. Если nm2<>6 & nm2<>0, то переход к п. 4, иначе к п. 5;
4. test:=1;
5. Если nm2=2, то переход к п. 13, иначе, если nm2=3, то переход к п. 20, иначе если
nm2=4, то переход к п. 25, иначе если nm2=5, то переход к п. 32, иначе если nm2=6
or nm2=0, то переход к п. 55, иначе если nm2=1, то переход к п. 6;
6. Вывод “Колич. критериев”;
7. Ввод t;
8. Если t>=20, то переход к п. 9, иначе к п. 10;
9. t:=20;
10. Если t<1, то переход к п. 11, иначе к п. 12;
11. t:=1;
12. t:=t-1; flag:=flag or 1; переход к п. 55;
13. j:=0;
14. Вывод “Разброс значений”;
15. Ввод ran[0,j], ran[1,j];
16. Вывод “Приоритет критерия”;
17. Ввод ran[2,j];
18. flag:=flag or 2; j:=j+1;
19. Если j<t, то переход к п. 14, иначе к п. 55;
20. Вывод “Размер группы”;
21. Ввод N;
22. Если N>200, то переход к п. 23, иначе к п. 24;
23. n:=200;
24. flag:=flag or 4; переход к п. 55;
25. Если Num=5, то переход к п. 26, иначе к п. 55;
26. Вывод “Делегирующая группа”;
27. Ввод dl;
28. Если dl>400, то переход к п. 29, иначе к п. 30;
29. dl:=400;
30. Если dl<1, то переход к п. 31, иначе к п. 32;
31. dl:=1; переход к п. 55;
32. Вывод “Циклы жизни”;
33. Ввод f;
34. Если f>4000, то переход к п. 35, иначе к п. 36;
35. f:=4000;
36. Если f<1, то переход к п. 37, иначе к п. 38;
37. f:=1;
38. f:=f-1; flag:=flag or 8; переход к п. 55;
39. переход к п. 1;
40. Если test=1, то переход к п. 41, иначе к п. 49;
41. i:=0;
42. Вызов подпрограммы elem(t,i); i:=i+1;
43. Если i<N, то переход к п. 42;
44. i:=0;
45. j:=0;
46. otb[i+n+ck,j]:=otb[i,j]; j:=j+1;
47. Если j<T, то переход к п. 46; i:=i+1;
48. Если i<N, то переход к п. 45, иначе к п. 54;
49. i:=0;
50. j:=0;
51. otb[i,j]:=otb[i+n+ck,j]; j:=j+1;
52. Если j<T, то переход к п. 51; i:=i+1;
53. Если i<N, то переход к п. 50;
54. Вызов подпрограммы ShowQuality(0,t,n);
55. i:=1;
56. Если num=2, то переход к п. 57, иначе к п. 58;
57. Вызов подпрограммы pretendent(t); переход к п. 61;
58. Вызов подпрограммы propolka(1,t,0); переход к п. 61;
59. Вызов подпрограммы propolka(1,t,1); переход к п. 61;
60. Вызов подпрограммы delegation(dl,j,t);
61. Если readkey=27, то переход к п. 64;
62. i:=i+1;
63. Если i<f, то переход к п. 56;
64. Вызов подпрограммы ShowQuality(1,t,0);
65. Конец.
Блок-схема подпрограммы приведена на рис. 10.
4. ОПИСАНИЕ КОНТРОЛЬНОГО ПРИМЕРА
4.1. Назначение
Контрольный пример предназначен для оценки правильности работы программы. В данном случае, контрольный пример предназначен для оценки корректности моделирования эволюции элитных групп.
4.2. Исходные данные
Исходными данными являются данные о критериях оценки элитной группы до моделирования. Эти данные представлены в таблице 4. Список приоритетов и начальные значения представлены в таблице 5.
Таблица 4.
Пределы изменения |
Название критерия |
160 - 240 |
1. Рост (в см.) |
0 - 100 |
2. Результативность бросков по воротам (в %) |
0 - 100 |
3. Количество проигранных матчей (в %) |
1 - 5 |
4. Степень игры в пас (по 5-ти балльной системе) |
0 - 200 |
5. Коэффициент интеллекта |
Таблица 5.
№ |
Начальные показатели |
Приоритет |
1 |
194.000000 |
1 |
2 |
51.150000 |
2 |
3 |
48.550000 |
-1 |
4 |
2.800000 |
1 |
5 |
89.600000 |
1 |