- •Оглавление
- •Введение
- •1. Программирование задач на языке basic
- •Программирование линейных вычислительных процессов
- •1.1.2. Справочный материал.
- •1.1.5. Вопросы для самопроверки
- •1.2.3. Пример:
- •20 Input “a b “ ; a , b input “a b “ ; a , b
- •1.2.4. Задание к лабораторной работе.
- •Определённые циклы
- •1.3.4. Задания к лабораторной работе.
- •Определённые циклы. Суммирование членов функционального ряда
- •Input “X, m%, h% “ ; X , m% , h%
- •1.4.4. Задания к лабораторной работе.
- •Файлы прямого и последовательного доступа
- •Input “X m h “ ; X , m% , h
- •Программирование итерационных вычислительных процессов
- •10 Input "Введите значения X,r,k,e" ; X,r,k,e
- •1.6.5. Вопросы для самопроверки
- •1.7.5. Вопросы для самопроверки
- •Формирование и обработка одномерных массивов
- •1.8.5. Вопросы для самопроверки
- •Формирование двумерных массивов и выполнение операций с матричными элементами
- •160 Next I
- •160 Next j
- •150 Next j
- •1.9.5. Вопросы для самопроверки
- •Программирование сложных программ с использованием подпрограмм
- •40 Read X( I ) : next I
- •45 Data 1, 2.1, -3, -4.1, 1.7, 1.8, 1.9, 14.2, -5, -4.3, 11.2, 10.8
- •140 Return
- •90 Read X( I ) : next I
- •100 Data 1, 2.1, -3, -4.1, 1.7, 1.8, 1.9, 14.2, -5, -4.3, 11.2, 10.8
- •1.10.5. Вопросы для самопроверки
- •Программирование цепочек текстовых переменных
- •1.11.5. Вопросы для самопроверки
- •Литература к главе 1
- •2.1.5. Вопросы для самопроверки
- •Решение нелинейного уравнения графическим методом
- •2.2.5. Вопросы для самопроверки
- •Решение НелинейноГо уравнениЯ МетодОм простых итераций
- •2.3.5. Вопросы для самопроверки
- •Решение нелинейного уравнения методом касательных
- •2.4.3. Пример.
- •2.4.5. Вопросы для самопроверки
- •Решение систем Нелинейных уравнений графическим методом
- •2.5.5. Вопросы для самопроверки
- •Решение систем Нелинейных уравнений методом пРостых итераЦиЙ
- •2.6.3. Пример.
- •2.6.5. Вопросы для самопроверки
- •Численное интегрирование:метод прямоугольников и трапеций, формула симпсона
- •2.7.5. Вопросы для самопроверки
- •Численное решение обыкновеНноГо дифференциального уравнениЯ МетодОм эЙлера и рунге-кутта
- •2.8.5. Вопросы для самопроверки
- •Численное решение систем обыкновеНнЫх дифференциальных уравнениЙ МетодОм эЙлера
- •3. Математическое моделирование на пэвм
- •3.1. Системы тел сосредоточенными массами
- •3.1.1. Математическое моделирование теплообмена для тел сосредоточенных масс с окружающей средой
- •3.1.2. Собственные колебания
- •Лабораторная работа № 3.1 исследование автономной линейной системы уравнений
- •Лабораторная работа № 3.2 исследование автономной нелинейной системы уравнений
- •Лабораторная работа № 3.3 решение жестких систем обыкновенных дифференциальных уравнений (оду)
- •3.1.3. Математическая модель стабильности позвоночника
- •Результаты численных расчетов
- •3.2. Системы с распределенными параметрами
- •3.2.1. Математическое моделирование процесса переноса частиц
- •3.2.2. Математическое моделирование процесса прерванного посола рыбы
- •Отметим, что критерий устойчивости счета методом прогонки к ошибкам округления выполнен, так как
- •Как следует из рекуррентных соотношений (3.2.32), для начала расчета необходимо иметь значения e1 и w1, которые определяются с помощью левого граничного условия (3.2.23)
- •3.2.3. Моделирование процесса переноса частиц на основе гиперболической системы уравнений
- •3.2.4. Математическое моделирование нестационарного двумерного процесса переноса частиц (теплопереноса)
- •Система разностных уравнений (3.2.45) дополнялась начальными и граничными условиями (3.2.40 – 3.2.44) и решалась методом обыкновенной прогонки попеременно в двух направлениях.
- •3.3. Повышение порядка точности аппроксимации дифференциальных уравнений
- •3.3.1. Повышение порядка точности аппроксимации обыкновенных дифференциальных уравнений
- •3.3.2. Повышение порядка точности аппроксимации дифференциальных уравнений гиперболического типа
- •3.4. Интерполяция функций
- •3.4.1. Линейная интерполяция
- •3.4.2. Квадратичная интерполяция
- •3.4.3. Интерполяционная формула Лагранжа
- •3.4.4. Сплайны
- •3.4.5. Алгоритм решения обратных задач по заданным показателям качества
- •Литература к главе 3
1.7.5. Вопросы для самопроверки
1.В чем заключается принцип накопления суммы?
2. Что является условием завершения вычисления суммы числового ряда?
3. Какому оператору передается управление, если условие, проверяемое в условном операторе, выполняется и не выполняется?
4. Приведите примеры использования бесконечных числовых рядов для вычисления функций.
5. Назовите три основных этапа построения алгоритмов вычисления сумм числовых рядов с заданной точностью.
Лабораторная работа № 1.8 (C:\USER\GROUP\NOF\lab8.bas)
Формирование и обработка одномерных массивов
1.8.1. Цель работы. Получение практических навыков алгоритмизации и программирования одномерных массивов по заданным формулам и нахождения максимальных и минимальных значений элементов массивов.
1.8.2. Справочный материал. При описании алгоритмов для ссылки на массивы и компоненты индексированных переменных используют буквы с индексами ( Xi , Xj, Yi , Aj , Zij и т. д. ). Буквы при этом являются наименованиями массивов, а индексы определяют элементы этих массивов. Буква с цифровым индексом указывает конкретный элемент массива , например, Х2 - второй элемент массива Х ; Z23 - элемент массива Z , стоящий на пересечении второй строки и третьего столбца. Размер массива определяется числом его компонент, например, массив Хi : 0,21; -1,7; 3,5; 0,08; 2,76 имеет 5 компонент ( i = 1, 2,...,5 ), при этом Х1 = 0,21; Х2 = -1,7,..., X5 = 2,9. В алгоритмическом языке БЭЙСИК для описания массивов используется оператор DIM (от английского слова DIMENSION - размерность). В данном примере для описания массива Х необходимо записать следующий оператор:
DIM X( 5 ) ( резервирование памяти под 6 чисел , так как Х( 5 ):= Х( 0:5 )).
При формировании одномерного массива ( ряда значений функции) по заданному закону , если аргумент задан своими численными значениями, используется оператор цикла FOR, и значения исходных и искомых переменных изменяются при каждом повторении цикла.
1.8.3. Пример. Подготовить и организовать вычисление на ПЭВМ ряда значений функции Yi по формуле:
Yi = SIN( Qi ) / Qi + Qi / SIN( Qi ) (1.8.1)
и четырех заданных значений аргумента Qi := 0,36; 1,85; 2,14; 3,57 , где i = 1,...,4 ,
а также найти значения максимального и минимального элементов и определить среднее арифметическое значение положительных элементов массива Y.
Алгоритм решения данного примера основывается на циклических расчётах, число повторений которых задано (N = 4). Текст БЭЙСИК - программы алгоритма решения примера (1.8.1) приведен ниже:
10 DIM Q( 4 ) , Y( 4 )
20 REM Ввод элементов исходного массива Q
30 FOR I = 1 TO 4
40 PRINT “ Ввод элемента массива Q( “ ; I ;” ) = “
50 INPUT Q( I ) : NEXT I
60 REM Формирование и печать элементов массива Y
70 FOR I = 1 TO 4
80 A = SIN( Q( I )) / Q( I ) : Y( I ) = A + 1 / A
90 PRINT “Y (“ ; I ;” ) =“; Y( I ): NEXT I
100 REM Нахождение максимального и минимального элементов
массива Y
110 MIN = Y( 1 ) : MAX = Y( 1 )
120 FOR I = 2 TO 4
130 IF Y( I ) < MIN THEN MIN = Y( I ) : J = I
140 IF Y( I ) > MAX THEN MAX = Y( I ) : K = I
150 NEXT I
160 PRINT “Значение миним. эл-та массива Y =“; MIN; ” № эле-
мента =“ ; J
170 PRINT “Значение максим. эл-та массива Y =“;МАХ;” № эле-
мента =“ ; K
180 REM Вычисление среднего арифм. значения полож. элементов
массива Y
190 S = 0 : K = 0
200 FOR I = 1 TO 4
210 IF Y( I ) > 0 THEN S = S +Y( I ) : K = K + 1
220 NEXT I
230 PRINT “Среднее арифм. значение полож. эл-тов массива Y=“ ; S / K
240 END
Ввод данных:
Ввод элемента массива Q( 1 )=? 0,36
Ввод элемента массива Q( 2 )=? 1,85
Ввод элемента массива Q( 3 )=? 2,14
Ввод элемента массива Q( 4 )=? 3,57
Результаты:
Y( 1 ) = 2,00042
Y( 2 ) = 2,44414
Y( 3 ) = 2,93418
Y( 4 ) = -8,71002
Значение миним. эл-та массива Y = -8,71002 № эл-та = 4
Значение максим. эл-та массива Y = 2,93418 № эл-та = 3
Среднее ариф. значение полож. эл-тов массива Y = 2,459579
1.8.4. Задание к лабораторной работе. Подготовить и организовать на ПЭВМ вычисление ряда значений функций Yi для заданных значений аргумента выбираемых из табл. 1.8.1 (вариант соответствует порядковому номеру фамилии студента в списке группы).
Таблица 1.8.1
Номер вари-анта |
Исходная формула |
Значение аргумента |
Дополнительное задание |
|
|
1 |
2 |
3 |
4 |
|
|
1 |
xi : 0,35, 1,8, 2,3, 5,1, 9,6 |
Определить МАХ yi . Число отриц. эл-тов
|
|
||
2 |
ai : 2,7, 3,1, 4,5, 6,8, -6,8 |
Определить МIN bi . Cр. арифм. bi |
|
||
3 |
ti: 10,2, 35, 64, 139, 211, 348 |
Определить МAX zi . Cр. арифм. zi |
|
||
4 |
ai : -0,87, -0.24, 0,93, 1,65 |
Определить МAX yi . Число отриц. эл-тов |
|
||
Продолжение табл. 1.8.1 |
|
||||
1 |
2 |
3 |
4 |
|
|
5 |
bi : 1,5, 2,3, 4,8, 0,44, 1,63, 5,2 |
Определить МIN di и MAX di |
|
||
6 |
yi : 0,24, 0,73, 1,6, 2,7, 3,5, 5,9 |
Определить МAX bi . Cр. арифм. bi
|
|
||
7 |
xi : 1.1, 2.04, 3.6, 4.2, -1.7 |
Определить МIN yi . Cр. арифм. yi
|
|
||
8 |
ci : -0.63, -0.21, 0.34, 1.55, 3.71 |
Определить МIN zi . Число отриц. эл-тов
|
|
||
9 |
bi : 0.2, 1.3, 2.1, 3.5, 4.7, 5.1, 6.8 |
Определить МAX ai . Cр. арифм. ai
|
|
||
10 |
xi : 2.6, 1.7, 3.4, 5.8, 2.7, 4.9, 3.5 |
Определить МIN yi и MAX yi, cр. арифм. yi |
|
||
11 |
xi : 1,4, 2,3, 3,6, 4,2, 5,1, 6,7 |
Определить МAX si . Cр. арифм. si
|
|
||
12 |
si : 0,35, 1,4, 2,7, 4,1, 5,2 |
Определить МAX yi . Число отриц. эл-тов
|
|
||
13 |
ti : 2,5, 0,83, 15, 6,4 |
Определить МIN si . Число отриц. эл-тов
|
|
||
14 |
xi : 1,05, 2,6, 4,2, 5,8, 9,2 |
Определить МAX yi . Cр. арифм. yi
|
|
||
15 |
xi : 0,02, 0,17, 1,75, 31, 2,38 |
Определить МAX zi . Число отриц. эл-тов |
|