Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Воскобойников. Программирование в Mathcad

.pdf
Скачиваний:
40
Добавлен:
25.03.2016
Размер:
331.7 Кб
Скачать

x1

 

 

2.1

y1

 

0.1

 

 

 

 

 

 

 

 

 

z

 

 

 

dist

( x1, y1 )

 

z = 1.051

dist ( 0.2, 8.1) = 8.102

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

Напомним, что описание функции пользователя должно

опережать обращение к ней.

Векторизация вычислений. Любое вычисление, которое

MathCAD может выполнить с одиночными значениями, он может выполнять с векторами и матрицами. Это можно реализовать двумя способами: последовательно выполняя действия над каждым элементом массива и используя оператор векторизации. Для ввода этого оператора необходимо:

используя выделяющую рамку, выделить объекты, к которым применяется оператор;

нажать одновременно клавиши [ Ctrl ] и "Минус", чтобы применить оператор векторизации ( объекты, к которым применяется оператор вверху имеют стрелку).

Оператор векторизации меняет смысл операций. Например,

Анекоторая матрица. Тогда запись exp(A) некорректна, так как аргументом функции exp должна быть простая переменная, а не матрица. Применение к этой функции оператора векторизации приводит к вычислению функции exp от каждого элемента матрицы и результатом также является матрица. Это иллюстрирует

следующий фрагмент:

Обозначение оператора векторизации

 

A

 

 

1

1

exp( A ) =

2.718

2.718

 

 

 

 

2

2

7.389

7.389

 

 

 

 

 

 

 

 

Аналогичный пример можно привести с функцией "корень квадратный"

A =

1

1

 

 

1.414 1.414

31

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

factorial( n )

 

 

1 if n

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

( n .factorial( n

 

1) ) otherwise

 

 

factorial ( 3 ) = 6

factorial ( 20 ) = 2.4331018

5. РЕКОМЕНДОВАННАЯ ЛИТЕРАТУРА

1. MathCAD 6.0 Plus. Руководство пользователя. Пер. с англ. М.: Филинъ. 1996. 712 с.

2.Дьяконов В.П. Справочник по MathCAD 6.0 Plus Pro. М.: СК Пресс. 1997. 336 с.

3.Дьяконов В.П., Абраменкова И.В. MathCAD7.0 в математике, физике и в Internet. М.: Изд-во Нолидж. 1998.352 с.

32