Главная Длительная эволюция [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [ 32 ] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] Рис. 3.25 Глава 4 РАБОТА СО СПИСКАМИ Материал, рассматриваемый в этой главе, занимает центральное место в книге, потому что его изучение позволяет продвинуться вперед к овладению программированием на языке высокого уровня, каким является „Математика", или вернуться назад к использованию ее в качестве калькулятора, но с помощью новых мощных средств работы с выражениями „Математики". Основным объектом этой главы являются списки - один из наиболее фундаментальных способов структурирования данных. 4.1. Порождение списков Список есть выражение „Математики", имеющее заголовок List. Его элементами могут быть любые выражения „Математики". С клавиатуры списки можно вводить с помощью фигурных скобок: {a,Sin[u + v],List[l,2,3]} {a,5in[tz +и]],{1,2,3}}. Элементами списка могут быть списки. Наиболее часто встречающаяся конструкция из списка списков - матрицы. m = {{mll,ml2,ml3},{m21,m22,m23}, {т31,т32,тЗЗ}} MatrixForm mil ml2 ml3 m21 m22 m23 m31 m32 m33 Функция MatrixForm представила список m в привычной матричной форме. Возможен пустой список List[], или {}. Следующие пять функций порождают списки. Выражение Range[n] имеет результатом список {1,2,.. .,п}, выражение Range[m,n], где числа ш, п не обязательно целые, - список {т,m-Ь 1,...,m-ЬArt}, причем m + ki<n<m + + {k + l)i: Range[2.2,4.9] {2.2,3.2,4.2} Если у функции Range заданы три аргумента, то последний определяет шаг порождения чисел, т.е. разность между последовательными элементами списка: Range[2.2,4.9,0.5] {2.2,2.7,3.2,3.7,4.2,4.7} Функция Table позволяет генерировать более сложно устроенные списки. Выражение ТаЬ1е[ехрг, {п}] порождает список из п значений одного и того же выражения ехрг. ТаЫе[1еагп,{3}] {learn,learn, learn} Здесь необходимо сделать следующее уточнение. Дело в том, что одно и то же исходное выражение ехрг при вычислении может давать различные результаты. Чтобы понять это, рассмотрим функцию Random, часто используемую в математическом моделировании. Выражение Random[ ] при вычислении имеет результатом однородно распределенную псевдослучайную вещественную величину, заключенную в интервале от О до 1. Поэтому вычисление выражения Table[Random[ ] ] может дать, например, следующий результат: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [ 32 ] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] 0.0012 |