В мануале не нашел так часто употребляемых младшекурсниками процедур таких как:
- умножение столбца на число;
- умножение строки на число;
- сложение одной строки с другой, умноженной на число;
- сложение одного столбца с другим, умноженным на число.
M - матрица n на n
умножение j-го столбца на k
mulcol (M, j, k) :=
block ( _c: col (M, j) . k,
for i:1 thru n do M[i][j] : _c[i][1],
M );
умножение i-ой строки на k
mulrow (M, i, k) :=
block ( _r: row (M, i) . k,
for j:1 thru n do M[i][j] : _r[1][j],
M );
сложение i_to-ой строки с i_from-ой, умноженной на k
sumrows (M, i_from, i_to, k) :=
block( row_from : row (M, i_from) . k,
for j:1 thru n do M[i_to][j] : M[i_to][j] + row_from[1][j],
M );
сложение j_to-го столбца с j_from-ым, умноженным на k
sumcols (M, j_from, j_to, k) :=
block( col_from: col (M, j_from) . k,
for i:1 thru n do M[i][j_to] : M[i][j_to] + col_from[i][1],
M );
Комментариев нет:
Отправить комментарий