Интерактивный ввод информации
ЛАБОРАТОРНАЯ РАБОТА № 2.
ЭЛЕМЕНТЫ ПРОГРАММИРОВАНИЯ
Цель работы–изучение средств системы по формированию массивовструктур, интерактивному вводу информации, записи информации на диск, созданию М-файлов и приобретение практических навыков их использования.
КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
Массивы структур
Обычные массивы удобны при работе с однородными данными – числами или строками. Если данные неоднородные, то для их хранения удобно использовать массив структур, каждый элемент которого является структурой с одинаковым набором полей, содержащих соответствующее значение. Такая информация может быть представлена в виде таблицы с полями, содержащими однотипные элементы.
Например, информация о студентах может быть заключена в структуре со следующими полями:
Фамилия (family), содержит строку с фамилией; Год рождения (year), содержит число;
Оценки (marks), содержит массив из пяти элементов с оценками.
При использовании массивов структур необходимо помнить следущее: Доступ к структурам, входящим в массив, осуществляется при помощи
индексации;
Поле отделяется от имени структуры при помощи точки.
Допускается два способа заполнения массива структур – операторами присваивания для всех полей каждой структуры массива или функцией strict.
Задание 1. Создать третью запись в массиве структурStudent:
Интерактивный ввод информации
Для ввода числовой и символьной информации используется функция input.
Синтаксис
x = input('<приглашение> ')
Задание 2. Ввести матрицу с клавиатуры,для ввода матрицыAзадатьследующую команду:
Задание3. Составить вектор из шести элементов геометрической
прогрессии. Элементы геометрической прогрессии рассчитываются по формуле
Pn = P1*qn–1. Пусть P1 = 3, q = 2, n = 6.
Задание 4. Сформировать структуру,содержащую матрицу размерностью3 3 и ввести две матрицы с клавиатуры; после ввода содержимое массивов структуры вывести на экран.
Оператор if
Оператор if может применяться в простом виде для выполнения блока команд при выполнении некоторого условия или в конструкции if–elseif–else для написания разветвляющего алгоритма:
Синтаксис if <условие>
<операторы MatLab> end
Для ветвления: if <условие>
<операторы MatLab> elseif <условие> <операторы MatLab> elseif <условие> <операторы MatLab> else
<операторы MatLab> end
В зависимости от выполнения того или иного условия работает соответствующая ветвь программы; если все условия неверны, то выполняются команды, размещенные после else.
Задание сложных условий производится с применением логических операторов. Логические операторы и примеры их использования приведены в табл. 2.1.
Задание 5. Организовать цикл для введения вектор-строки из трех целыхчисел. При этом, если введенное значение текущего элемента вектора отрицательно, оно возводится в квадрат, если положительно – в куб.
Задание 6. Ввести с клавиатуры вектор из трех нечетных целых чисел,входящих в диапазон от 5 до 9. В зависимости от значения вводимого элемента должна сгенерироваться матрица размерностью 3 3 со значениями элементов, равными значению вводимого элемента. Если в векторе значение элемента не принадлежит к заданному диапазону, выдается сообщение об ошибке.
Задание 7. Записать матрицу случайных чисел в файл с названиемrand.txtна диск (столбцы в матрице будут отделяться друг от друга вертикальными линиями).
Задание 8. Ввести с клавиатуры в массив структурmasдве матрицы3 3изаписать введенные матрицы в файлы c названиями f1.txt и f2.txt на диск C.\
Задание 9. Создать файл-программу формирования гистограммыраспределения случайных чисел. Закон распределения плотностей вероятности случайных чисел выбирается нажатием соответствующей кнопки:
2. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОГО РЕШЕНИЯ
1. В структуру, содержащую матрицы размерностью 3 3, в цикле – ввести с клавиатуры три матрицы:
Необходимо: вывести введенное содержимое матриц на экран, найти сумму элементов матрицы (если сумма меньше нуля, присвоить ей значение ноль), результат вывести на экран.
2. Сгенерировать матрицу случайных чисел размерностью 5 5. Найти сумму всех ее элементов. В зависимости от значения найденной суммы вывести на экран сообщение: 'Результат положителен' или 'Результат отрицателен'.
3. Организовать цикл для повторного выполнения следующих действий: ввести с клавиатуры целое число в диапазоне от единицы до трех; в зависимости от введенного числа генерировать матрицу размерностью 3 3: для единицы – единичную матрицу, для двойки – нулевую, для тройки – случайных чисел, распределенных по нормальному закону. При вводе других чисел выдать сообщение об ошибке. Полученную матрицу записать на диск. Окончание цикла по введению числа с клавиатуры предусмотреть введением символьной константы ' no', при входе в цикл символьную константу задать равной 'yes'.
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|