Лабораторная работа по теме
«Средства алгоритмизации и программирования
В Scilab»
Вопросы, подлежащие изучению
1) Виды sce- файлов.
2) Создание и сохранение новых, и открытие ранее созданных sce-файлов.
3) Особенности файлов-сценариев и sce- функций.
4) Запуск на выполнение файла-сценария из текстового редактора.
5) Запуск на выполнение файла-сценария из Командного окна
6) Обращения к файлам и sce- функциям.
7) Средства языка программирования в системе Scilab.
8) Основные операторы sce -языка их назначение и форматы.
Общее задание
1) Изучите материал Темы 1.3 (п.п. 1.3.1 – 1.3.5).
2) Выберете индивидуальное задание из табл. 1.Разработайте sce -функции для реализации стандартных алгоритмов: вычисления конечных сумм, разветвлений, поиска минимума и максимума в последовательности данных и т.п.
3) Введитеsce -функции и сохраните их на внешнем носителе.
4) Создайте файл-сценарий, в который введите код программы, описывающий логику решения поставленной задачи.
5) Сохраните созданный файл в текущем каталоге.
6) Произведите отладку файла-сценария, запуская его на выполнение из текстового редактора командой Выполнить.
7) Подготовьте и введите исходные данные для решения поставленной задачи;
8) Выполните файл-сценарий в Командном окне.
9) Сохраните текст рабочего окна на внешнем носителе.
10) Предоставьте результаты работы преподавателю, ответьте на поставленные вопросы.
11) Оформите отчет по выполненной работе.
Варианты индивидуальных заданий
Таблица. 1.
№ | Задание |
Ввести натуральное число n и вектор действительных чисел ![]() ![]() ![]() | |
Вычислить ![]() ![]() ![]() | |
Задать массив ![]() ![]() ![]() | |
Ввести натуральное число n и вектор действительных чисел ![]() ![]() ![]() ![]() | |
Ввести натуральное число n и действительное число х. Вычислить и вывести на экран искомую сумму и каждое слагаемое суммы:
![]() | |
Ввести натуральное число n. Найти наибольшее среди значений ![]() | |
Ввести натуральное число n и вычислить сумму значений ![]() ![]() ![]() | |
Ввести натуральное число n и вектор действительных чисел ![]() ![]() | |
Ввести матрицу B(5,7) и сформировать из первых наибольших элементов строк вектор С(5). Вывести его элементы в строку и столбец. | |
Сформировать вектор по правилу:
![]() ![]() | |
Ввести натуральное число n и вектор действительных чисел ![]() | |
Ввести квадратную матрицу А(4,4) и, сформировав из максимальных элементов ее столбцов вектор X, и вывести его элементы на экран в прямой и обратной последовательности. | |
Ввести вектор целых чисел ![]() | |
Ввести вектор вещественных чисел ![]() | |
Сформировать матрицу А(4,4) по правилу:
![]() | |
Сформировать матрицу D(3,2) по правилу:
![]() | |
Задать натуральное число n. Посчитать, какая из матриц размером nна n содержит большее количество положительных элементов, если ее элементы формируются по правилу: ![]() | |
Ввести квадратную матриц А(4,4) из вещественных чисел. Найти сумму значений наибольших элементов ее строк. Сформировать и вывести на экран новую матрицу В(4,4), каждый элемент которой получен путем умножения его значения на найденную сумму. | |
Ввести матрицу вещественных чисел А(4,7). Сформировать и вывести на экран вектор С(4), элементами которого являются: · наибольший из элементов в 1-й строке; · наименьший из элементов во 2-й строке; · среднее арифметическое элементов 3-й строки; · сумма элементов 4-й строки. | |
Ввести натуральное число n и матрицу вещественных чисел С(n,n). Найти среднее арифметическое наибольшего и наименьшего значений ее элементов, и, заменив этим значением диагональные элементы матрицы С, вывести полученную матрицу на экран. | |
Ввести натуральные числа k1, k2 и действительную матрицу размера 8х4. Поменять в матрице местами элементы k1 и k2 строк и вывести на экран модифицированную матрицу. | |
Ввести натуральное число n и матрицу вещественных чисел С(n,9). Сформировать и вывести на экран вектор-столбец, значениями элементов которого являются средние арифметические значения элементов строк матрицы С(n,9), имеющих четные номера. | |
Ввести вектора действительных чисел x(5), y(6),z(7). Вывести значение величины t, вычисляемой по следующему алгоритму:
![]() | |
Ввести вектора действительных чисел x(5). Получить для х=1, 3, 4 значения ![]() ![]() | |
Ввести вектор действительных чисел x(10). Получить из него другой массив p(10), элементы которого упорядочены по возрастанию. | |
Ввести матрицу вещественных чисел А(3,4). Заменить элементы строки матрицы с максимальной суммой значений элементов – единицами, с минимальной - 2, а остальные элементы матрицы положить равными нулю. | |
Сформировать матрицу А(4,4) по правилу ![]() | |
Сформировать матрицу В(9,3) по правилу ![]() | |
Ввести матрицу вещественных чисел А(3,4), все элементы которой различны. Найти в каждой строке матрицы наибольшее и наименьшее значение, и записать в соответствующий элемент вектора С(3) сумму значений индексов столбцов, в которых они расположены. Вывести на экран полученный вектор С. | |
Ввести матрицу вещественных чисел А(4,4). Сформировать и вывести на экран: · B(4) – вектор полученный из элементов главной диагонали; · C(4) - вектор полученный из элементов побочной диагонали |
Содержание отчета
1) В форме комментариев:
· Название лабораторной работы
· ФИО студента, номер группы
· № варианта
· Индивидуальное задание
2) Протокол вычислений (сессии) в Командном окне, снабженный необходимыми комментариями.
Пример выполнения лабораторной работы
Ввести действительные числа a,b, натуральное n (a<b) и вычислить выражение , где
, если
Решение задачи требует разработки 2-х функций: fab(a, h,i), предназначенной для вычисления i-го слагаемого (рис.1) и sumf(a,h,n), предназначенной для вычисления заданного выражения (рис. 2).
![]() |
Рис. 1. Функция fab(), вычисляющая значение i-го слагаемого
![]() |
Рис. 2 Функция sum_f(), вычисляющая заданное выражение
Запуск на выполнение осуществляется из командного окна к функции sum_f(). Предварительно переменным a, b и n присваиваются числовые значения. Проверка правильности ввода исходных данных предусмотрена в функции sum_f(). Вычисления выполняются и результат выводится на экран только в случае если b>a, иначе в командной строке появляется сообщение «Ошибка в исходных данных b<a» (рис.3).
![]() |
Рис. 3 Запуск функции sumf() на выполнение в Командном окне