- •Министерство образования и науки российской федерации
- •Содержание
- •Введение
- •Лабораторная работа № 1 Разработка и отладка линейной программы Задание:
- •Выполнение задания:
- •Лабораторная работа № 2 Разработка и отладка программы с разветвлениями Задание на лабораторное занятие
- •Выполнение задания
- •Лабораторная работа № 3 Разработка и отладка циклической программы Задание на лабораторное занятие
- •Выполнение задания
- •Лабораторная работа № 4
- •Разработка и отладка
- •Сложной циклической программы
- •Задание на лабораторное занятие
- •Выполнение задания
- •Лабораторная работа № 5 Разработка и отладка программы для работы с файлами Задание на лабораторное занятие
- •Выполнение задания
- •Лабораторная работа № 6 Разработка и отладка программы для работы с графикой Задание на лабораторное занятие
- •Выполнение задания
- •Лабораторная работа № 7 Разработка и отладка программы для работы с графикой в статике Задание на лабораторное занятие
- •Выполнение задания
- •Лабораторная работа № 8 Разработка и отладка программы для работы с графикой в динамике Задание на лабораторное занятие
- •Выполнение задания
- •Методические рекомендации По разработке программы
- •5. Трансляция и отладка программы.
- •К лабораторной работе №1
- •К лабораторной работе № 2
- •К лабораторной работе № 3
- •К лабораторной работе № 4
- •Исходная последовательность
- •Отсортированная по возрастанию
- •Программа разложения числа на простые сомножители
- •Делителями числа 28 являются 1, 2, 4, 7, 14.
- •Программа вычисления таблицы значений функции 2-х переменных
- •Программа построения таблицы сложных процентов
- •Программа сложения столбцов определителя
- •Вариант 25
- •Вариант 26
- •Вариант 27
- •Варианты 25-27
- •Вариант 28
- •Вариант 29
- •Вариант 30
- •Варианты 28-30
- •Вариант 31
- •Вариант 36
- •Варианты 34-36
- •Логика цикла
- •Логика цикла
- •К лабораторной работе № 5
- •К лабораторной работе № 6
- •К лабораторной работе № 7
- •К лабораторной работе № 8
- •Косинусоида. Вариант 1
- •Основы программирования на языке basic
- •192171, Г. Санкт-Петербург, ул. Седова, 55/1
Вариант 36
Программа решения системы 2-х уравнений с 2-мя неизвестными
a1x + b1y = h1 Матрица a1 b1 h1
a2x + b2y = h2 коэффициентов a2 b2 h2
Определитель системы
= |
a1 b1 a2 b2 |
x= |
h1 b1 h2 b2 |
y= |
a1 h1 a2 h2 |
= a1h2 – h1a2 |
Если 0 , то x = x / и y = y /
Если = 0 и x 0 или y 0 , то система решений не имеет
Если = x = y = 0 , то система имеет бесчисленное множество решений
Контрольные примеры:
2x + 3y = 8 2x + 3y = 8 2x +3y = 8
7x + 5y = -3 4x + 6y = 10 4x +6y = 16
x = 1 y = 2 Решений нет Бесчисленное множество решений
Варианты 34-36
Оператором DIM объявляются 4 массива: для матрицы коэффициентов, для элементов определителя, для значений определителей 3-го порядка (вариант 35) и определителей 2-го порядка (вспомогательный). Затем организуется двойной (вложенный) цикл для ввода матрицы коэффициентов и вывода ее на экран. Посредством тройного цикла (внешний цикл от 1 до 4, поскольку 4 определителя) осуществляется формирование определителей, вычисляемых подпрограммой вычисления определителя 3-го порядка. К подпрограмме, завершаемой оператором RETURN, обращаются с помощью оператора GOSUB. В подпрограмме осуществляется формирование в цикле операторов 2-го порядка, вычисляемых затем по формуле d = m(1,1)*m(2,2) – m(1,2)*m(2,1). В последнем блоке программы осуществляется анализ полученных решений.
DO
… LOOP WHILE (DO
… LOOP UNTIL)
DO
WHILE … LOOP (DO
UNTIL … LOOP)
Логика цикла
Логика цикла
Таблица 0.4.1.
Оператор и его описание |
DO WHILE i > 10000 i = i +1 LOOP Управляющий оператор цикла, повторяющий блок операторов, пока условие ложно, с проверкой условия в начале. |
DO UNTIL INKEY$ <> "" IF i > 10000 THEN EXIT DO ELSE i = i +1 LOOP Управляющий оператор цикла, повторяющий блок операторов, пока условие истинно, с проверкой условия в начале. Производит увеличение значения счетчика i до тех пор, пока не будет нажата любая клавиша. Предусмотрен досрочный выход из цикла при значении счетчика i > 10000. |
Окончание таблицы 0.4.1.
DO IF i > 10000 THEN EXIT DO ELSE i = i +1 LOOP WHILE INKEY$ = "" Управляющий оператор цикла, повторяющий блок операторов, пока условие ложно, с проверкой условия в конце. Производит увеличение значения счетчика i до тех пор, пока не нажата любая клавиша. Предусмотрен досрочный выход из цикла при значении счетчика i > 10000 |
DO i = i +1 LOOP UNTIL i < 10000 Управляющий оператор цикла, повторяющий блок операторов, пока условие истинно, с проверкой условия в конце. |
PRINT "Нажмите клавишу ESC": DO: LOOP WHILE INKEY$ <> CHR$(27) Пустой цикл, осуществляющий задержку до нажатия клавиши Esc. |
SWAP x( i ), x( j ) Оператор, взаимно меняющий значения двух переменных. |
INKEY$ Функция, читающая символы с клавиатуры. Если символ не был считан, то возвращается нулевая строка. Не дублирует ввод с клавиатуры выводом на экран (без эха). |
CHR$(27) Символьная функция, возвращающая строку из одного символа, ASII-код которого является аргументом, где код – число от 0 до 255. В данном случае аргумент – код клавиши Esc. |
GOSUB 300 Управляющий оператор вызова подпрограммы на строке 300. |
RETURN 10 Управляющий оператор выхода из подпрограммы, возвращающий на строку 10. Если метки нет, то управление возвращается на следующую за GOSUB строку. |