Разработка программы для решения инженерных задач с использованием функций, процедур и сложных типов данных, в том числе динамических массивов и объединений. Интерфейс ввода/вывода. Схемы алгоритмов отдельных подзадач. Технические требования к программе.
Аннотация к работе
Назначение и область применения программы: программа будет использоваться в учебном процессе для решения инженерных задач обработки массивов, путем ее включения в программы пользователей. Функция f3 есть подынтегральное выражение, которое является тригонометрическим выражением, вычисление будет производиться по формуле a, b - нижний и верхний интеграл соответственно К моменту выполнения второй задачи будет сформирована матрица. Задача состоит в том, чтобы сформировать вектор, состоящий из наибольших среди отрицательных элементов i-го столбца. При решении первой задачи получим квадратную матрицу, т.е. матрицу. a которой число строк равно числу столбцов. Произведением матрицы Am*n = (aij) на матрицу Bn*p = (bjk) называется матрица Cm*p = (cik) такая, что т.е. элемент i-й строки и k-го столбца матрицы произведения C равен сумме произведений элементов i-й строки матрицы1 Часть. 2 Часть. Наименование переменной Тип переменной Обозначение Возможные значения Вектор X 3. Компл. преобр. массивов Y 4. Результат матр. операций вещ. массив вещ. массив вещ. вещ. Разность матриц целый целый вещ. массив вещ. массив вещ. массив вещ. вещ. массив. вещ .вещ. вещ. массив i j A2 = {aij} AT = {aij} nv= {nvij} x D= {Di} a b razn= {raznij} i j a2[i][j] At[i][j] nv[i][j] x d[i] a b razn[i][j] 1,2,...n 1,2,…n любые любые 0 или 1 любые любые любые любые любыеMix set_attr(int b,int fon,int col) //-------------------------------------------------fun Tab_fun[2][2]={{&log3,&prlog},{&log, &log}}; for(i=0;i<2;i )if(Tab_fun[i][0]==ff) f1=Tab_fun[i][1]; //-------------------------------------------------void print_matr(double **a, int n, FILE *F) //-------------------------------------------------void print_vect(double *x, int n, FILE *F)Все расчеты проведем в MATHCAD’е. , То, что вывела программа в файл при размерности n=2: Матрица А: 0.22756-0.95023 Вектор X:-1.02825-0.95023 Вектор 1/X:-0.97253-1.05238В результате проделанной курсовой работы можно сделать следующие вывод: разработана корректно работающая программа, способная решать некоторые инженерные задачи.
Введение
Цель курсовой работы: закрепление знаний и умений по алгоритмизации и программированию на языке Си с использованием функций, процедур и различных сложных типов данных, в том числе динамических массивов, структур и объединений.
Назначение и область применения программы: программа будет использоваться в учебном процессе для решения инженерных задач обработки массивов, путем ее включения в программы пользователей.
1. Задание на курсовую работу
1.1 Содержательное описание задачи
Для первой задачи даны три функции , и . Нужно будет найти элементы матрицы A по формуле где x=f(i,j) - аргумент функции , a,b - пределы интегрирования функции .
Функция представляет собой арифметическую функцию, проблем с ее вычислением в принципе не должно возникнуть.
Функцию f2 следует продифференцировать.
Функция f3 есть подынтегральное выражение, которое является тригонометрическим выражением, вычисление будет производиться по формуле a, b - нижний и верхний интеграл соответственно К моменту выполнения второй задачи будет сформирована матрица. Задача состоит в том, чтобы сформировать вектор, состоящий из наибольших среди отрицательных элементов i-го столбца.
При решении первой задачи получим квадратную матрицу, т.е. матрицу. a которой число строк равно числу столбцов.
Третья задача представляет собой набор матричных операций. Необходимо перемножить три операнда, представленных в виде особого вида матрицы или вектора, а также некоторых действий над ними.
Рассмотрим эти операции.
Сначала нужно получить вектор, состоящий из обратных элементов вектора, полученного во второй части.
Вторым операндом будет квадрат разности исходной и транспонированной исходной матриц
Произведением матрицы Am*n = (aij) на матрицу Bn*p = (bjk) называется матрица Cm*p = (cik) такая, что т.е. элемент i-й строки и k-го столбца матрицы произведения C равен сумме произведений элементов i-й строки матрицы A на соответствующие элементы k-го столбца матрицы B.
В качестве 3 операнда будет 1/D - вектор, составленный из обратных элементов главной диагонали матрицы А.
Матрица, полученная из данной заменой каждой ее строки столбцом с тем же номером, называется матрицей транспонированной к данной. Обозначается AT.
В четвертой задаче надо произвести стандартные арифметические действия над элементами матрицы, сформированной в первой задаче.
1.2 Математическая постановка задачи
Задание состоит из 4-х задач: 1.- формирование элементов матрицы A с помощью функций.
2. - формирование вектора X из элементов матрицы A, 3. -матричные операции: Z =
4. - комплексное преобразование массивов
Y=
1.3 Интерфейс ввода/вывода
Данные будем вводить с клавиатуры, а результаты в файл.
1.4 Технические требования к программе
Программа будет выполняться под оболочкой DOS.
Вывод
В результате проделанной курсовой работы можно сделать следующие вывод: разработана корректно работающая программа, способная решать некоторые инженерные задачи.