
- •Федеральное агентство воздушного транспорта
- •Введение
- •Работа в интегрированной среде Qbasic(версияqb45) Начальная информация о системе QuickBasic
- •Загрузка системы QuickBasic
- •Текстовый редактор системы qbasic
- •Выполнение программы
- •Создание и Сохранение программы - команды меню File (Файл)
- •Запуск и перезапуск программы - Команды меню Run (Запуск)
- •Отладка программы
- •Подсистема помощи – help (Справка)
- •Использование окна «Immediate» (Немедленно)
- •ЛАбораторная Работа № 9. Программирование линейных алгоритмов
- •Способы описания типа данных в Qbasic
- •Ввод данных
- •1) Input a, b, c - оператор ввода данных в диалоговом режиме, где a, b, c - список имен переменных
- •Выполнение вычислений
- •Наиболее часто используемые функции языка Qbasic
- •Вывод данных и результатов
- •Лабоpатоpное задание
- •Лабораторное задание
- •Первоначальный вход в цикл выполняется через блок подготовки;
- •Сложные циклы
- •Лабораторное задание
- •Вариант №5
- •Вариант №6
- •Вариант №7
- •Вариант №8
- •Вариант №9
- •Вариант №10
- •Вариант №11
- •Вариант №12
- •Вариант №13
- •Вариант №14
- •Лабораторная работа № 12 Работа с одномерными массивами
- •Лабораторное задание
- •Лабораторное задание
- •Работа со строками. Строковые операции
- •Строковые функции и операторы
- •Лабораторное задание
- •Функции и операторы графического режима
- •Лабораторное задание
Лабораторное задание
Набрать, отладить и выполнить программы обработки двумерных массивов Вашего индивидуального задания.
Составить блок-схему.
Проанализировать работу операторов, пользуясь отладочными режимами.
Составить отчет. Защитить работу.
Лабораторная работа состоит из двух задач. Студент выбирает из списка заданий свой индивидуальный вариант и выполняет его. В заданиях исходную матрицу получить с помощью датчика случайных чисел. Значения буквенных переменных задавать с клавиатуры.
Вариант №1
Задание № 1.
Дана матрица целых чисел размером nхm. Найти в ней минимальный элемент и определить его местоположение (номер строки и номер столбца). Если таких элементов несколько, то вывести на экран положение каждого из них.
Задание № 2.
Дана матрица целых чисел размером nхm. Вычислить и вывести значение суммы максимальных элементов из каждой строки.
Вариант №2
Задание № 1.
Дана матрица целых чисел размером nхm. Определить местоположение максимального и минимального элементов матрицы (номер строки и номер столбца), получить разность этих элементов.
Задание № 2.
Дана матрица целых чисел размером nхm. Вычислить и вывести значение суммы минимальных элементов из каждого столбца.
Вариант №3
Задание № 1.
Дана матрица целых чисел размером nхm. Получить одномерный массив, элементы которого – суммы элементов соответствующих столбцов исходной матрицы.
Задание № 2.
Дана матрица целых чисел размером nхm. Получить новую матрицу, элементы строк которой больше элементов исходной матрицы на величину максимального элемента соответствующей строки исходной матрицы.
Вариант №4
Задание № 1.
Дана матрица целых чисел размером nхm. Получить одномерный массив, элементы которого – произведения элементов соответствующих столбцов исходной матрицы.
Задание № 2.
Дана матрица целых чисел размером nхm. Найти максимальный элемент матрицы и его местоположение. Подсчитать и вывести количество элементов матрицы, равных максимальному.
Вариант №5
Задание № 1.
Дана матрица целых чисел размером nхm. Получить одномерный массив, элементы которого – минимальные элементы соответствующих столбцов исходной матрицы.
Задание № 2.
Дана квадратная матрица целых чисел размером nхn. Вычислить скалярное произведение строки с максимальным элементом и столбца с минимальным элементом матрицы.
Вариант №6
Задание № 1.
Дана матрица целых чисел размером nхm. Получить одномерный массив, элементы которого – максимальные элементы соответствующих строк исходной матрицы.
Задание № 2.
Дана матрица целых чисел размером nхm. Получить новую матрицу, элементы столбцов которой больше элементов исходной матрицы на величину минимального элемента соответствующего столбца исходной матрицы.
Вариант №7
Задание № 1.
Дана матрица целых чисел размером nхm. Найти максимальный элемент матрицы, начиная со следующего, все элементы матрицы увеличить на величину найденного элемента.
Задание № 2.
Дана матрица целых чисел размером nхm. Вычесть поэлементно из каждого столбца, кроме i-го, i-й столбец.
Вариант №8
Задание № 1.
Дана матрица целых чисел размером nхm. Каждый элемент матрицы возвести в квадрат, к полученному результату прибавить сумму индексов данного элемента.
Задание № 2.
Дана матрица целых чисел размером nхm. Вычесть поэлементно из каждой строки, кроме i-й, i-ю строку.
Вариант №9
Задание № 1.
Дана матрица целых чисел размером nхm. Элементы последней строки прибавить ко всем элементам других строк матрицы.
Задание № 2.
Дана матрица целых чисел размером nхm. Переставляя строки и столбцы, добиться, чтобы максимальный элемент матрицы переместился в левый верхний угол.
Вариант №10
Задание № 1.
Дана матрица целых чисел размером nхm. Найти минимальный элемент матрицы, начиная со следующего, все элементы матрицы уменьшить на величину найденного элемента.
Задание № 2.
Дана матрица целых чисел размером nхm. Найти строку матрицы с минимальной суммой элементов. Вывести номер строки и сумму ее элементов.
Вариант №11
Задание № 1.
Дана матрица целых чисел размером nхm. Переставить строки матрицы таким образом, чтобы элементы в первом столбце были упорядочены по убыванию.
Задание № 2.
Дана матрица целых чисел размером nхm. Найти столбец матрицы с максимальной суммой элементов. Вывести номер столбца и сумму его элементов.
Вариант №12
Задание № 1.
Дана матрица целых чисел размером nхm. Найти максимальный и минимальный элементы матрицы и поменять их местами.
Задание № 2.
Дана матрица целых чисел размером nхm. Найти сумму элементов строки матрицы, в которой расположен максимальный элемент. Если таких элементов несколько, то найти все суммы элементов соответствующих строк.
Вариант №13
Задание № 1.
Дана матрица целых чисел размером nхm. Найти максимальный и минимальный элементы матрицы и вычислить сумму элементов матрицы, расположенных между найденными элементами.
Задание № 2.
Дана квадратная матрица целых чисел размером nхn. Получить сумму положительных элементов матрицы, превышающих по величине среднее арифметическое всех элементов главной диагонали матрицы.
Вариант №14
Задание № 1.
Дана матрица целых чисел размером nхm.Определить сумму элементов матрицы, предшествующих первому отрицательному элементу, если отрицательных элементов в матрице нет, выдать соответствующее сообщение.
Задание № 2.
Дана квадратная матрица целых чисел размером nхn. Зеркально отразить ее элементы относительно горизонтальной оси симметрии.
Лабораторная работа №14 Строковый тип данных.
Цель работы:
Изучение приемов программирования с использованием строковых данных.
Приобретение практических навыков в работе со строковыми данными.
Описание и ввод строковых данных
В языке БЕЙСИК для обработки последовательности символов используется строковый тип данных. Данные строкового типа могут быть строковыми константами и строковыми переменными.
Строковая константа представляет собой произвольную последовательность символов, заключенную в двойные кавычки, длиной до 32567 символов, например, " Hello", "Добрый день".
Строковые переменные бывают переменной или фиксированной длины. Строка переменной длины (STRING ) представляет собой последовательность длиной до 32567 символов из таблицы ASCII. В памяти под такую символьную переменную отводится количество байт равное количеству символов переменной плюс 4. Объявить строковый тип переменной длины можно одним из приведенных ниже способом:
1) явно - с помощью суффикса $: Hello$ = "Привет"
2) явно - с помощью операторов описания типа: DIM Hello AS STRING
3) неявно - с помощью оператора объявления типа данных DEFSTR
Чаще всего используют описание строковых переменных с помощью суффикса, в этом случае строковые переменные сразу видно в тексте программы.
Строка фиксированной длины (STRING * N) представляет собой строку длиной N символов. В памяти под такую символьную переменную отводится N байт. Описать символьную переменную фиксированной длины можно таким образом:
DIM Hello AS STRING*12
Hello = "Привет - Hello"
PRINT " Результат:" ; Hello
На экран будет выведено (учитывая заданную длину строковой константы):
Результат: Привет - Hel
Строковой переменной можно присвоить значение либо с помощью оператора присваивания, например,
St$ ="abcde",
либо с помощью операторов ввода, например:
DATA "abcde"
READ St$
или
INPUT St$
Однако при вводе значения строковой переменной оператором INPUT возникают определенные трудности. Если среди символов вводимой строки встречаются запятые, то запятая воспринимается оператором INPUT, как разделитель. Чтобы обойти эту проблему, предусмотрена модификация оператора INPUT:
LINE INPUT St$
Этот оператор предназначен специально для ввода в одну строковую переменную полной строки текста независимо от ее содержания.