double mtr(double a,double b,double h,int n)




{

double s = 0, i3;

int i;

for (i=1; i<n; i++)

s+ = pow(((a+i*h)+1),(-1/3.0));

i3=h*((pow((a+1),(-1/3.0))+pow((b+1),(-1/3.0)))/2+s);

return i3;

}

Void main()

{

double a,b,h;

int n;

printf("Введите границы отрезка интегрирования\n");

scanf("%lg %lg",&a,&b);

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

scanf("%d",&n);

h = (double)(b-a)/n;

printf("Интеграл по методу прямоугольников равен %lg\n", mpr(a,h,n));

printf("Интеграл по методу трапеций равен %lg\n", mtr(a,b,h,n));

}

Задание

Разработать программу для вычисления значения определенного интеграла на интервале [a,b] (a, b подобрать самостоятельно) численными методами прямоугольников и трапеций [9] для следующих вариантов.

 

1. 2. 3.

4. 5. 6.

7. 8. 9.

10. 11. 12.

 

 

13. 14. 15.

16. 17. 18.

19. 20.

Интервал интегрирования разбить равномерно на N > 50 частей.

 

Библиографический список

1. ГОСТ 19.701-90. ЕСПД. Схемы алгоритмов, пpогpамм, данных и систем. – М.: Изд-во стандартов, 1991. – 26 с.

2. Крылов, Е.В. Техника разработки программ / Е.В. Крылов, В.А. Острейковский, Н.Г. Типикин. – М.: Высш. шк., 2008. – 469 с.

3. Пpогpаммиpование на С и С++: практикум / А.В. Кpячков [и дp.]. – М.: Радио и связь, 1997. – 344 с.

4. Макогон, В.С. Язык программирования Си для начинающих / В.С. Макогон. – Одесса: НПФ "АСТРОПРИНТ", 1993. – 96 с.

5. Методы проектирования программ: метод. указания / сост. О. П. Шафеева. – Омск: Изд-во ОмГТУ, 2004. – 32 с.

6. Павловская, Т.А. С/С++. Программирование на языке высокого уровня / Т.А. Павловская. – СПб.: Питер, 2002. – 462 с.

7. Подбельский, В.В. Программирование на языке Си / В.В. Подбельский, С.С. Фомин. – М., 2000. – 600 с.

8. Флоренсов, А.Н. Введение в программирование. Семантический подход: учеб. пособие / А.Н. Флоренсов. – Омск: Изд-во ОмГТУ, 1998. – 220 с.

9. Численные методы: метод. указания / сост.: О. Б. Малков, Е. Т. Гегечкори. – Омск: Изд-во ОмГТУ, 1995. – 28 с.

10. Шафеева, О.П. Технологии программирования. С++: учеб. пособие / О.П. Шафеева. – Омск: Изд-во ОмГТУ, 2007. – 80 с.

11. Программирование на языке С: метод. указания / сост. О. П. Шафеева, Ю. Г. Каворина, Г. С. Шукурова. – Омск: Изд-во ОмГТУ, 2008. – 72 с.


Приложение А

Операции языка С/С++

Вес Знак Наименование операции Вид операции Порядок
  () [] .   ->   вызов функции выделение элемента массива выделение элемента структуры или объединения выделение элемента структуры, адресуемой (го) указателем выражение слева направо ®
  ! ~ - ++ -- & * (тип) sizeof логическое отрицание побитовое отрицание изменение знака (унарный минус) увеличение на 1 (инкремент) уменьшение на 1 (декремент) определение адреса обращение по адресу преобразование типа определение размера в байтах унарные справа налево  
  * / % умножение деление остаток от деления бинарные арифметич. ®
  + - сложение вычитание бинарные арифметич. ®
  << >> сдвиг влево сдвиг вправо сдвига ®
  < <= > >= меньше чем меньше или равно больше чем больше или равно отношения ®
  == != равно неравно отношения ®
  & поразрядная операция "И" побитовая ®
  ^ «исключающее "ИЛИ"» побитовая ®
  | поразрядная "ИЛИ" побитовая ®
  && логическая операция "И" логическая ®
  || логическая операция "ИЛИ" логическая ®
  ?: условная операция тернарная  
  =   += -= *= /= %= <<= >>= &= |= ^= простое присваивание составные присваивания: сложение с присваиванием вычитание с присваиванием умножение с присваиванием деление с присваиванием остаток от деления с присваиванием сдвиг двоичного числа влево с присв. сдвиг двоичного кода вправо с присв. побитовая операция "И" с присв. поразрядная операция "ИЛИ" c присв. исключающее "ИЛИ" с присв. присваивания бинарные   (для двоичных операндов)  
  , операция "запятая" (соединения) тернарная ®

 

Приложение Б

Типы данных

Обозначение Размер, байт Диапазон Тип данных
char, signed char   -128...127 Символьный со знаком
unsigned char   0...255 Символьный без знака
short, short int, signed short, signed short int   -32768...32767 Короткое целое со знаком
unsigned short, unsigned short int   0...65535 Короткое целое без знака
int, signed, signed int 1, 2, 4 Зависит от реализации Целое
unsigned, unsigned int 1, 2, 4 Зависит от реализации Целое без знака
long, signed long, long int   -2147483648… 2147483647 Длинное целое со знаком
unsigned long   0...4294967295 Длинное целое без знака
float   -3.4e-38... 3.14e+38 Вещественное число с плавающей точкой
double   -1.7е-308… 1.7е308 Вещественное число удвоенной точности
long double     -3.4e-4932....4e4932 Длинное вещественное число удвоенной точности

Приложение В

Операторы языка С/С++

1. Оператор "Выражение" имеет три формы:

<идентификатор>=<выражение>; // выполяет простое присваивание;

<идентификатор><знак>=<выражение>; // составное присваивание,

<идентификатор>=<идентификатор>=<выражение>; //реализует многоступенчатое присваивание справа налево.

Примеры: z = x; w += 2; /* w = w + 2*/ s = t = 1;

 

2. Условный оператор записывается следующим способом:

if (<выражение>) <оператор1;>

else (<оператор2>);

Пример: a) if (k!= 0) k = k +1; b) if (k) k++;

else k = k-1; else k--;

 

3. Оператор цикла со счетчиком:

for (<выражение1>;<условие выполнения>;<выражение2>) <оператор>;

где <выражение1> - выражение инициализации параметра цикла,

<выражение2> - изменение параметра цикла.

Пример: for ( i=0; i<100; i++ ) sum += x[i]; // sum = sum + x[i];

 

4. Оператор цикла с предусловием:

while (<выражение>) <оператор>;

Пример: while (i<100) p++;

 

5. Оператор цикла с постусловием

do {<операторы>} while (<условие выполнения цикла>);

Пример: do

{

n *= i;

i++;

}

while (i <= 100);

6. Оператор безусловного перехода:

goto < идентификатор-метка >;

 

7. Оператор возврата из функции:

return < выражение >;

 

8. Оператор-переключатель:

switch (<выражение>)

{

case <константа1>: <группа операторов1>;

case <константа2>: <группа операторов2>;

...

case <константаN>: <группа операторовN>;

default: <операторы>;

};

Метки определяют точки входа в тело оператора. Чтобы выполнить только одно действие, необходимо предусмотреть выход из данного оператора в нужном месте.

Пример:

switch (operand)

{

case 1: x *= y; break;

case 2: x /= y; break;

case 3: x += y; break;

case 4: x -= y; break;

case 5: x++; break;

case 6: x++; break;

case 7: case 8: case 9: printf("Not done\n"); break;

default: printf("Bye!\n"); exit(1);

}

9. Оператор break;

организует досрочный выход из операторов while, do, for или switch.

 

10. Оператор continue;

выполняет переход на следующую итерацию и выполняет первый оператор тела цикла while, do или for.

Пример:

for (i = 0; i < 20; i++)

{

if (array[i] == 0)

continue;

array[i] = 1/array[i];

}

 

СОДЕРЖАНИЕ

 

Лабораторная работа № 1

Основы программирования в системе Visual Studio С/C++........................ 3

Лабораторная работа № 2

Разработка программ из нескольких функций.

Обработка двумерных массивов.................................................................... 7

Лабораторная работа № 3

Применение адресов и указателей при возврате
из функций нескольких значений................................................................. 11

Лабораторная работа № 4

Создание проектов из нескольких файлов в Eclipse IDE С/С++............ 15

Лабораторная работа № 5.

Программирование с возвратом из функции структур............................ 20

Лабораторная работа № 6.

Основы программирования в системе Code::Blocks.................................. 21

Библиографический список........................................................................... 27

Приложение А. Операции языка С/С++....................................................... 28

Приложение Б. Типы данных....................................................................... 29

Приложение В. Операторы языка С/С++.................................................... 30

 

 

Редактор Т. А. Москвитина

Компьютерная верстка – Т. А. Бурдель

 

ИД № 06039 от 12.10.2001 г.

Сводный темплан 2012 г.

 

Подписано в печать 28.04.2012. Формат 60×84 1/16. Бумага офсетная.

Отпечатано на дупликаторе. Усл. печ. л. 2,0. Уч.-изд. л. 2,0.

Тираж 50 экз. Заказ 348.

_________________________________________________________

Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11; т. 23-02-12

Типография ОмГТУ



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: