Вы находитесь на странице: 1из 40

Сергей Г. Истрати

Примечание ! Содержание этой книги переведено с румынского на русский язык не совсем компетентными переводчиками”. Прошу не считать этот перевод официально-правильным. Советую использовать румынский оригинал с сайта или из библиотеки.

ПРОГРАММИРОВАНИЕ

методические указания по выполнению лабораторных работ

указания по выполнению лабораторных работ Кишинев 2005

Кишинев 2005

Данные методические указания предназначены для студентов I и II курса дневного и заочного отделений Технического Университета Молдовы, изучающих программирование, а в частности, для студентов Факультета Радиоэлектроники и Телекоммуникаций Кафедры Оптоэлектронных систем, специальности 1871 Инженерия и Менеджмент в телекоммуникациях и 2105 Оптоэлектронные системы. Методические указания включают в себя условия заданий и описание методов и средств выполнения лабораторных работ по предмету Программирование.

Автор: Старший Лектор Сергей Истрати

Ответственный редактор: Профессор Павел Нистирюк

Рецензент: Академик, Доктор Наук Виктор Боршевич

© U.T.M.,2005

2

Введение Лабораторные работы представленные в этом указании содержат все задания, запланированные в учебной программе для студентов 2 курса Кафедры Оптоэлектронных Систем, Факультета Радиоэлектроники и Телекоммуникаций. Указания содержат варианты для 12-ти лабораторных работ, которые будут выполнены студентами в течение 2-х семестров. Для каждой лабораторной работы представлены по 15 вариантов задач и один пример решения работы с использованием языка программирования С++. Темы и содержание лабораторных работ составлены таким образом чтобы студент к концу курса по программированию был способен разработать программу с интерфейсом меню сделанным для удобства пользователя при употребления технологии занесения, чтения и заполнения файлов с самым распространенным видом сохранения и обработки информации запись, т.е. база данных. Данные методические указания всего лишь часть из дидактико- методических работ составленные старшим лектором Сергеем Истрати, нацелены для наиболее легкого процесса обучения студентов дисциплине программирование. Были составлены следующие работы:

Цикл лекций по предмету Программирование. Язык Pascal. Цикл лекций по предмету Программирование. Язык C. Указания по выполнению индивидуальных работ. Указания по выполнению курсовых работ. Указания по выполнению лабораторных работ (данная работа).

Все эти работы доступны в интернете на сайте www.istrati.com

3

Содержание

Введение Лабораторная работа N 1. Линейные программы.

5

Лабораторная работа N 2. Разветвленные программы.

6

Лабораторная работа N 3. Обработка одномерных массивов.

9

Лабораторная работа N 4. Обработка одномерных массивов.

11

Лабораторная работа N 5. Обработка двумерных массивов.

13

Лабораторная работа N 6. Генератор случайных чисел.

16

Лабораторная работа N 7. Циклико-разветвленные процессы.

19

Лабораторная работа N 8. Обработка строк.

23

Лабораторная работа N 9. Массив строк.

25

Лабораторная работа N 10. Обработка записей.

27

Лабораторная работа N 11. Подпрограммы.

33

Лабораторная работа N 12. Обработка файлов.

37

Требования по содержанию отчета.

45

Литература.

4

46

Лабораторная работа Тема: Линейные программы. Вычислить значение выражения:

N

1

Ва

Формула для вычислений.

 

р

 

A=

2 cos(

x

-

pi

/ 6)

 

;

 

B=1+ 3

z

2

1

1/ 2

+

sin

2

y

+ z

2

/5

 

A=|x

y /

x -

3 y / x |
3
y
/ x
|

;

 

f=(y-x)

y

-

z

/(

y

-

x

)

2

 

1

+

(

y

-

x

)

2

3

S=1+x+

x

2

2

+

x

3

3

+

x

4

4

 

; e=x(sinx

3

+ cos

2

y

)

 

4

Y=e

- bt

sin( at

+

b)

-

| bt + a |
| bt
+
a |
 

;

s=bsin(at cos 2 ) 1

2

t

-

 

5

W=

2 x + b
2
x
+
b

-

b

2

sin

3

( x

+

a) / x

 

;

y=cos 2 3

x

- x /

2 2 a + b
2
2
a
+ b
   

bx

2

-

 

S=x tg

3

2

(x + b)

2

+ a /

x + b
x + b

;

Q=

a ;

6

 

e

ax

-

1

7

R=x (

2

x +

1) /

b -

sin

2

(

x + a

)

 

;

s=

xb / a + cos 2

xb / a + cos

2

(x + b)

3

 

Y=sin

3

(x

2

+

a)

2

-

x / b
x / b

;

z=

x

2

+

cos(x

+

b)

3

 

8

 

a

 

9

F= 3 m * tg ( t ) + | c * sin( t )

F= 3 m * tg(t )+ | c * sin(t ) | ; z=m cos( bt*sin(t) )+c

 

10

Y=b tg

2

x -

sin

2

a

(

x

/

a

)

 

;

d=a e

-

a
a

cos(bx / a)

 

11

F=ln(a+x ) sin (

2

2

x

/

b

)

;

z=e

- cx

x + x + a x - | x - b |
x
+
x
+
a
x
-
| x
-
b |
 
 

Y=

a

2 x

+

b

-

x

cos(

a

+

b

)

x

 

;

 

r=

2 x + b
2
x
+
b

-

b

2

sin

3

( x

+

 

a) / x

12

 

x

+ 1

   
 

Z=

  Z= ax sin 2 x + e - 2 x ( x + b )

ax

sin 2

x

+

e

- 2 x

(

x

+

b

)

 

;

w=cos 2 3

x

- x /

2 2 a + b
2
2
a
+ b
 

13

 
 

U=

a

2

x

+

e

- x

cos

bx

 

;

 

f=e

2

x

ln(

a

+

x

)

-

b

3

x

ln(

b

-

x

)

 

14

bx

-

- x

e

sin

bx

+

1

   

15

Z=

sin x

2 2 1 + m sin x
2
2
1
+ m
sin
x

-

cm

ln

mx

;

s=e

-

ax

x
x

+ 1 +

e

-

bx

x + 1.5
x
+ 1.5

16

C=ln (x+7

| | x + a ) | | x + b
| |
x
+ a
)
| |
x
+ b
 

;

 

D=

1.5cos 2 x

3 tgx

 

5

Пример:

Вычислить значение выражения: C=ln (x+7

| a x + | ) | b x + |
| a
x
+ |
)
| b
x
+ |

;

D=

1.5cos 2 x

3 tgx

;

#include<stdio.h> #include<conio.h> #include<math.h> void main (void) { int x,a,b; float c,d; clrscr(); printf("Введите значения x,a,b:\n"); scanf("%d%d%d",&x,&a,&b);

c=log(x+7*sqrt(abs(x+a)/abs(x+b)));

d=1.5*pow(cos(x),2)/3*tan(x);

printf("Результат: c=%f d=%f",c,d); getch();}

Лабораторная работа N 2 Тема: Разветвленные программы Вычислить значение функции в зависимости от условий:

Вар

Функция

 

Условия

.

 

1

Ï at

2

ln

t

¸

1£ t £ 2

Y=

Ô

Ì

 

Ô

 

1

˝

Ô

Ô

t<1

Ó

e

at cos

bt

˛

 

t>2

2

Ï px

2

-

7

2

x

¸

x<1.3

Y=

Ô

Ô

Ì

Ô

Ô ln(

Ó

ax

3

x

+ 7

+

x 7 x
x
7
x

Ô

Ô

˝

Ô

) Ô

˛

 

x=1.3

x1.3

3

 

Ï ax

2

+

bx

+

c

¸

x<1.2

W=

Ô

Ô

Ì

a

/

x

2 x + 1 2 )/ x +
2
x
+
1
2
)/
x
+

+

bx

Ô

Ô

˝

x=1.2

Ô

Ô Ó (

a

+

1

Ô

Ô

˛

x>1.2

6

4

Ï

px

2

- 7/

x

2

¸

x<1.4

Q=

Ô

Ô

Ì

Ô

Ô

Ó

ax

ln(

3

x

x 7 | x + a |)
x
7
|
x
+
a
|)

+ 7

+

Ô

Ô

˝

Ô

Ô

˛

x=1.4

x>1.4

5

Ï

1.5cos

2

x

¸

 

x<1

Ô

Ô

x=1

Y=

Ô

Ì

Ô

1.8

(

ax

x -

2)

2

 

Ô

+

6

˝

Ô

 

Ô Ó 3 tgx

Ô

˛

1<x<2

 

x

2

6

Ï

x

3 x - a
3
x
-
a

¸

 

x>a

W=

Ô

Ì

x

sin

ax

 

Ô

 

˝

Ô

Ó

e

-

ax cos

Ô

 

x=a

ax

˛

 
   

x<a

7

Ï

bx

- ln(

bx

) ¸

b*x<1

Q=

Ô

Ì

1

Ô

˝

Ô

Ó

bx

+ ln(

bx

)

Ô

˛

b*x=1

b*x>1

8

Y=

Ï

Ì

Ó

sin

cos

x

2

ln

x

x ¸

x>3.5

˝

˛

 

x£ 3.5

9

F=

Ï ln(

Ô

Ì

Ô sin

Ó

x +

1)

¸

Ô

˝

| Ô

˛

2

| ax
|
ax
   

x>1

x£ 1

10

Z=

Ï

(ln
Ô

Ô + 1/

Ì

Ô

x

3

+

2

x

) /

x

x + t
x
+
t

Ó Ô cos

x sin

+

t

2

x + t ¸
x
+
t
¸

x

Ô

Ô

˝

Ô

Ô

˛

x<0.5

x=0.5

x>0.5

11

Ï

a

+ b

¸

x<2.8

Ô

x

Ô

S=

Ô

Ì

e

(

a

+

+

cos

b

) /(

x

Ô

x

+

1)

˝

2.8 £ x <6

Ô

Ô

e

x

+ sin

x

Ô

Ô

Ó

˛

x

6

7

12

Ï

Ô

a

ln

x

+

3 | a - x | ¸ Ô
3
|
a
-
x
|
¸
Ô
 

x>1

Y=

Ì

Ô 2

Ó

a

cos

x

+

3

x

2

˝

Ô

˛

x£ 1

13

Ï a

Ô

+

bi

2

+

c

¸

Ô

 

W=

Ô

Ì

i

Ô

i<4

i

˝

Ô

Ô

ai

+

bi

3

Ô

Ô

4 £ i £ 6

Ó

˛

 

i>6

14

Ï

i

2

+ 1

¸

 

Z=

Ô Ô sin(

Ì

Ô

a

n

1

 

)

)

Ô

Ô

˝

Ô

n*(i+1)>0

Ô cos( i +
Ó

n

Ô

˛

n*(i+1)<0

15

Ï

at

2

+

b

sin

t

+

1

¸

t<0.1

W=

Ô

Ô

Ì

at

+

b

Ô

Ô

˝

Ô

Ô

t=0.1

2 - cos t + 1
2
-
cos
t
+
1

Ô Ó at

Ô

˛

t>0.1

16

Ï e

x

-

e

-

x

¸

   

Ô Ô

x

(

)

x<1.5

2

Ô Ô

Y=

x

Ô Ô

Ì Ô 3

Ô Ô

Ô

˝

x

4

+

x

2

+

2

 

x=1.5

Ô Ô

10

Ó ˛

x>1.5

Пример:

 

Вычислить значение функции в зависимости от условий:

 

Ï

Ô

x

(

e

x

-

e

-

x

)

¸

Ô

x<1.5

Ô

2

 

Ô

Y=

Ô

x

Ô

x=1.5

Ì

Ô

x

4

+

3

x

2

+

2

˝

Ô

 

Ô

Ô

Ô

10

 

Ô

x>1.5

Ó

˛

#include<stdio.h>

#include<conio.h>

#include<math.h>

8

void main (void) { float x,Y; const float z=1.5; clrscr(); printf("Введите значение x:\n"); scanf("%f",&x); if (x<z) Y=x*((exp(x)-exp(-x))/2); else if (x==z) Y=x/(pow(x,4)+3*pow(x,2)+2); else Y=10; printf("x=%.3f, Y=%.3f",x,Y); getch();} Лабораторная работа N 3 Тема: Обработка одномерных масивов. Задан одномерный массив:

Вар

Условие

Величина

.

массива

1

Наити сумму и количество четных элементов из массива.

X[12]

2

Вычислить среднее арифметическое значение и произведение элементов на нечетных позициях.

Z[15]

3

Сравнить произведения положительных элементов с суммой четных элементов.

A[10]

4

Определить максимальный элемент массива, и узнать положительный он или отрицательный.

S[13]

5

Вычислить разность между произведением элементов и их средних арифметических значений. Определите четность разницы.

Y[12]

6

Вычислить произведение количества положительных элементов массива.

R[11]

7

Найти количество и среднее арифметическое значение элементов делящихся на три.

X[14]

8

Вычислить произведение сумм четных и нечетных элементов массива.

X[10]

9

Найти произведение между количеством элементов делящихся на два и их суммы.

K[15]

10

Вычислить среднее арифметическое значение нечетных элементов из первой ¾ массива.

M[16]

11

Вычислить сумму между первым элементом массива и последним нечетным элементом.

B[11]

9

12

Найти сумму и количество отрицательных элементов из первой половины массива.

N[13]

13

Найти количество нечетных элементов среди положительных элементов массива.

Z[10]

14

Сравнить сумму элементов из первой половины массива со средним арифметическим значением элементов из второй половины массива.

D[14]

15

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

P[13]

16

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

X[11]

Пример:

Задан одномерный массив X(11). Сравнить сумму четных элементов с произведением отрицательных элементов, исключая первый и последний элемент. #include<stdio.h> #include<conio.h> #include<math.h> void main (void) { int x[11],i,s=0,p=1; clrscr(); printf("Введите массив x[11]\n"); for(i=0;i<11;i++) { printf("x[%d] = ",i); scanf("%d",&x[i]); } printf("Исходный массив:\n"); for(i=0;i<11;i++) printf("%d ",x[i]);

for(i=1;i<10;i++){

if(fmod(x[i],2)==0) s+=x[i]; if(x[i]<0) p*=x[i];} printf("\nСумма четных элементов исключая первый и последний= %d",s); printf("\nПроизведение отрицательных элементов исключая первый и последний = %d",p); if(s>p) printf("\nСумма > Произведение"); else if (s<p) printf("\nСумма < Произведение"); else printf("\nСумма = Произведение"); getch();}

10

Лабораторная работа N 4 Тема: Обработка одномерных массивов.

Вар.

Условие

 

1

Задан одномерный массив X[n]. Создать одномерные массивы Y и Z. Массив Y содержит отрицательные элементы массива X, а массив Z – положительные элементы.

2

Заданы 2 одномерных массива A[n] şi B[n]. Вычислить значение выражения

где S1 и K1 сумма и количество положительных элементов из массива A, а S2 и K2 - сумма и количество положительных элементов из массива B.

S

1

+

S

2

K

2

,

Z

=

K

1*

3

Задан одномерный массив K[n]. Узнать количество нечетных элементов, значение которых возведенное в квадратную степень меньше чем 100.

4

Задан одномерный массив F[n]. Определите позиции и значения первых 3-х отрицательных элементов.

5

Задан одномерный массив K[n]. Создать одномерные массивы

L и M. Массив L будет содержать четные элементы массива K,

а массив M - нечетные.

 

6

Заданы 2 одномерных массива Q[n] и R[n].

 

Вычислить значение выражения

e

S

1

+

e

S

2

F

=

K 1* K 2
K
1*
K
2

,

где S1 и K1 сумма и количество четных элементов из массива

Q,

а

S2 и K2- сумма и количество нечетных элементов из массива

R.

7

Задан одномерный массив Y[n]. Вычислить сумму квадратных корней нечетных элементов.

8

Задан одномерный массив D[n]. Определить значения и позиции, последних двух четных элементов.

9

Задан одномерный массив A[n]. Содать одномерные массивы B

и C. Массив B будет содержать элементы, кратные 3, а массив

C

элементы не кратные 3.

10

Заданы 2 одномерных массива F[n] и G[n].

 
 

S

Вычислить значение выражения T=

e

K

+(S*K),

 

где S сумма четных элементов расположенных на нечетных

позициях массива F, а K – количество четных элементов расположенных на нечетных позициях массива G.

11

Задан одномерный массив P[n]. Найти значение и позицию

11

 

первого положительного элемента массива.

12

Задано одномерный массив Q[n]. Найти значение и позицию максимального элемента среди нечетных элементов.

13

Задан одномерный массив R[n]. Создать одномерные массивы T и U. Массив T будет содержать элементы, расположенные на четных позициях R, а массив U – элементы, расположенные на нечетных позициях.

14

Заданы 2 одномерных массива X[n] и Y[n]. Вычислить

S=cos(P+M) - P * M , где P произведение нечетных элементов из

S=cos(P+M) - P * M , где P произведение нечетных элементов из массива X, а M – среднее арифметическое значение нечетных элементов из массива Y.

15

Задан одномерный массив M[n]. Определите значение и позицию последнего нечетного элемента массива.

16

Задан одномерный массив W[n]. Узнайте значение и позицию минимального элемента среди четных элементов.

Пример:

Задан одномерный массив W[n]. Узнайте значение и позицию минимального элемента среди четных элементов. #include<stdio.h> #include<conio.h> #include<math.h> void main (void) { int w[50],n,i,min,z; clrscr(); printf("Введите величину массива n<=50 "); scanf("%d",&n); printf("Введите массив w[%d]\n",n); for(i=0;i<n;i++) { printf("w[%d] = ",i); scanf("%d",&w[i]); if (fmod(w[i],2)==0) {min=w[i]; z=i;} } printf("\nИсходный массив:\n\n"); for(i=0;i<n;i++) { printf("%3d ",w[i]); if ((fmod(w[i],2)==0)&&(w[i]<min)) {min=w[i]; z=i;} } printf("\n\пМинимальный элемент среди четных элементов w[%d] = %d",z,min); getch();}

Лабораторная работа N 5 Тема: Обработка двумерных массивов.

12

Задан двумерный массив:

Вар

Условие

 

Массив

.

 

1

Вычислить сумму и произведение положительных нечетных элементов массива.

Z[5][4]

2

Вычислить среднее арифметическое значение

среднее арифметическое значение отрицательных элементов из

отрицательных элементов из заштрихованной области.

X[6][6]

3

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

A[5][6]

4

Вычислить сумму нечетных элементов из 2-й колонки.

S[5][4]

5

Вычислить разницу между суммой элементов из 1-го ряда и суммой элементов 2-го ряда.

D[6][4]

6

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

F[6][4]

7

Вычислить сумму и количество четных элементов из первой и последней колонки.

V[4][6]

8

Вычислить

 

X[8][8]

     

произведение

четных

элементов

   

заштрихованной области.

 

9

Вычислить среднюю арифметическую величину элементов из первого ряда и последней колонны.

B[5][7]

10

Сравнить количество нечетных элементов из последнего ряда с выражением элемента N[1][1].

N[5][4]

11

Вычислить сумму и количество отрицательных элементов выше 4-го ряда.

X[7][4]

12

Сравнить произведение элементов расположенных правее второй колонны со значением элемента [3.3].

T[4][6]

13

Вычислить сумму и количество положительных

W[8][8]

элементов из заштрихованной области .

элементов из заштрихованной области.

 

14

Вычислить разницу между произведением положительных элементов массива и средне арифметическим значением элементов расположенных выше 4-го ряда.

K[7][5]

15

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

X[8][4]

13

16

Найти количество элементов делящихся на три из последних двух колонок.

Y[6][4]

Пример:

Задан двумерный массив Y[6][4]. Найти количество элементов делящихся на три из последних двух колонок. #include<stdio.h> #include<conio.h> #include<math.h> void main(void) { int y[6][4],i,j,k; clrscr(); printf("\nВведите массив y[6][4]\n\n");

for(i=0;i<6;i++){

for(j=0;j<4;j++){

printf("y[%d][%d]= ",i,j); scanf("%d",&y[i][j]);}} printf("\nИсходный массив:\n");

for(i=0;i<6;i++){

for(j=0;j<4;j++){

printf("%3d ",y[i][j]);} printf("\n");}

k=0;

for(i=0;i<6;i++){

for(j=2;j<4;j++){

if(fmod(y[i][j],3)==0) k++;}} printf("\nКоличество элементов делящихся на три из последних двух колонн = %d",k); getch();}

Лабораторная работа N6

Тема: Генератор случайных чисел.

Задан двумерный массив X[n][n]. По желанию пользователя заполнить массив:

a) С помощью генератора случайных чисел.

b) Вручную.

14

Вар.

Условие

1.

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

2.

Расставить в возрастающем порядке элементы каждого ряда.

3.

Поменять местами элементы I области области.

3. Поменять местами элементы I области области . с элементами IV

с элементами IV

4.

Поменять местами максимальный элемент из массива с минимальным элементом массива.

5.

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

6.

Расставить в возрастающем порядке элементы каждой колонны.

7.

Поменять местами элементы II области области.

7. Поменять местами элементы II области области . с элементами III

с элементами III

8.

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

9.

Поменять местами элементы второй колонны с элементами колонны указанной пользователем.

10.

Расставить в убывающем порядке элементы каждого ряда.

11.

Поменять местами элементы III области области

11. Поменять местами элементы III области области с элементами IV

с элементами IV

12.

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

13.

Поменять местами элементы первой колонки с элементами последнего ряда.

14.

Расставить в убывающем порядке элементы каждого ряда.

15.

Поменять местами элементы II области области.

15. Поменять местами элементы II области области . с элементами IV

с элементами IV

16.

Поменять местами максимальный элемент колонки указанной пользователем с минимальным элементом 3-го ряда.

15

Пример:

Задан двумерный массив X[n][n]. По желанию пользователя заполнить массив:

c) С помощью генератора случайных чисел.

d) Вручную.

Поменять местами максимальный элемент колонки указанной пользователем с минимальным элементом 3-го ряда. #include<stdlib.h> #include<stdio.h> #include<conio.h> void main(void) { int x[20][20],n,i,j,min,minj,max,maxi,maxj,aux; char z; clrscr(); printf("\nВведите величину массива 3<n<20 "); scanf("%d",&n); label: clrscr();

printf("\n\nВыберите метод заполнения массива (a/m):\n");

printf("\n

a- Автоматично\n");

printf("\n

m- Вручную\n");

z=getch(); if((z=='a')||(z=='A')) goto automat; else if((z=='m')||(z=='M')) goto manual; else goto label; automat:randomize();

for(i=0;i<n;i++){

for(j=0;j<n;j++){

x[i][j]=random(19)-9;}}

goto masiv; manual: printf("\nВведите массив x[%d][%d]\n",n,n);

for(i=0;i<n;i++){

for(j=0;j<n;j++){

printf("x[%d][%d]= ",i,j); scanf("%d",&x[i][j]);}} masiv: clrscr(); printf("\nМассив x[%d][%d] исходный:\n\n",n,n);

for(i=0;i<n;i++){

for(j=0;j<n;j++){

printf("%3d ",x[i][j]);} printf("\n\n");} min=x[3][0]; minj=0;

16

for(j=0;j<n;j++)

if (x[3][j]<min) {min=x[3][j]; minj=j;} printf("\nМинимальный элемент 3-го ряда x[3][%d]= %d\n",minj,min); printf("\nУкажите желаемую колонку "); scanf("%d",&maxj); max=x[0][maxj]; maxi=0;

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

if (x[i][maxj]>max) {max=x[i][maxj]; maxi=i;} printf("\nМаксимальный элемент с колонки %d x[%d][%d]= %d\n", maxj,maxi, maxj,max);

aux=x[3][minj];

x[3][minj]=x[maxi][maxj];

x[maxi][maxj]=aux; printf("\nМассив x[%d][%d] финальный:\n\n",n,n);

Лабораторная работа N 7 Тема: Циклико-разветвленные процессы. Вычислить значение функции на данном интервале с данным шагом аргумента, в зависимости от условия.

Вар.

Функция

 

Условие

Интервал

Шаг

аргумента

1.

 

Ï ctg t

(

)

+

(

t

+

d

)

3

*(

c

/ 2)

 

¸

t<c

   

F=

Ô

Ô

t1<t<t2

h1

Ì d

*

t

+

ln(

t

+

c

)

˝

 

Ô sin(

Ó

c

+

d

*

t

)

+

cos(

d

 

)

Ô

t=c

   

-

t

˛

   

c1<=c<=c2

h2

t>c

2.

 

Ï a

*

x

+

b

*

2

x

-

c

¸

X<a

   

S=

Ô

Ô

Ì

Ô

Ô (

Ó

/

a

a

x

+

+

b

Ô Ô x + 1 ˝ Ô * x ) / x + 1 Ô
Ô
Ô
x
+
1
˝
Ô
*
x
) /
x
+
1
Ô
˛
 

x2<=x<=x3

h1

 

x=a

   

a1<=a<=a2

h2

 

x>a

3.

 

Ï

3

(

x

)

+

x

2

) /

( x + t ) ¸
(
x
+
t
)
¸
 

X<t

   

Z=

(ln
Ô

Ô 1/

Ì +

( x + t )
(
x
+
t
)

x

Ô cos( )

Ô

Ó

x

+ * sin(

t

x

)

Ô

Ô

˝

Ô

Ô

˛

x=t

x>t

x1<=x<=x2

t1<=t<=t2

h1

h2

4.

Y=

Ï p

Ô

Ô

Ì

Ô

Ô tg

Ó

*

*

(

a

2

x

x

x

3

+

- /

a

x

+ 7/

7*

x a
x
a

2

¸

Ô

Ô

˝

Ô

) Ô

˛

X<a

x=a

x1<=x<=x2

h1

17

   

x>a

a1<=a<=a2

h2

5.

Ï

t

3

t - a
t
-
a

+

b

¸

t<b

   

S=

Ô

Ì * sin(

a

b

cos(

* )

t

b

* )

t

Ô at

Ó

-

e

*

Ô

t1<=t<=t2

h1

˝

Ô

˛

t=b

 

b1<=b<=b2

h2

t>b

6.

Ï a

*

x

-

lg(

a

*

x

) ¸

A<x

   

F=

Ô

Ì

10

 

Ô

a1<=a<=a2

h1

˝

Ô

Ó

a

*

x

+

lg(

a

*

x

)

Ô

˛

a=x

x1<=x<=x2

h2

 

a>x

7.

Ï

* sin(
Ô

e

- bx
-
bx

c

*

x

)

¸

Ô

x<c

   

Y=

Ì cos(

a

*

x

) +

c

˝

x1<=x<=x2

h1

Ô *cos*

Ó *

e

- ax
-
ax

c

x

)

Ô

˛

x=c

c1<=c<=c2

h2

 

x>c

8.

S=

x
x

Ï

cos(
Ô

Ô sin(

Ì

-

e

a

*

x

) /

x

) +

c

c

2

¸

Ô

Ô

˝

x<c

x1<=x<=x2

h1

Ô

Ô e

Ó

-

x
x

*

sin(

a

*

c

*

x

Ô

) Ô

˛

x=c

 

c1<=c<=c2

h2

x>c

9.

Ï

(

e

- 2 x

* sin(

b

*

x

)

¸

x>b

   

Z=

Ô

Ô

Ì

cos(

b

*

x

)

Ô

Ô

˝

x1<=x<=x2

h1

Ô

Ô Ó cos(

*

e

-

x

b

*

x

)

Ô

Ô

˛

x=b

x<b

b1<=b<=b2

h2

10.

Ï

a

*

t

2

-

b

*

t + 1
t
+
1

¸

t<b

   

F=

Ô

Ì

a

-

b

*

t

 

Ô

t1<=t<=t2

h1

˝

Ô

Ó

(

a

*

t

2

)/

b

3

-

b

3

*

Ô t + 1 ˛
Ô
t
+
1
˛

t=b

   
 

b1<=b<=b2

h2

t>b

11.

Ï

d

*

t

2

+

a
a

¸

t<d

   

Y=

Ô

Ô

Ì

a

*

t

2 - d

*

t

Ô

Ô

˝

t1<=t<=t2

h1

Ô

Ô Ó + sin(

t

2

d

)

Ô

Ô

˛

t=d

d1<=d<=d2

h2

t>d

12.

Ï a

*

t

+

b

¸

t<a

   

K=

Ô

Ì

cos(

a

) *

t

 

Ô

t1<=t<=t2

h1

˝

Ô

Ó

-

e

at * cos(

a

) *

Ô

t=a

   

t

˛

18

   

t>a

a1<=a<=a2

h2

13.

 

Ï a

*

t

2

* ln(

b

)

¸

t=b

   

Z=

Ô

Ô

t1<=t<=t2

h1

Ì

a

+

b

*

t

˝

 

Ô

Ó

e

at

*cos(

b

* )

t

Ô

˛

 

t>b

b1<=b<=b2

h2

 

t<b

14.

 

Ï

3 x + a
3
x
+
a

¸

x>a