Итерационные методы решения линейных систем и задач на собственные значения
Метод итерации - решение систем линейных алгебраических уравнений с вещественными коэффициентами относительно неизвестных, принимающих вещественные значения. Характеристика методов Якоби, Гаусса-Зейделя, П.Л. Чебышева. Применение итерационных методов.
Рубрика | Математика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 11.06.2013 |
Размер файла | 251,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Федеральное государственное автономное образовательное учреждение
высшего профессионального образования
Белгородский государственный национальный исследовательский университет
НИУ «БелГУ»
Факультет математики и информационных технологий
Кафедра алгебры, теории чисел и геометрии
Курсовая работа
Итерационные методы решения линейных систем и задач на собственные значения
Студентки 3 курса группы 010806
Селезнёвой Татьяны Олеговны
Научный руководитель: к. ф.-м. н.
доцент А.Г. Сокольский
Белгород, 2011
Содержание
Введение
1. Основные понятия
2. Метод простой итерации (метод Якоби)
3. Общий неявный метод простой итерации
4. Модифицированный метод простой итерации
5. Метод Гаусса-Зейделя
6. Метод верхней релаксации
7. Итерационный метод П.Л. Чебышева
8. Решение полной проблемы собственных значений. Метод вращений
9. Применение итерационных методов
Заключение
Библиографический список
Введение
В данной курсовой работе мы будем рассматривать один из методов решения систем линейных уравнений с вещественными коэффициентами относительно неизвестных, также принимающих вещественные значения, а именно метод итерации. В отличие от точечных методов решения, которые теоретически позволяют получить точные значения неизвестных в результате проведения конечного числа арифметических операций (напр. метод Крамера), итерационные методы позволяют получить искомое решение лишь в виде предела последовательности векторов, построение которых производится с помощью единообразного процесса, называемого процессом итераций (последовательных приближений).
Также итерационные методы находят широкое применение и при решении еще одной вычислительной задачи линейной алгебры, называемой полной проблемой собственных значений (отыскание всех собственных значений и отвечающих им собственных векторов заданной матрицы), т.к. намного удобнее вычислить предел некоторых числовых последовательностей без предварительного определения коэффициентов характеристического многочлена.
Преимуществом итерационных методов является удобное применение в современной вычислительной технике, т.к. решения, полученные с помощью прямых методов обычно содержат погрешность. Итерационные методы же позволяют получить решение данной системы с заранее определенной погрешностью. Явным преимуществом является значительное превосходство над точные методы по скорости и удобнее реализуются на практике.
1. Основные понятия
Системой линейных алгебраических уравнений (далее СЛАУ), содержащей m уравнений и n неизвестных, называется система вида:
,
Здесь x1, x2, …, xn -- неизвестные, которые надо определить. a11, a12, …, amn -- коэффициенты системы -- и f1, f2, … fm -- свободные члены -- предполагаются известными. Индексы коэффициентов (aij) системы обозначают номера уравнения (i) и неизвестного (j), при котором стоит этот коэффициент, соответственно.
Такую систему удобно записывать в матричном виде:
A•X=F (1.1)
Понимая под А основную матрицу системы
А под X и F вектор-столбцы вида
,
Первый из которых подлежит определению, а второй задан.
2. Метод простых итераций (метод Якоби)
Рассмотрим квадратную систему линейных уравнений с вещественными коэффициентами, которую запишем в матричном виде (1.1).
Предполагая однозначную разрешимость системы (1.1), заменим матричное уравнение эквивалентным ему уравнением:
,(2.1)
где ф - вещественное число, называемое стационарным параметром. С помощью (2.1) составим итерационную последовательность векторов , определив её рекуррентно:
(k = 0,1,2,…..) (2.2)
при произвольном выборе нулевого приближения.
Таким образом, метод простой итерации сводится к замене точного решения системы (1.1) k - ой итерацией с достаточно большим номером k.
Графически метод Якоби можно представить следующим образом:
Оценим погрешность метода простой итерации. Очевидно, что
,(2.3)
где Е - единичная матрица
Рис. 1. Схема выполнения метода Якоби
Введем в рассмотрение норму вектора в пространстве и операторную норму квадратной матрицы порядка . Назовем нормой вектора число , равное длине вектора. Назовем операторной нормой произвольной матрицы число , равное либо точной верхней грани отношения на множестве всех ненулевых векторов , либо (что одно и то же) точной верхней грани норм на множестве всех векторов , имеющих единичную норму. Т.е по определению
.(2.4)
Из (2.4) вытекает неравенство, справедливое для любой матрицы и любого вектора :
.(2.5)
Из матричного уравнения погрешности (2.3) и неравенства (2.5) получаем, что для любого номера :
.(2.6)
Теорема 2.1. Для того, чтобы итерационная последовательность (2.2) при любом выборе начального приближения и при данном значении параметра сходилась к точному решению системы (1.2), достаточно, чтобы было выполнено условие
.(2.7)
При этом итерационная последовательность сходится со скоростью геометрической последовательности со знаменателем .
В случае если матрица является симметричной, условие является необходимым условием сходимости итерационной последовательности при любом выборе нулевого приближения.
Для практических же целей недостаточно установить факт сходимости последовательности итераций. Центральным вопросом является оценка скорости сходимости. Очень важно знать, как наилучшим способом распорядиться стационарным параметром для того, чтобы получить наиболее быструю сходимость.
Пусть задана точность - точность, с которой необходимо получить решение системы. Требуется найти итерацию с таким номером , для которого
.(2.8)
Из (2.6) и Теоремы 2.1 следует, что , и (2.8) выполняется при условии , т.е при . Отсюда видно, что для уменьшения числа итераций , достаточных для достижения заданной - точности, следует выбрать параметр так, чтобы получить минимум функции .
Считая матрицу симметричной и положительно определенной, мы приходим к следующей задачей оптимизации: найти минимум функции
.
3. Общий неявный метод простой итерации
Рассмотренный в предыдущем пункте метод Якоби получается из неявного метода в частном случае с заменой матрицы В единичной матрицей Е(nЧn)
Неявный метод простой итерации заключается в замене итерационной последовательности (1.1) более общей последовательностью, определяемой соотношением:
(3.1)
Где матрица В представляет собой некоторую «легкообратимую» квадратную матрицу порядка n, а ж - стационарный параметр.
Теорема 3.1 (Теорема А.А. Самарского). Пусть матрица является симметричной и положительно определенной, а матрица положительно определенной. Тогда для того, чтобы итерационная последовательность
(3.2)
при любом выборе нулевого приближения сходилась к точному решению системы , достаточно, чтобы были выполнены условия
(3.3)
При дополнительно предположении о том, что матица является симметричной, условие (3.3) не только достаточно, но и необходимо для сходимости указанной итерационной последовательности с любым нулевым приближением .
Перейдем теперь к оценке сходимости общего неявного метода простой итерации. Для этого выясним вопрос о выборе стационарного параметра , обеспечивающего наиболее быструю сходимость последовательности.
Предположим, что является симметричной и положительно определенной. С помощью таких матриц естественно ввести так называемое «энергетическое скалярное произведение» двух произвольных векторов и , положив его равным Такое скалярное произведение будем обозначать . С помощью матрицы это скалярное произведение можно записать в виде
С помощью последнего равенства легко проверяется справедливость для введенного нами скалярного произведения четырех аксиом скалярного произведения.
Далее естественно ввести «энергетическую норму» вектора , положив ее равной . Эту энергетическую норму обозначим как .
Две различных нормы одной и той же системы векторов и называются эквивалентными, если существуют такие положительные постоянные и , что справедливы неравенства
.(3.4)
Энергетическая и обычная нормы вектора являются эквивалентными, а это позволяет утверждать, что последовательность сходится к нулю тогда и только тогда, когда сходится к нулю последовательность . Для дальнейших же рассуждений энергетическая форма более удобна.
Теорема 3.2. Пусть матрица и симметричны и положительно определены, - погрешность общего неявного метода простой итерации. Тогда для того, чтобы при было справедливо неравенство
,
необходимо и достаточно, чтобы было выполнено следующее условие
(3.5)
Применим Теорему 3.2. для нахождения значения стационарного параметра , при котором скорость сходимости будет максимальной. Как уже было сказано выше, для этого необходимо найти минимум функции
Так как обе матрицы и являются симметричными и положительно определенными, то существуют такие постоянные и , что справедливы неравенства . Будем считать, что постоянные и в этих неравенствах нам заданы. Сопоставляя это неравенство с условием (3.5), мы получим, что минимальное значение достигается при условии
,
откуда получаем, что оптимальное значение параметра и минимальное значение .
4. Модифицированный метод простой итерации
Модифицированный метод получается из общего неявного метода простой итерации при следующих условиях:
ж=1, ,
тогда получаем:
D(Xk+1-Xk)+AXk=F
При этом матрица А - симметричная, все её диагональные элементы - положительны)
Из теоремы Самарского вытекает, что для сходимости модифицированного метода простой итерации можно записать в форме:
,
Так как , то достаточное условие сходимости можно переписать в эквивалентном виде:
Переходи в данном условии к кубическим и октаэдрическим нормам получим следующие два условия, каждое из которых является достаточным для сходимости модифицированного метода простой итерации
, (для i=1,2,…,n)
, (для j=1,2,…,n)
итерация линейный алгебраический вещественный
5. Метод Гаусса-Зейделя
Рассмотрим еще один итерационный метод решения систем линейных алгебраических уравнений. Метод Гаусса-Зейделя заключается в последовательном выражении неизвестных. Этот метод является одним из самых распространенных и наиболее легко программируемых.
Пусть задана СЛАУ
(5.1)
Предположим, что диагональные элементы не нулевые (в противном случае можно переставить уравнения). Выразим неизвестные из каждого уравнения:
(5.2)
Зададим некоторые начальные (нулевые) приближения значений неизвестных: , подставляя эти приближения в первое уравнение системы (5.2) , получим новое (первое) приближение для
Используя это значение и нулевые приближения для других неизвестных получим новое приближение для и т.д. до .
На этом заканчивается первая итерация решения системы. Используя теперь полученные приближения таким же образом проводи вторую итерацию.
Итерационный процесс продолжается до тех пор, пока значения неизвестных не станут отличаться от предыдущих приближений на .
Для сходимости итерационного процесса достаточно, чтобы модули диагональных коэффициентов для каждого уравнения системы были не меньше сумм модулей всех остальных коэффициентов (преобладание диагональных коэффициентов):
При этом хотя бы для одного уравнения это неравенство должно выполняться строго. Эти условия являются достаточными для сходимости метода, но не являются необходимыми, т.е. для некоторых систем метод сходится и при нарушении условий.
Графически метод Зейделя можно представить следующим образом:
Рис. 2. Схема выполнения метода Гаусса-Зейделя
6. Метод верхней релаксации
Среди явных одношаговых итерационных методов наибольшее распространение получил метод верхних релаксаций. Это связано с тем, что метод верхних релаксаций содержит свободный параметр , изменяя который можно получать различную скорость сходимости итерационного процесса.
Наиболее эффективно этот метод применяется при решении множества близких алгебраических систем линейных уравнений. На первом этапе проводится решение одной из систем с различными значениями итерационного параметра и из анализа скорости сходимости итерационного процесса выбирается оптимальное значение этого параметра. Затем все остальные системы решаются с выбранным значением .
Метод верхней релаксации является обобщением метода Зейделя. В координатной форме метод верхней релаксации имеет следующий вид
,
При этот метод совпадает с методом Зейделя.
В методе верхней релаксации параметр щ выбран так, чтобы являлось наименьшим наибольшее по модулю собственное значение матрицы E-щ(D+щL)-1A? Осуществляющей переход от k-oй итерации к (k+1)-й.
Если матрица А является симметричной и положительно определенной, то для сходимости метода верхней релаксации достаточно, чтобы было выполнено условие 0<щ<2
7. Итерационный метод П.Л. Чебышева
Итерационный метод П.Л. Чебышева подразумевает под собой рассмотрение более общего случая при решении СЛАУ, когда в указанном методе значения итерационного параметра ж зависят от номера k итерации. В таком случае последовательность итераций будет определяться соотношением:
Найдутся такие г1 и г2 такие, что: г1В?А?г2В
Будем считать, что г1 и г2 заданы и равны соответственно наибольшему и наименьшему собственным значениям АХ=лВХ.
Оценим
Сделаем замену: Zk=B-1/2•Vk
Соотношение погрешности при такой замене будет иметь вид:
Vk+1=(E-жk+1C)•Vk (k=0,1,2,..), где С=В-1/2•A•B-1/2
Оценим :
Тогда из равенства
= => <qk,
Где qk=
Отсюда получаем, что итерационный процесс П.Л.Чебышева сходится при условии, что последовательность { qk }>0
Поскольку каждое значение qk является функцией параметров ж1, ж2, …, жk возникает задача построения оптимального набора итерационных параметров из условия минимума qk для фиксированного k.
Поскольку все лs лежат на отрезке [г1, г2], то расширяя область, по которой берется максимум, мы получим:
Полученная задача имеет более простое решение.
Положим P(t)= и P(0)=1.
Сделаем замену:
,
Где
Используем полином Чебышева
Pk(S)=Tk(S)•[Tk(S0)]-1, где
.
Так как max|S|?1|Tk(S)|=1, то
Исходя из равенства
И приравнивая корни полиномов, стоящих в правой и левой части этого равенства, получим оптимальные значения итерационных параметров:
Итерационный процесс с указанным оптимальным набором параметров называется чебышевским.
Теорема 7.1. Если матрицы А и В симметричны и положительно определены и если г1В?А?г2В, то чебышевский итерационный процесс сходится и для погрешности Zk после выполнения k итераций справедлива оценка:
<qk, где
8. Решение полной проблемы собственных значений. Метод вращений
Большое число научно-технических, экономических и других задач, а также потребности самой вычислительной математики приводят к вопросу нахождения собственных чисел и собственных векторов матриц, т.е. отыскание таких значений л, для которых существуют решения системы алгебраических уравнений (1.1)
Метод вращения позволяет для симметрических матриц решать полную проблему собственных значений.
Отыскание всех собственных значений сводится к отысканию ортогональной матрицы Т такой, что
D=T'AT, (8.1)
где D - диагональная матрица.
Замечание: При ортогональном преобразовании матрицы А сферическая норма этой матрицы не изменяется, следовательно от всех преобразований преобразование (8.1) отличается тем, что делает максимальной сумму квадратов диагональных элементов преобразованной матрицы и минимальной - сумму квадратов всех внедиагональных элементов.
Методом вращения называется итерационный метод, при котором матрица Т находится как предел бесконечного произведения элементарных матриц вращения, каждая из которых имеет вид:
(8.2)
В целом метод вращений состоит в построении последовательности матриц А1, А2, …, Av, Av+1, …, каждая последующая из которых получается из предыдущей при помощи элементарного шага вида Av+1=T'ijAvTij.
Рассмотрим один такой шаг, осуществляемый матрицей (8.1)
(8.3)
Из соотношений (8.3) и из условия симметричности матрицы А вытекает следующее равенство:
(8.4)
Из равенства (8.4) вытекает, что для максимального уменьшения суммы квадратов всех внедиагональныхэлементов необходимо матрицу (8.2) выбрать так, чтобы выполнялось:
1) ,
2) (8.5)
Таким образом, метод вращений состоит в построении последовательности матриц, каждая следующая из которых получается из предыдущей посредством ортогональных преобразований Av+1=T'ijAvTij, в которых Tij выбирается так, чтобы были выполнены равенства (8.5)
Метод вращений сходится.
9. Применение итерационных методов
Покажем применение итерационных методов на конкретном примере.
Пример 1. Решение системы линейных уравнений методом Якоби.
Пусть дана система уравнений:
Требуется найти решение системы с точностью
Приведем систему к виду удобному для итерации:
Выберем начальное приближение, например
- вектор правой части.
Тогда первая итерация получается так:
Аналогично получаются следующие приближения к решению.
, ,
Найдем норму матрицы В. Будем использовать норму
Так как сумма модулей элементов в каждой строке равна 0.2, то = 0.2 < 1/2, поэтому критерий окончания итераций в этой задаче
Вычислим нормы разностей векторов:
,
Так как заданная точность достигнута на четвертой итерации.
Ответ: x 1 = 1.102, x 2 = 0.991, x 3 = 1.101
Пример 2. Решение систем линейных уравнений методом Зейделя.
Рассмотрим параллельно решение 3-х систем уравнений:
, ,
Приведем системы к виду удобному для итераций:
, ,
Заметим, что условие сходимости выполнено только для первой системы. Вычислим 3 первых приближения к решению в каждом случае.
1-ая система.
, , ,
Точное решение здесь x 1 = 1.4, x 2 = 0.2. Итерационный процесс сходится.
2-ая система.
, , ,
итерационный процесс разошелся. Точное решение x 1 = 1, x 2 = 0.2.
3-я система.
, , ,
итерационный процесс зациклился.
Точное решение x 1 = 1, x 1 = 2.
Заключение
Итерационные методы решения СЛАУ используются для решения СЛАУ большой размерности с разреженными матрицами, а также для уточнения решения СЛАУ, полученного с помощью любого прямого метода. Формулировка и применение итерационных методов требует определенных знаний и определенного опыта. Выбор эффективного итерационного метода решения конкретной задачи существенно зависит от ее характерных свойств. Поэтому никаких общих правил выбора наилучшего итерационного метода решения не существует.
Оптимальным же является комплексное применение методов решения СЛАУ, т.е. получение приближенного решения с помощью прямого метода и последующего уточнения решения с помощью итерационных методов.
Библиографический список
1. Турчак Л.И., Плотников П.В. Основы численных методов: Учебное пособие. - 2-е изд., перераб. и доп. - М.:ФИЗМАТЛИТ, 2003. - 304 с.
2. Бояршинов М.Г. Численные методы. Часть 1: Учебное пособие для студентов направления «Прикладная математика и информатика». - Перм. Гос. Техн. Ун-т. Пермь, 1998. - 176 с.
3. Ильин В.А., Позняк Э.Г. Линейная алгебра: Учеб. Для Вузов. - 5-3 изд. - М.:ФИЗМАТЛИТ, 2002. - 320 с.
4. Самарский А.А., Гулин А.В. Численные методы: Учеб. Пособие для вузов. - М.: Наука. Гл. ред физ.-мат. Лит-ры, 1989. - 432 с.
5. Калиткин Н.Н. Численные методы. - М.: Наука. Гл. ред. физ.-мат. Лит-ры, 1978. - 512с.
6. Масловская Л.В., Масловская О.М. Численные методы: Учеб.пособие - Одесса, Укрполиграф, 2006. - 146 с.
7. Письменный Д.Т. Конспект лекций по высшей математике. 1часть. -5 изд. - М,: Айрис-пресс, 2005. - 288 с.
8. Канатников А.Н., Крищенко А.П. Линейная алгебра. 3-е изд., стер. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2002 -- 336 с. (Сер. Математика в техническом университете. Вып. IV)
Размещено на Allbest.ru
...Подобные документы
Сущность итерационного метода решения задачи, оценка его главных преимуществ и недостатков. Разновидности итерационных методов решения систем линейных алгебраических уравнений: Якоби, Хорецкого и верхней релаксации, их отличия и возможности применения.
курсовая работа [39,2 K], добавлен 01.12.2009Характеристика и использование итерационных методов для решения систем алгебраических уравнений, способы формирования уравнений. Методы последовательных приближений, Гаусса-Зейделя, обращения и триангуляции матрицы, Халецкого, квадратного корня.
реферат [60,6 K], добавлен 15.08.2009Решение задач вычислительными методами. Решение нелинейных уравнений, систем линейных алгебраических уравнений (метод исключения Гаусса, простой итерации Якоби, метод Зейделя). Приближение функций. Численное интегрирование функций одной переменной.
учебное пособие [581,1 K], добавлен 08.02.2010Метод последовательного исключения неизвестных (метод Гаусса) при решении задач аппроксимации функции в прикладной математике. Метод Гаусса с выбором главного элемента и оценка погрешности при решении системы линейных уравнений, итерационные методы.
контрольная работа [94,4 K], добавлен 04.09.2010Метод Зейделя как модификация метода простой итерации. Особенности решения систем линейных алгебраических уравнений. Анализ способов построения графика функций. Основное назначение формул Симпсона. Характеристика модифицированного метода Эйлера.
контрольная работа [191,3 K], добавлен 30.01.2014Методы решения систем линейных алгебраических уравнений (СЛАУ): Гаусса и Холецкого, их применение к конкретной задаче. Код программы решения перечисленных методов на языке программирования Borland C++ Builder 6. Понятие точного метода решения СЛАУ.
реферат [58,5 K], добавлен 24.11.2009Рассмотрение систем линейных алгебраических уравнений общего вида. Сущность теорем и их доказательство. Особенность трапецеидальной матрицы. Решение однородных и неоднородных линейных алгебраических уравнений, их отличия и применение метода Гаусса.
реферат [66,4 K], добавлен 14.08.2009Понятие и специфические черты системы линейных алгебраических уравнений. Механизм и этапы решения системы линейных алгебраических уравнений. Сущность метода исключения Гаусса, примеры решения СЛАУ данным методом. Преимущества и недостатки метода Гаусса.
контрольная работа [397,2 K], добавлен 13.12.2010Суть метода Зейделя. Расчет разностных схемам относительно неизвестной сеточной функции. Параллельное решение систем линейных алгебраических уравнений. Процедура построения параллельного алгоритма Зейделя. Оценка ускорения представленного алгоритма.
контрольная работа [98,1 K], добавлен 09.01.2011Задачи вычислительной линейной алгебры. Математическое моделирование разнообразных процессов. Решение систем линейных алгебраических уравнений большой размерности. Метод обратной матрицы и метод Гаусса. Критерии совместности и определенности системы.
курсовая работа [220,0 K], добавлен 21.10.2011Анализ метода простой итерации для решения систем линейных алгебраических уравнений и реализация его в виде двух программ, каждая из которых использует свой собственный способ перехода от системы одного вида к другому. Программные и технические средства.
курсовая работа [497,8 K], добавлен 27.03.2011Параллельные методы решения систем линейных уравнений с ленточными матрицами. Метод "встречной прогонки". Реализация метода циклической редукции. Применение метода Гаусса к системам с пятидиагональной матрицей. Результаты численного эксперимента.
курсовая работа [661,7 K], добавлен 21.10.2013Понятие матрицы. Метод Гаусса. Виды матриц. Метод Крамера решения линейных систем. Действия над матрицами: сложение, умножение. Решение систем линейных уравнений методом Гаусса. Элементарные пребразования систем. Математические перобразования.
лекция [45,4 K], добавлен 02.06.2008Основные понятия и теоремы систем линейных уравнений, характеристика методов их решения. Критерий совместности общей системы. Структура общих решений однородной и неоднородной систем. Матричный метод решения и обобщение. Методы Крамера и Гаусса.
курсовая работа [154,5 K], добавлен 13.11.2012Анализ методов решения систем нелинейных уравнений. Простая итерация, преобразование Эйткена, метод Ньютона и его модификации, квазиньютоновские и другие итерационные методы решения. Реализация итерационных методов с помощью математического пакета Maple.
курсовая работа [820,5 K], добавлен 22.08.2010Сравнительный анализ численных методов решения систем линейных алгебраических уравнений. Вычисление определителей и обратных матриц. Реализация методов в виде машинных программ на языке высокого уровня и решение задач на ЭВМ. Модификации метода Гаусса.
реферат [85,2 K], добавлен 04.03.2011Изучение основ линейных алгебраических уравнений. Нахождение решения систем данных уравнений методом Гаусса с выбором ведущего элемента в строке, в столбце и в матрице. Выведение исходной матрицы. Основные правила применения метода факторизации.
лабораторная работа [489,3 K], добавлен 28.10.2014Исследование метода квадратных корней для симметричной матрицы как одного из методов решения систем линейных алгебраических уравнений. Анализ различных параметров матрицы и их влияния на точность решения: мерность, обусловленность и разряженность.
курсовая работа [59,8 K], добавлен 27.03.2011Решение задач систем линейных алгебраических уравнений, матричных уравнений, методы Гаусса и Кремера. Нахождение длины и координат вектора и исчисление его скалярного произведения. Уравнение прямой и определение координат точек неравенства; пределы.
контрольная работа [220,9 K], добавлен 06.01.2011Структура и элементы, принципы формирования и правила разрешения систем линейных алгебраических уравнений. История развития различных методов решения: матричного, Крамера, с помощью функции Find. Особенности применения возможностей программы Mathcad.
контрольная работа [96,0 K], добавлен 09.03.2016