Программирование с использованием подпрограмм

Принципы программирования с использованием функций, механизмов передачи и возврата данных в функцию. Исходные данные для отладки программы. Алгоритм табулирования функции. Определение функции для вычисления определенного интеграла от произвольной функции.

Рубрика Программирование, компьютеры и кибернетика
Вид лабораторная работа
Язык русский
Дата добавления 02.02.2020
Размер файла 726,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Программирование с использованием подпрограмм

Цель работы: Изучение принципов программирования с использованием функций, механизмов передачи и возврата данных в функцию. Получение навыков в написании программ с использованием подпрограмм.

1. Основные теоретические сведения

Основные теоретические сведения и примеры алгоритмов, представлены в лекции.

Контрольное задание 1

В соответствии с вариантом (номер по журналу), разработать программу для вычисления значения функции, представленной в таблице 8.1. Вычисление значения переменной b, выполнить в виде подпрограммы. Передачу параметров в функцию осуществлять по значению, через заголовок функции. Результат вычислений возвратить из функции с помощью оператора return. Разрабатываемая программа должна:

1) вводить исходные данные;

2) вычислять значение функции;

3) вводить исходные данные и результат расчетов.

Исходные данные для отладки программы подобрать самостоятельно. Количество баллов за выполнение - 1. В отчете привести таблицу описания переменных, описание входных и выходных параметров функции, листинг программы и результаты тестирования.

Таблица 8.1 - Варианты заданий для вычисления функции

Вариант

Вид функции

Вариант

Вид функции

1

16

2

17

3

18

4

19

5

20

6

21

7

22

8

23

9

24

10

25

11

26

12

27

13

28

14

29

15

30

Пример

Вычислить значение выражения sin2(а)+cos2(b), при заданном значении угла в градусах.

Решение

Тригонометрические функции, которые определены в math.h работают с радианной мерой угла. Реализуем функцию deg_to_rad перевод градусной меры угла в радианную.

Описание переменных программы:

- a, b - исходные данные, (вещ.);

- с - значение функции, результат, (вещ.);

Описание переменных функции deg_to_rad.

Шаблон:

double deg_to_rad(double alpha).

Функция осуществляет перевод градусной меры угла в радианную. Параметры функции:

- alpha - значение угла в градусах, входной параметр, передается по значению.

#include <stdio.h>

#include <windows.h>

#include <math.h>

double deg_to_rad(double alpha)

{

alpha = alpha*3.1415926/180;

return(alpha);

// return(alpha*3.1415926/180);

}

int main(void)

{

double a, b, c;

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

puts("ведите угол a в градусах!");

scanf("%lf",&a);

puts("ведите угол b в градусах!");

scanf("%lf",&b);

c = pow(sin(deg_to_rad(a)),2) + pow(cos(deg_to_rad(b)),2);

printf("c=%6.3f\n", c);

system("pause");

return(0);

}

В соответствии с вариантом (номер по журналу), разработать программу для вычисления значения выражений, представленных в таблице 8.2. Вычисление оформить в виде подпрограммы, в которую исходные данные передать в виде входных параметров через заголовок функции. Передачу параметров в функцию и возврат результатов, осуществлять по адресу и/или ссылке, через заголовок функции. Запретить изменение входных параметров используя модификатор const. Для возврата одного результата использовать передачу по адресу, для второго по ссылке.

Разрабатываемая программа должна:

1) вводить исходные данные;

2) вычислять значения выражений;

3) вводить исходные данные и результаты расчетов.

Исходные данные для отладки программы подобрать самостоятельно. Количество баллов за выполнение - 1. В отчете привести таблицу описания переменных, описание входных и выходных параметров функции, листинг программы и результаты тестирования.

Таблица 8.2 - Варианты заданий

Вариант

Вычислить

Расчетные формулы

1

Площадь круга и длину окружности радиуса r.

2

Площадь и угол при основании равнобедренного треугольника с основанием a и высотой h.

3

Площадь и периметр прямоугольника со сторонами a, b.

S = ab

P = 2(a+b)

4

Скорость в конце пути и путь, пройденный за время t с ускорением a при v0=0.

v = at

5

Площадь и периметр квадрата со стороной а.

S = a2

P = 4a

6

Объем и площадь боковой поверхности параллелепипеда со сторонами а, b, c.

V = abc

S =2(a+b)с

7

Площадь кольца с внешним радиусом R и внутренним r. Объем кольца с высотой h.

S=(R2 - r2)

V=h(R2 - r2)

8

Площадь боковой поверхности и объем цилиндра с радиусом основания r и высотой h.

S = 2r h

V=r 2h

9

Площадь и периметр прямоугольного треугольника с катетами a, b и гипотенузой с.

P=a+b+c

10

Объем и площадь поверхности куба со стороной а.

V = a3

S = 6a2

11

Площадь и периметр ромба со стороной а и высотой h

S = ah

P=4a

12

Площадь основания и объем цилиндра с радиусом основания r и высотой h.

S = r 2 V=Sh

13

Объем и площадь основания параллелепипеда со сторонами а, b, c.

V = abc S =ab

14

Площадь основания и объем конуса с радиусом основания r и высотой h.

S = r 2

15

Гипотенузу и площадь прямоугольного треугольника с катетами a, b.

16

Высоту и площадь равнобедренной трапеции с основаниями a, b (b>a) и углом при большем основании б.

17

Площадь поверхности и объем шара радиуса R.

18

Скорость в конце пути и путь, пройденный телом за время t с ускорением a и начальной скорости v0.

v=v0+at

19

Радиус круга, вписанного в треугольник со сторонами a, b, c.

20

Определить объем и массу параллелепипеда со сторонами a, b, c и плотностью р.

V=a b c

M=V p

21

Площадь прямоугольного треугольника с гипотенузой с и одним из катетов a.

22

Периметр и площадь прямоугольного треугольника с катетами a, b.

23

Высоту и площадь равнобедренного треугольника с основанием a и углом при основании.

24

Радиус круга, описанного вокруг треугольника со сторонами a, b, c.

25

Периметр и площадь параллелограмма со сторонами a, b и острым углом б.

P=2(a+b)

26

Площадь прямоугольной трапеции с основаниями a, b (b>a) и углом при большем основании б.

27

Сопротивление проводника длиной l, площадью поперечного сечения S и удельным сопротивлением . Мощность выделяемую на сопротивлении при токе I.

P=I2R

28

Определить объем и массу цилиндра с радиусом основания r, высотой h и плотностью р.

V=r 2h

M=V p

29

Периметр и площадь треугольника со сторонами a, b, c.

P = a+b+c

30

Определить объем и массу конуса с радиусом основания r, высотой h и плотностью р.

M=V p

Пример. По величине угла в градусах, вычислить величину угла в радианах.

Решение

Функция deg_to_rad выполняет перевод из градусной меры в радианную. Эта функция ничего не возвращает с помощью механизма return. Её аргументами являются: входное значение угла в градусах (deg) и адрес переменной в которых будут храниться вычисленный результат - величина радианной меры угла (rad).

#include <stdio.h>

#include <windows.h>

#include <math.h>

void deg_to_rad(int deg, double *rad)

{

*rad = deg*3.1415926/180;

}

int main(void)

{

double a_rad, b_rad, c;

int a_deg, b_deg;

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

puts("ведите угол a в градусах!");

scanf("%d",&a_deg);

puts("ведите угол b в градусах!");

scanf("%d",&b_deg);

deg_to_rad(a_deg, &a_rad);

deg_to_rad(b_deg, &b_rad);

c = pow(sin(a_rad),2) + pow(cos(b_rad),2);

printf("c=%6.3f\n", c);

system("pause");

return(0);

}

Та же функция, с передачей параметров по ссылке.

#include <stdio.h>

#include <windows.h>

#include <math.h>

void deg_to_rad(int deg, double &rad)

{

rad = deg*3.1415926/180;

}

int main(void)

{

double a_rad, b_rad, c;

int a_deg, b_deg;

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

puts("ведите угол a в градусах!");

scanf("%d",&a_deg);

puts("ведите угол b в градусах!");

scanf("%d",&b_deg);

deg_to_rad(a_deg, a_rad);

deg_to_rad(b_deg, b_rad);

c = pow(sin(a_rad),2) + pow(cos(b_rad),2);

printf("c=%6.3f\n", c);

system("pause");

return(0);

}

В соответствии с вариантом (номер по журналу), разработать программу для вычисления значения функции, представленной в таблице 8.3. Вычисление заданного значения, выполнить в виде подпрограммы. Используя механизм перезагрузки определить несколько экземпляров функции (не менее 3 вариантов) для вычисления выражения, для разных вариантов количества аргументов, их типов и типа возвращаемого результата. Варианты количества, типов аргументов и результата выбрать самостоятельно.

Количество баллов за выполнение - 1. В отчете привести описание входных и выходных параметров функции, листинг программы и результаты тестирования.

Таблица 8.3 - Варианты заданий

Вариант

Вычислить

Расчетные

формулы

1, 16

Площадь боковой поверхности цилиндра с радиусом основания r и высотой h.

S = 2r h

2, 17

Периметр прямоугольника со сторонами a, b.

P = 2(a+b)

3, 18

Объем параллелепипеда со сторонами а, b, c.

V = abc

4, 19

Площадь боковой поверхности параллелепипеда со сторонами а, b, c.

S =2(a+b)с

5, 20

Периметр прямоугольного треугольника с катетами a, b и гипотенузой с.

P=a+b+c

6, 21

Площадь ромба со стороной а и высотой h

S = ah

7, 22

Объем кольца с внешним радиусом R, внутренним r и высотой h.

V=h(R2 - r2)

8, 23

Скорость в конце пути пройденного телом за время t с ускорением a и начальной скоростью v0.

v=v0+at

9, 24

Массу параллелепипеда со сторонами a, b, c и плотностью р

M= a b c p

10, 25

Периметр параллелограмма со сторонами a, b и острым углом б.

11, 26

Периметр параллелограмма со сторонами a, b.

P=2(a+b)

12, 27

Гипотенузу прямоугольного треугольника с катетами a, b и равнобедренного

13, 28

Сопротивление проводника длиной l, площадью поперечного сечения S и удельным сопротивлением

14, 29

Определить массу конуса с радиусом основания r, высотой h и плотностью р.

15, 30

Определить массу цилиндра с радиусом основания r, высотой h и плотностью р.

M=r 2h p

Пример. Определим функцию areaRectangle(), для вычисления площади прямоугольника. Определим несколько экземпляров функции для прямоугольника и квадрата с параметрами целого и вещественного типов.

//функция, вычисляющая площадь квадрата

int areaRectangle(int a)

{

return a * a;

}

//функция, вычисляющая площадь квадрата

float areaRectangle(float a)

{

return a * a;

}

//функция, вычисляющая площадь прямоугольника

int areaRectangle(int a, int b)

{

return a * b;

}

//функция, вычисляющая площадь прямоугольника

float areaRectangle(float a, float b)

{

return a * b;

}

Пример вызова функций:

s = areaRectangle (4);

s = areaRectangle (2.2, 8.2);

В соответствии с вариантом (номер по журналу), разработать программу для вычисления значения функции, представленной в таблице 8.3. Вычисление заданного значения, выполнить в виде подпрограммы. Используя шаблоны определить несколько экземпляров функции (не менее 3 вариантов) для вычисления выражения, для разных вариантов количества аргументов, их типов и типа возвращаемого результата. Варианты количества, типов аргументов и результата выбрать самостоятельно.

Количество баллов за выполнение - 1. В отчете привести описание входных и выходных параметров функции, листинг программы и результаты тестирования.

Пример. Задать функцию для определения максимального элемента из пары чисел. Определим несколько шаблонов функции для разных типов чисел и результата.

#include <stdio.h>

#include <windows.h>

template <typename T>

T maxx(T a, T b)

{

if(a > b) return a;

else return b;

}

template <typename T>

T maxx(T b)

{

return b*b;

}

template <typename T1, typename T2>

T2 maxx(T1 a, T2 b)

{

if(a > b) return a;

else return b;

}

int main(void)

{

puts("maximal");

printf("= %d \n", maxx(12, 100));

printf("= %d \n", maxx(12));

printf("= %6.2f \n", maxx(1.22, 13.33));

printf("= %f \n", maxx(15, 14.5));

system("pause");

return 0;

}

Контрольное задание 5

В соответствии с вариантом (номер по журналу), разработать программу для вычисления значений кусочно - непрерывной функции y(x) на интервале от xнач до xкон с шагом ?x. Функция представлена в таблице 8.4. Разрабатываемая программа должна состоять из двух функций: - вычисления y(x) и алгоритма табулирования.

Вычисление функции реализовать подпрограммой, в которую в качестве параметра передается аргумент функции х, а функция возвращает значение y(x) и номер интервала.

Алгоритм табулирования функции и вывода результатов, выполняется подпрограммой, в которую в качестве параметров передаются следующие данные:

1. интервал и шаг табулирования;

2. указатель на расчетную функцию.

Результаты расчетов представить в виде таблицы со следующими колонками:

- Порядковый номер строки;

- значения аргумента функции x;

- вычисленного значения функции y;

- номер формулы, по которой производилось вычисление функции (1, 2 или 3).

Исходные данные для отладки программы выбрать самостоятельно, так чтобы перекрывались все интервалы функции y(x). Количество баллов за выполнение - 1. В отчете привести листинг программы и результаты тестирования.

Таблица 8.4 - Варианты заданий

Вариант

Вид функции

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

Пример. Определить функцию для вычисления определенного интеграла от произвольной функции. Подынтегральная функция может быть передана в функцию вычисления интеграла с помощью параметра-указателя. Приближенное значение интегралов вычисляется с помощью формулы прямоугольников, задав пределы интегрирования [a, b] и число интервалов разбиения

#include <stdio.h>

#include <windows.h>

#include <math.h>

double integral_rec(double(*pf)(double), double a, double b, int n)

{

int i;

double h, s=0;

h=(b-a)/n;

for (i=0;i<n;i++) s+=pf(a+h/2+i*h);

return h*s;

}

//Подынтегральная функция 1

double func1(double x)

{

return (x*cos(x));

}

//Подынтегральная функция 2

double func2(double x)

{

return (x*sin(x));

}

//Подынтегральная функция 3

double func3(double x)

{

return (cos(x)*sin(x));

}

int main(void)

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

double a,b,c;

int n;

puts("Введите значения пределов интегрирования:");

puts("a=");

scanf("%lf",&a);

puts("b=");

scanf("%lf",&b);

puts("Введите количество интервалов разбиения: n=");

scanf("%d",&n);

c=integral_rec(func1,a,b,n);

printf("интеграл = %lf\n",c);

c=integral_rec(func2,a,b,n);

printf("интеграл = %lf\n",c);

c=integral_rec(func3,a,b,n);

printf("интеграл = %lf\n",c);

system("pause");

return(0);

}

Результаты работы.

Проверка:

В соответствии с вариантом (номер по журналу), разработать программу для вычисления значения выражений, представленных в таблице 8.5. Разрабатываемы алгоритм должен состоять из функций выполняющих многократные действия:

1) ввод массива;

2) вывод массива;

3) обработку массива в соответствии с заданием;

Передачу параметров в функцию и возврат результатов, осуществлять по адресу и/или ссылке. Глобальные данные в программе не использовать.

Исходные данные для отладки программы выбрать самостоятельно. Количество баллов за выполнение - 2. В отчете привести листинг программы и результаты тестирования.

Таблица 8.5 - Варианты заданий

Вариант

Задание

1

Вычислить функцию y= (sin(a) + cos(b))/c2 , где a, b, c - суммы положительных элементов массивов X, Y, Z.

2

Вычислить функцию y= sin2(a) + (b+c)2 , где a, b, c - номера наименьших по модулю элементов массивов X, Y, Z.

3

Вычислить функцию y= (2a + b)3 + c , где a, b, c - среднее арифметическое положительных элементов массивов X, Y, Z.

4

Вычислить функцию y= a (b - c)2 , где a, b, c - максимальные значения элементов массивов X,Y,Z.

5

Вычислить функцию y= max(a, b, c) , где a, b, c - суммы элементов массивов X,Y,Z значения которых меньше заданного K.

6

Вычислить функцию y= min(a, b, c) , где a, b, c - количество положительных элементов массивов X,Y,Z значения которых меньше заданного K.

7

Вычислить функцию y= (2a + 3b)/4c, где a, b, c - количество элементов массивов X,Y,Z значения которых принадлежит интервалу [n, m].

8

Вычислить функцию y= с(sin2(a) - cos2(b)) , где a, b, c - суммы квадратов отрицательных элементов массивов X, Y, Z.

9

Вычислить функцию y= sin2(a) + cos(b+c)2 , где a, b, c - номера наибольших по модулю элементов массивов X, Y, Z.

10

Вычислить функцию y= max(a, b, c) , где a, b, c - среднее арифметическое элементов массивов X,Y,Z значения которых не меньше заданного K.

11

Вычислить функцию y= min(a, b)*с , где a, b, c - количество отрицательных элементов массивов X,Y,Z значения которых больше заданного K.

12

Вычислить функцию y= cos(a + b)/sin(c), где a, b, c - минимальные по модулю элементы массивов X,Y,Z.

13

Вычислить функцию y= min(2a, 3b)/c, где a, b, c - среднее арифметическое элементов массивов X,Y,Z значения которых не принадлежит интервалу [n, m].

14

Вычислить функцию y= a3 /(b - c +1)2, где a, b, c - произведения элементов массивов X,Y,Z значения которых значения которых не больше заданного K.

15

Вычислить функцию y= max(a, 2b, 3c) , где a, b, c - суммы элементов массивов X,Y,Z значения которых меньше последнего элемента массива.

16

Вычислить функцию y= min2(b, c) * cos(a), где a, b, c - сумма квадратов элементов массивов X,Y,Z значения которых принадлежит интервалу (n, m) .

17

Вычислить функцию y= max(a, min(b, c)) , где a, b, c - максимальные элементы массивов X, Y, Z среди элементов стоящих на четных местах.

18

Вычислить функцию y= cos(sin3(a) + sin(b))/c3, где a, b, c - максимальные элементы массивов X, Y, Z среди элементов стоящих на четных местах.

19

Вычислить функцию y= sin2(a с) + sin4(b с) , где a, b, c - номера наибольших по модулю элементов массивов X, Y, Z стоящих на нечетных местах.

20

Вычислить функцию y= (min(a, b) * min(a, с))2, где a, b, c - количества элементов массивов X,Y,Z значения которых не принадлежит интервалу [n, m].

21

Вычислить функцию y= sin(2a) * sin(3b+4c) , где a, b, c - сумма максимального и минимального элементов массивов X, Y, Z.

22

Вычислить функцию y= max(a, 2b, 3c) , где a, b, c - суммы элементов массивов X,Y,Z значения которых больше первого элемента массива и меньше заданного К.

23

Вычислить функцию y= min(2a, max(b, c)) , где a, b, c - минимальные элементы массивов X, Y, Z среди элементов стоящих на нечетных местах.

24

Вычислить функцию y= (c* sin(а))2 + b, где a, b, c - среднее арифметическое элементов массивов X, Y, Z стоящих на четных местах и не принадлежит интервалу [n, m] .

25

Вычислить функцию y= cos( min(b, c) + a2) , где a, b, c - номера максимальных элементов массивов X, Y, Z среди элементов стоящих на четных местах.

26

Вычислить функцию y= sin3(a-с) / sin(b2+с) , где a, b, c - произведение максимального и минимального элементов массивов X, Y, Z среди элементов стоящих на нечетных местах

27

Вычислить функцию y= min(a, 2b, 3c) , где a, b, c - суммы элементов массивов X,Y,Z среди значений больших заданного K и стоящих на нечетных местах.

28

Вычислить функцию y= (sin2(a*c)/ cos(b*c))3 , где a, b, c - номера минимальных элементов массивов X, Y, Z среди элементов стоящих на не четных местах.

29

Вычислить функцию y= max(a, b)/min(b, c) , где a, b, c - полу сумма максимального и минимального элементов массивов X, Y, Z.

30

Вычислить функцию y= tan2((a+b)3/c), где a, b, c - произведение максимального и минимального элементов массивов X, Y, Z среди элементов стоящих на четных местах

В соответствии с вариантом (номер по журналу), разработать программу для вычисления значения выражений, представленных в таблице 8.6. Разрабатываемый алгоритм должен состоять из функций выполняющих многократные действия:

1) ввод двумерного массива;

2) вывод двумерного массива;

3) обработку массива в соответствии с заданием;

Передачу параметров в функцию и возврат результатов, осуществлять по адресу и/или ссылке. Глобальные данные в программе не использовать.

Исходные данные для отладки программы выбрать самостоятельно. Количество баллов за выполнение - 3. Использовать два способов передачи параметров - по адресу и ссылке. В отчете привести листинг программы и результаты тестирования.

Таблица 8.6 - Варианты заданий

Вариант

Задание

1

Составить векторы P и Q, элементами которых являются суммы элементов, столбцов матриц А и В, соответственно.

2

Из положительных элементов матриц А и С сформировать векторы Х и Т, соответственно.

3

Решить уравнение ax2 + bx + c = 0, где a, b, c - максимальные значения элементов матриц X, Y и Z, соответственно.

4

Из элементов главной диагонали матриц А и В сформировать векторы Х и Т, соответственно.

5

Составить векторы К и L, элементами которых являются, соответственно, номера строк и номера столбцов наибольших по модулю элементов матриц А, В и С.

6

Решить уравнение px2 + qx + c = 0, где p, q и с - суммы элементов, лежащих выше главной диагонали и на ней, в матрицах А, В и D, соответственно.

7

Найти минимальное из чисел, каждое из которых является произведением всех элементов матриц А, В и D, соответственно.

8

Сформировать векторы X и Y, элементами которых являются максимальные значения столбцов матриц А и F соответственно.

9

Транспонировать матрицы А и В в матрицы P и Q.

10

Сформировать векторы С и D, элементами которых являются максимальные по модулю значения строк матриц Z и T, соответственно

11

Решить уравнение ax2 + bx + c = 0, где a, b, c максимальные по модулю значения элементов главной диагонали матриц X, Y и Z, соответственно.

12

Решить уравнение px2 + qx + t = 0, где p, q и t - минимальные значения элементов побочной диагонали матриц A, B и C, соответственно.

13

Из отрицательных элементов матриц Т и Z составить векторы А и В.

14

Составить векторы С и D, элементами которых являются произведения элементов столбцов матриц P и Q, соответственно.

15

Из элементов матриц А и Т, значения которых попадают в интервал (А;В) сформировать векторы Z и С соответственно.

16

Найти максимальное из трех чисел, каждое из которых является произведением элементов, лежащих выше побочной диагонали и на ней, в матрицах А, В и С, соответственно.

17

Из матриц А и В сформировать матрицы P и Q, соответственно, элементы которых в 5 раз больше соответствующих элементов исходных матриц.

18

Решить уравнение ax2 + tx + c = 0, где a, t, c - суммы всех элементов матриц P, Q и Z, соответственно.

19

Сформировать векторы А и Т, элементами которых являются максимальные значения столбцов матриц P и Q, соответственно.

20

Решить уравнение ax2 + bx + c = 0, где a, b и с - суммы элементов, лежащих ниже главной диагонали и на ней, в матрицах Y, P и Q, соответственно.

21

Составить векторы A и T, элементами которых являются суммы элементов строк матриц X и Y, соответственно.

22

Из матриц X и Y получить новые матрицы В и С, соответственно, элементы которых в 2 раза меньше соответствующих элементов исходных матриц.

23

Найти максимальное из трех чисел, каждое из которых является суммой всех элементов матриц P, Q и Z, соответственно.

24

Составить векторы С и D, элементами которых являются последние положительные элементы в строках матриц P и Q, соответственно.

25

Составить векторы X и T, элементами которых являются, соответственно, номера строк и номера столбцов минимальных элементов матриц В, С и D.

26

Сформировать векторы В и С, элементами которых являются минимальные значения строк матриц Х и T, соответственно.

27

Из элементов побочной диагонали матриц P и Q сформировать векторы А и В, соответственно.

28

Составить векторы Х и Y, элементами которых являются произведения элементов строк матриц А и С, соответственно.

29

Составить векторы С и D, элементами которых являются первые отрицательные элементы в столбцах матриц P и Q, соответственно.

30

Решить уравнение ax2 + bx + c = 0, где a, b и c - суммы элементов, лежащих ниже побочной диагонали и на ней, в матрицах T, P и Q, соответственно.

программирование отладка алгоритм функция

Отчет по лабораторной работе оформляется в электронном виде в текстовом редакторе и должен содержать следующие разделы:

1. Титульный лист.

2. Цель работы.

3. Выполнение контрольных заданий - текст задания, таблица описания переменных, листинг программы, результаты тестирование программы.

4. Выводы по работе.

Размещено на Allbest.ru


Подобные документы

  • Обработка сложных структур данных как одна из наиболее распространенных возможностей применения языка программирования С++. Преимущества использования подпрограмм. Передача параметров, одномерных и двумерных массивов, функции и их возврат в функцию.

    курсовая работа [1,1 M], добавлен 24.11.2013

  • Принципы разработки математических моделей, алгоритмов и программ. Составление программы вычисления функции с использованием нестандартных функций. Нахождение значения корней нелинейного уравнения по методу касательных. Программа для вычисления интеграла.

    курсовая работа [568,3 K], добавлен 07.03.2015

  • Решение задач прикладного программирования. Оформление разработанных алгоритмов в виде графических схем. Написание программ с использованием подпрограмм, их отладка. Блок-схемы и листинг программ. Наборы тестов для отладки разработанных программ.

    курсовая работа [575,8 K], добавлен 06.12.2013

  • Математическое описание, алгоритм и программа вычисления определенного интеграла методом трапеций. Расчет n-значений исследуемой функции и вывод их в виде таблицы. Технические и программные средства. Входные и выходные данные, функциональное назначение.

    курсовая работа [21,0 K], добавлен 03.01.2010

  • Математическое обоснование метода решения задачи: определенный интеграл, квадратурная формула Симпсона (формула парабол). Словесное описание алгоритма и составление его блок-схемы. Выбор языка программирования. Текст программы решения задачи, ее листинг.

    курсовая работа [593,6 K], добавлен 09.07.2012

  • История создания и развитие языка программирования Pascal, его версии. Особенности и порядок построения графика функции на языке Turbo Pascal с использованием декартовой системы координат. Блок схема алгоритма процедур, листинг и тестирование программы.

    курсовая работа [102,7 K], добавлен 23.12.2011

  • Методы и алгоритмы вычисления определенных интегралов: метод трапеций и метод Симпсона (метод парабол). Оформление функции вычисления заданного определённого интеграла на Visual Basic 6.0. Программный код функции. Создание приложения для вычисления.

    курсовая работа [483,6 K], добавлен 25.06.2014

  • Описание параметрических и непараметрических методов штрафных функций в области нелинейного программирования. Решение задачи с использованием множителей Лагранжа. Непрерывность, гладкость, выпуклость, простота вычисления значения функции и производных.

    курсовая работа [114,8 K], добавлен 25.11.2011

  • Особенности работы в режиме командной строки в системе Matlab. Переменные и присваивание им значений. Комплексные числа и вычисления в системе Matlab. Вычисления с использованием функции sqrt. Неправильное использование функций с комплексными аргументами.

    дипломная работа [1,9 M], добавлен 30.07.2015

  • Создание программы для вычисления значения функции на основе определённой формулы. Уточнение структуры входных и выходных данных и определение ассемблерного формата их представления. Разработка алгоритмов для реализации работы программного обеспечения.

    курсовая работа [240,6 K], добавлен 17.06.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.