КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Решение систем линейных уравнений
Поиск минимального и максимального элементов массива Вычисление сумм элементов массивов Задача 9.4.5. Вычислить сумму элементов одномерного массива. Решение. S=0 FOR j = 1 TO n S=S+ A(i) NEXT j PRINT S Задача 9.4.6. Вычислить сумму нечетных элементов двухмерного массива. Решение. Элемент массива считается четным, если сумма его индексов четная, и наоборот – элемент массива считается нечетным, если сумма индексов элемента массива нечетная. Например, A(0,0), A(1,5) – четные элементы массива, а элементы А(0,1), А(4,7) – нечетные. Поэтому для определения суммы нечетных элементов массива необходимо в цикле подсчитывать сумму индексов элемента массива и проверять, является эта сумма четной или нечетной. Для проверки четности суммы индексов можно использовать арифметический оператор MOD (см. раздел 7.1.4.). S=0 FOR i = 1 TO n FOR j = 1 TO m k=i+j IF k MOD 2 <>0 THEN S=S+ A(i, j) NEXT j NEXT i PRINT S Задача 9.4.7. Найти максимальный и минимальный элементы одномерного массива. Решение. При поиске минимального и максимального значений элементов массива в качестве начального значения вспомогательным переменным Amax и Amin необходимо присвоить значение любого элемента массива, например, нулевого: Amax=A(0): Amin=A(0) FOR i = 1 TO n IF A(i)>Amax THEN Amax=A(i) IF A(i)<Amin THEN Amin=A(i) NEXT i PRINT “Amax =“;Amax, “Amin=”;Amin
Сортировка массивов Одной из операций с массивами является сортировка данных. Известно много различных способов сортировки массивов. Однако, независимо от используемого способа в программе осуществляется сравнение текущего элемента массива с другим элементом этого же массива и, в зависимости от результатов сравнения, осуществляется обмен данными между этими элементами. Qbasic имеет полезную функции SWAP, которая предназначена для обмена значениями двух переменных. Самая простая процедура сортировки – перебор. FOR = i=1 To n - 1 FOR j = i + 1 To n IF A(j) < A(i) THEN SWAP A(i), A(j) NEXT j NEXT i Приведенная процедура обеспечивает сортировку по возрастанию значения элементов массива. Для сортировки элементов массива по убыванию их значений достаточно поменять знак отношения в третьей строке.
Системой линейных уравнений с n неизвестными x1, х2,..., хn называется система вида: (9.4.27) Здесь aij — коэффициенты при неизвестных, ai,n+1 — свободные члены. Индекс i означает номер уравнения, j — номер неизвестного. Решением системы (9.4.27) называется совокупность таких значений переменных с1,..., сn , при подстановке которых в данную систему каждое уравнение системы обращается в числовое равенство. Система уравнений называется совместной, если она имеет хотя бы одно решение, и несовместной, если она не имеет ни одного решения. Две системы уравнений называются эквивалентными, если множество их решений совпадают. Преобразования, переводящие одну систему в эквивалентную ей систему, называются эквивалентными. Перестановка двух уравнений системы, умножение уравнения системы на любое число, отличное от нуля, прибавление к уравнению другого уравнения, умноженного на любое число, отличное от нуля, являются эквивалентными преобразованиями. Одним из распространенных методов решения систем линейных уравнений является метод Гаусса (метод исключений). Методом Гаусса получают аналитические выражения для вычисления точных значений переменных. В основе метода лежит прием последовательного исключения переменных для получения эквивалентной треугольной или трапецеидальной системы уравнений. Для решения системы уравнений методом Гаусса с использованием ЭВМ необходимо на основании исходной системы уравнений (9.4.27) составить матрицу коэффициентов и свободных членов - расширенную матрицу. Рассмотрим пример решения системы методом Гаусса на основе системы третьего порядка. Составим расширенную матрицу: a11 a12 a13 b1 a21 a22 a23 b2 (9.4.28) a31 a32 a33 b3 Прямой ход. Сначала с помощью первого уравнения исключается х1 из второго и третьего уравнений. Для этого каждый элемент первой строки разделим на коэффициент а11, умножим на коэффициент а21 и вычтем полученные значения из соответствующих элементов второй строки: a’22=а22 – a12/a11*a21, a’23=а23 – a13/a11*a21, b’2=b2– b1/a11*a12 а’32 =а32 – a12/a11*a32, а’33 =а33 – a13/a11*a33, b’3=b3– b1/a11*a13 или в общем виде: aij=aij – ai1/a11*a1j i = 2, 3, j = 2, 3 bi = bi – b1/a11*a1i, i = 2,3. Аналогично с помощью второго уравнения исключается х2 из третьего уравнения: а’’32 =а’32 – a’22/a’22*a’32, а’’33 =а’33 – a’23/a’22*a’33, b’’3=b’3– b’2/a’22*a’23 В результате получим треугольную матрицу: a11 a12 a13 b1 0 a’22 a’23 b’2 0 a’’23 a’’33 b’’3 Обратный ход. Обратный ход начинается с решения третьего уравнения системы: x3 = b’’3/a’’33. Используя это значение можно найти х2 из второго уравнения, а затем х1 из первого уравнения: x2=(b’2 - a’23*x3)/a’22; x1=(b1 - a12*x2 - a13*x3)/a11. В данном примере предполагалось, что все коэффициенты матрицы не нулевые. На практике необходимо проверять, чтобы элемент матрицы, на который производится деление не был нулевым. Если ведущий элемент матрицы равен нулю, то необходимо сделать перестановку строк матрицы. Известны численные методы решения систем линейных уравнений, например метод простых итераций. Численные методы дают приближенное решение системы уравнений. Однако при большом числе переменных, например п > 100, сложность метода итераций меньше сложности метода Гаусса.
Дата добавления: 2014-01-06; Просмотров: 256; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |