Лабораторная работа по теме
«Средства алгоритмизации и программирования
В 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 и вектор действительных чисел Найти: где | |
Вычислить где | |
Задать массив , состоящий из четного количества элементов. Каждая пара чисел и где i+1кратно двум, задает координаты вершины ломаной. Построить ломаную, соединив при этом последнюю вершину с первой. | |
Ввести натуральное число n и вектор действительных чисел . Вычислить произведение , где | |
Ввести натуральное число n и действительное число х. Вычислить и вывести на экран искомую сумму и каждое слагаемое суммы: | |
Ввести натуральное число n. Найти наибольшее среди значений , где k=1, 2,…,n, а также сумму всех полученных значений. | |
Ввести натуральное число n и вычислить сумму значений , где (i=1,2,…n). Вывести индексы и полученные значения в виде таблицы. | |
Ввести натуральное число n и вектор действительных чисел . Определить каких положительных или отрицательных чисел в векторе больше, а также наибольшее из отрицательных и наименьшее из положительных значение . | |
Ввести матрицу B(5,7) и сформировать из первых наибольших элементов строк вектор С(5). Вывести его элементы в строку и столбец. | |
Сформировать вектор по правилу: , где k=2,3,…7, если Найти сумму квадратов тех чисел, модуль которых не превосходят 2. | |
Ввести натуральное число n и вектор действительных чисел . Найти количество двух соседних положительных чисел и двух соседних чисел разного знака. | |
Ввести квадратную матрицу А(4,4) и, сформировав из максимальных элементов ее столбцов вектор X, и вывести его элементы на экран в прямой и обратной последовательности. | |
Ввести вектор целых чисел . Преобразовать его таким образом, чтобы сначала располагались нули, а затем все остальные элементы. Определить сумму и количество элементов, значения которых кратно 5. | |
Ввести вектор вещественных чисел . Создать из его элементов массив x, каждый элемент которого максимальный из 3-х элементов, идущих подряд в массиве z. | |
Сформировать матрицу А(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) по правилу Удалить из него столбцы, содержащие элементы, меньшие 10. Вывести на экран сформированную и модифицированную матрицы. | |
Сформировать матрицу В(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() на выполнение в Командном окне