Операции над списками и функции от элементов списка
списки были бы бесполезны, если бы не было средств выделения любых элементов из них. Рассмотрим такие средства
List[[i]] List[[{i,j,…}]] TableForm[List] | Выбирает i-й элемент списка List. Выбирает i-й,j-й и т.д.элементы списка List. Выполняет вывод элементов списка List в табличной форме. |
Пример:
1)Пример выделения элемента списка
Списки – данные сложной структуры. Для выявления структуры списков используется ряд функций
Length[List] Dimensions[List] MatrixQ[List] | Выдает число элементов списка List. Выдает размерность списка Проверяет, является ли список матрицей, и выдает True, если это так, и False в противном случае. |
Примеры:
1)Пример определения числа элементов, входящих в список
2)Проверим, является ли заданный список матрицей
Det[m] Inverse[m] Transpose[m] MatrixForm[m] | Вычисляет определитель квадратной матрицы Дает матрицу, обратную квадратной матрице m Находит транспонированную матрицу Запись в матричной форме |
Включение в список новых элементов
Append[List,element] Prepend[List,element] Insert[List,element,n] | Добавляет элемент в конец списка. Добавляет элемент в начало списка. Вставляет элемент в позицию n (отсчет позиции ведется с начала List, а если задано –n, то с конца) |
Пример:
Пример включения числа 11 в конец списка, в начало и на заданную (третью) позицию
Упражнения:
1)Задать список пяти одинаковых элементов a.
2)Задать матрицу и найти: ее определитель, обратную матрицу, транспонированную матрицу, вывести в матричной форме.
3)Вставьте в конец, в начало и в середину списка элемент d.
4)Задать список , найти набольшее и наименьшее число из элементов списка.
5)У заданного списка, элементами которого являются числа от 1 до 10, увеличить значение элемента на единицу, если число , и оставить неизменным в противном случае.
7. Организация циклов
Do[expr,{i, imin}] Do[expr,{i,imin,imax,di}] While[test, expr] For[start,test,step,body] | Выполненяет expr, изменяя i от 1 до imax Выполненяет expr, изменяя i от imin до imax с шагом di Выполняет expr до тех пор, пока test дает логическое значение True Вычисляет start, потом, вычисляет step и body, пока test не примет значение False. |
Примеры:
1)Используя функцию While, напишем цикл, определяющий четные числа, меньших или равных n=5
Запись равноценна записи .
2)Найдем сумму с помощью оператора Do:
3)Построим график функции, принимающей значение 1 при и при
Упражнения:
1)Постройте графики функций , используя оператор цикла.
2)Найдите с помощью оператора While.
3)Функцией тесно связанной с оператором Do, является функция Sum. Для примера найдите сумму с помощью оператора Do и с помощью функции Sum.
4)Сосчитайте сколько раз встречается элемент 3 в заданном списке
5)Уменьшите на единицу первые пять элементов списка (см. упражнение 4) .
6)Из данного списка получите новый список, элементами которого являются пары. Первый элемент пар элемент первого списка, второй – число вхождений.
7)Задайте базу данных , образуйте новую базу данных при помощи деления каждого элемента на этот элемент без 1, т.е. найдите для каждого i.