- •Курсовая работа
- •Содержание введение
- •Пояснительная записка Информационная таблица
- •Схемы стадий пошаговой детализации методом иерархической декомпозиции
- •Укрупненные блок-схемы
- •Описание программы
- •Детализированная блок-схема
- •Описание модулей для каждой подпрограммы
- •Текст программы
- •Используемые модули в программе
- •Методика испытаний
- •Вычисления вручную
- •Результат, полученный в процессе выполнения программы До выполнения
- •После выполнения Для задания 1
- •Для задания 2
- •Для задания 3
- •Руководство программиста
Вычисления вручную
Для следующих модулей:
prv – модуль умножение матриц
Y(5,3) – { 1 -0.1 0.2 -1 1 -1 1 2 0.3 1 0.1 0.2 2 3 0.5 }
Z(3,5) – { 0.02 0.3 1.3 1.2 0 0 0 1 2 0.1 0.2 0.3 -1 -2 0.01 }
X(5,5)=Y(5,3)*Z(3,5)
X(1,1) = 1*0.02+0*(– 0.1)+0.2*0.2 = 0.06
X(1,2) = 1*0.3+0*(– 0.1)+0.2*0.3 = 0.36
X(1,3) = 1*1.3+1*(– 0.1)+0.2*(–1) = 1
X(1,4) = 1*1.2–2*(– 0.1)+0.2*(–2) = 0.6
X(1,5) = 1*0.1*(– 0.1)+0.2*0.01 = 0.01
X(2,1) = 0.02*(–1)+0*1+0.2*(–1) = – 0.22
X(2,2) = – 0.3 + 0 – 0.3 = – 0.6
X(2,3) = – 1.3 + 1 + 1 = 0.7
X(2,4) = – 1.2 + 2 + 2 = 2.8
X(2,5) = 0 + 0.1 – 0.01 = 0.09
X(3,1) = 0.02 + 0 + 0.06 = 0.08
X(3,2) = 0.3 + 0 + 0.09 = 0.39
X(3,3) = 1.3 + 2 – 0.3 = 3
X(3,4) = 1.2 + 4 – 0.6 = 4.6
X(3,5) = 0 + 0.2 + 0.003 = 0.203
X(4,1) = 0.02 + 0 + 0.04 = 0.06
X(4,2) = 0.3 + 0 + 0.06 = 0.36
X(4,3) = 1.3 + 0.1 – 0.2 = 1.2
X(4,4) = 1.2 + 0.2 – 0.4 = 1
X(4,5) = 0 + 0.01 + 0.002 = 0.012
X(5,1) = 0.04 + 0 + 0.1 = 0.14
X(5,2) = 0.6 + 0 + 0.15 = 0.75
X(5,3) = 2.6 + 3 – 0.5 = 5.1
X(5,4) = 2.4 + 6 – 1 = 7.4
X(5,5) = 0 + 0.3 + 0.005 = 0.305
P(3,3) = Z(3,5)*Y(5,3)
P(1,1) = 0.02*1+0.3*(–1)+1.3*1+1.2*1 + 0*2 = 2.22
P(1,2) = 0.02*(– 0.1)+0.3*1+1.3*2+1.2*0.1+0*3 = 3.018
P(1,3) = 0.02*0.2+0.3*(–1)+1.3*0.3+1.2*0.2+0*0.5 = 0.334
P(2,1) = 0 + 0 + 1 + 2 + 0.2 = 3.2
P(2,2) = 0 + 0 + 2 + 0.2 + 0.3 = 2.5
P(2,3) = 0 + 0 + 0.3 + 0.4 + 0.05 = 0.75
P(3,1) = 0.2 – 0.3 – 1 – 2 + 0.02 = – 3.08
P(3,2) = – 0.02 + 0.3 – 2 – 0.2 + 0.03 = – 1.89
P(3,3) = 0.04 – 0.3 – 0.3 – 0.4 + 0.005 = – 0.955
Sum – суммирует элементы матрицы
Сумма\Y(5,3)\=1–0.1+0.2–1+1–1+1+2+0.3+1+0.1+0.2+2+3+ 0.5 = 10.2
Сумма\Z(3,5)\=0.02+0.3+1.3+1.2+0+0+0+1+2+0.1+0.2+0.3–1–2+0.01 = 3.43
Сумма\X(5,5)\=0.06+0.36+1+0.6–0.01–0.22–0.6+0.7+2.8+0.09+0.08+0.39+3.00+ +4.6+0.2+0.06+0.36+1.2+1+0.01+0.14+0.75+5.1+7.4+0.31=29.38
Pmax выбирает максимальное из трех элементов (в программе выбор происходит из уже высчитанных сумм элементов матриц)
3.4.<10.2<29.38 Pmax = 29.38
UMN умножает элементы заданного столбца матрицы на определенное число (в программе “определенным числом” – является Pmax)
Y(1,2) = – 0.1*29.38 = –2.938
Y(2,2) = 1*29.38 = 29.38
Y(3,2) = 2*29.38 = 58.76
Y(4,2) = 0.1*29.38 = – 2.938
Y(5,2) = 3*2938 = 88.14
Z(1,3) = 1.3*29.38 = 38.194
Z(2,3) = 1*29.38 = 29.38
Z(3,3) = –1*29.38 = – 29.38
X(1,4) = 0.6*29.38 = 17.628
X(2,4) = 2.8*29.38 = 82.264
X(3,4) = 4.6*29.38 = 135.148
X(4,4) = 1*29.38 = 29.38
X(5,4) = 7.4*29.38 = 217.412
Prnot0 умножает ненулевые элементы матрицы
Prnot0(Y)=1*(–0.1)*0.2*(–1)*1*(–1)*1*2*0.3*1*0.1*0.2*2*3*0.5 = – 0,00072
Prnot0(Z)=0.02*0.3*1.3*1.2*1*2*0.1*0.2*0.3*(–1)*(–2)*0.01 = 0.0000022464
Prnot0(YP4) = 1*(–2.94)*0.2*(–1)*29.38*(–1)*1*58.76*0.30*1*2.94*0.2*2* *88.14*0.50 = – 15782.7447053063424
Prnot0(ZP) = 0.02*0.3*38.19*1.2*29.38*2*0.1*0.2*0.3*(–29.38)*(–2)*0.01 = = 0.056963541143808
Prnot0(X)=0.06*0.36*1*0.6*(–0.01)*(–0.22)*(–0.6)*0.7*2.8*0.09*0.08*0.39* *3.00*4.6*0.2*0.06*0.36*1.2*1*0.01*0.14*0.75*5.1*7.4* *0.31=– 0.00000000008274258
Prnot0(P) = 2.22*3.02*0.33*3.2*2.5*0.75*(–3.08)*(–1.89)* *(–0.96) = –74.183763354624
Prnot0(XP)=0.06*0.36*1*17.63*(–0.01)*(–0.22)*(–0.6)*0.7*82.26*0.09*0.08* *0.39*3*135.15*0.2*0.06*0.36*1.20*29.38*0.01*0.14*0.75*5.1* *217.41*0.31 = –0.001811417743
