Операции над списками и функции от элементов списка

 

списки были бы бесполезны, если бы не было средств выделения любых элементов из них. Рассмотрим такие средства

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.