- •Оглавление
- •Введение
- •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.10.5. Вопросы для самопроверки
1. Зачем нужны функции пользователя? Как они определяются?
2. Что такое формальный параметр? Каково соответствие между формальными и фактическими параметрами?
3. В каком месте БЭЙСИК-программы должен находиться оператор DEF?
4. Каким образом должна быть оформлена подпрограмма?
5. Чем отличается оператор GOTO от оператора GOSUB?
6. Поясните механизм передачи управления во вложенных циклах?
Лабораторная работа № 1.11 ( C:\USER\GROUP\NOF\lab11.bas )
Программирование цепочек текстовых переменных
1.11.1. Цель работы. Получение практических навыков алгоритмизации и программирования цепочек текстовых переменных при формировании изображения типа “ шахматная доска”.
1.11.2. Справочный материал. В алгоритмическом языке БЭЙСИК наряду с арифметическими константами и переменными используются текстовые константы и переменные. Для описания текстовых величин используется специальный символ $, так например, для описания текстовой переменной А , а также массива T, имеющего 5 компонент, необходимо записать A$ и DIM T$(4).
С текстовыми переменными нужно работать так же, как и с арифметическими, т.е. их можно вычитать, складывать и так далее, тем самым формировать цепочки текстовых переменных разной длины, использовать их в операторах IF, INPUT, READ, PRINT и т. д.
1.11.3. Пример. Подготовить и организовать алгоритм формирования изображения типа “ шахматная доска” по заданному правилу чередования “звездочек”( * ) и пробелов, приведенному ниже. При этом длина текстовой цепочки ( число звездочек и пробелов ) равна 30, а число столбцов и строк в группе соответственно равно 5 и 3:
__________________________________
!*****! !*****! !*****! !
!*****! !*****! !*****! !
!*****! !*****! !*****! !
! !*****! !*****! !***** !
! !*****! !*****! !***** !
! !*****! !*****! !***** !
!*****! !*****! !*****! !
!*****! !*****! !*****! !
!*****! !*****! !*****! !
! !*****! !*****! !***** !
! !*****! !*****! !***** !
! !*****! !*****! !***** !
!_________________________________!
Текст БЭЙСИК-программы алгоритма формирования изображения типа “шахматная доска” с использованием цепочек текстовых переменных приводится ниже:
CLS
10 DIM T$( 2 )
20 FOR I = 0 TO 2
30 READ T$( I ): NEXT I
40 DATA ------------
50 DATA *****
60 DATA ! !
70 S$ = “ “: G$ = “ “: O$ = “ “
80 FOR K = 1 TO 3
90 O$ = O$ + T$( 0 )
100 S$ = S$ + T$( 1 ) +T$( 2 )
110 G$ = G$ + T$( 2 ) +T$( 1 )
120 NEXT K
130 PRINT O$
140 FOR I = 1 TO 2
150 FOR J = 1 TO 3
160 PRINT S$: NEXT J
170 FOR J = 1 TO 3
180 PRINT G$: NEXT J
190 NEXT I
200 PRINT O$
210 END
Итак, в 10-й строке программы описано три элемента текстового массива T$ с номерами: 0, 1, 2.
В 20-60 строках считываются три разных структуры текстовых компонент массива T$, необходимых для формирования рамки и поля “шахматной доски”, а 70 строка необходима для того, чтобы текстовые переменные O$, S$, G$ задать пустыми (“обнулить”). Текстовые переменные T$(1) и T$(2) формируются в цепочки в цикле по k в строках 80-120. При этом T$(1) представляет собой “элементарную ячейку”, состоящую из пяти “звездочек”, а T$(2) имеет пять пробелов, ограниченных по краям восклицательными знаками. Компонента T$(0) состоит из двенадцати минусов (5 +5 +2) и формирует рамку доски (верхнюю кромку в 130 строке, а нижнюю - в 200-й).
1.11.4. Задание к лабораторной работе. Подготовить и организовать на ПЭВМ алгоритм формирования изображения типа “шахматная доска” по заданному правилу чередований звездочек и пробелов согласно табл. 1.11.1.
Таблица 1.11.1
Номер варианта |
Длина текстовой цепочки |
Число столбцов в группе |
Число строк в группе
|
1 |
18 |
3 |
3 |
2 |
24 |
3 |
3 |
3 |
24 |
4 |
4 |
4 |
30 |
5 |
4 |
5 |
20 |
5 |
5 |
6 |
16 |
2 |
3 |
7 |
20 |
2 |
2 |
8 |
32 |
4 |
5 |
9 |
24 |
6 |
5 |
10 |
24 |
3 |
3 |
11 |
24 |
3 |
5 |
12 |
32 |
8 |
7 |
13 |
20 |
10 |
10 |
14 |
28 |
7 |
7 |
15 |
18 |
9 |
8 |