Mathematica. Знакомство с функциями

Элементарное введение в Wolfram Language

(язык программирования системы Mathematica)

Mathematica

перейти к содержанию

2. Знакомство с функциями

Когда вы набираете 2+2, Wolfram Language понимает это как Plus[2,2], где Plus - это функция. В Wolfram встроено более 5000 функций, среди которых арифметические составляют лишь малую часть.

| Пока под функцией можно понимать формулу, которая имеет уникальное имя (Plus в примере выше) и в которую надо подставить данные (2,2), чтобы она могла быть вычислена.

Вычислим 3+4 с помощью функции Plus:
ln[1]:=Plus[3,4]
Out[1]=7

Вычислим 1+2+3 с помощью Plus:
ln[1]:=Plus[1,2,3]
Out[1]=6

Функция Times выполняет умножение:
ln[1]:=Times[2,3]
Out[1]=6

Вы можете помещать вызов функций в другие функции:
ln[1]:=Times[2,Plus[2,3]]
Out[1]=10

В Wolfram все функции требуют квадратные скобки []. В именах функций первая буква должна быть заглавной.

Функция Max находит максимальное (наибольшее) число из данного набора чисел.

Наибольшее число среди 2, 7 и 3 равно 7.
ln[1]:=Max[2,7,3]
Out[1]=7

Функция RandomInteger выбирает случайное целое число от нуля до указанного вами числа.

| Что такое целое число?

Давайте получим случайное целое число от 0 до 100 включительно:
ln[1]:=RandomInteger[100]
Out[1]=4

При повторном вызове этой функции вы получаете случайное число, которое может не совпадать с числом из предыдущего вызова.
ln[1]:=RandomInteger[100]
Out[1]=83

| Придумайте задачу, для решения которой такая функция была бы полезной.

Справочник

Plus[2,2] 2+2 сложение
Subtract[5,2] 5-2 вычитание
Times[2,3] 2*3 умножение
Divide[6,2] 6/2 деление
Power[3,2] 3^2 возведение в степень
Max[3,4] максимум
Min[3,4] минимум
RandomInteger[10] случайное целое число

Упражнения

| ответы к упражнениям приведены после условий

2.1 С помощью функции Plus вычислите 7+6+5.

2.2 Вычислите 2×(3+4) с помощью Plus и Times.

2.3 Вычислите наибольшее из чисел 6×8 и 5×9, используя функцию Max.

2.4 Получите случайное целое число от 0 до 1000 включительно.

2.5 Используйте Max и RandomInteger для генерации целого числа от 10 до 20 включительно.

х2.1 Вычислите 5×4×3×2 с помощью Times.

x2.2 Вычислите 2-3 с помощью Subtract.

x2.3 Вычислите (8+7)*(9+2), используя Times and Plus.

x2.4 Найдите значение (26-89)/9 с помощью Subtract и Divide.

x2.5 Вычислите 100-5^2 с помощью Subtract и Power.

x2.6 Найдите наибольшее число из 3^5 и 5^3

x2.7 Найдите произведение 3 и наибольшего числа из 4^3 и 3^4.

x2.8 Найдите сумму двух случайных целых чисел, каждое из которых от 0 до 1000 включительно.

Ответы к упражнениям

2.1) 18
2.2) 14
2.3) 48

х2.1) 120
х2.2) -1
х2.3) 165
х2.4) -7
х2.5) 75
х2.6) 243
х2.7) 243

Вопросы и ответы

1. Обязательно ли начинать название функций Plus, RandomInteger и др. с заглавной буквы?

Да. В Wolfram plus не то же самое, что и Plus. Заглавная буква означает, что вы обращаетесь к встроенной ("официальной") функции plus.

2. Обязательно ли в функции использовать именно квадратные скобки [...]?

Да. Квадратные скобки [...] предназначены для функций, а круглые (..) только для группировки в выражениях, например, 2*(3+4).

3. Как произносится запись Plus[2,3]?

Обычно говорят "plus двух и трех", "plus от двух и трех", иногда "plus два три". Символ "[" можно называть "открывающей скобкой", а "]" - "закрывающей скобкой".

4. Почему мы использовали Plus[2,3] вместо 2+3?

Именно для Plus это было необязательно. Но для большинства других функций - таких как Max или RandomInteger - таких вариантов записи как "+" для Plus нет, поэтому вы должны использовать их имена.

5. Могу я использовать Plus[] и "+" совместно?

Да. Например, Plus[4+5,2+3] или Plus[4,5]*5.

6. Что значит красный цвет, которым Wolfram выделяет введенный мной текст?

Значит, что набранный вами текст непонятен Wolfram. Первым делом проверьте открывающие и закрывающие скобки. Подробности смотрите в главе 47.

Примечания

  • В Wolfram Language выражения (expressions) состоят из вложенных деревьев функций.
  • Функция Plus может сложить любое количество чисел. Функция Subtract от данного числа вычитает  только одно число (для исключения неоднозначности, например, (2-3)-4 и 2-(3-4) ) .
  • В Wolfram Language понятие функции шире, чем в классических математических или компьютерных науках. Например, F[что-то] является функцией вне зависимости от того, какой возращается результат после выполнения: конечный или в символической форме.

 предыдущая глава                                         следующая глава

Перевод с дополнениями: И.Колемаев

источник http://www.wolfram.com/language/elementary-introduction/02-introducing-functions.html

перейти к содержанию