Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

6378

.pdf
Скачиваний:
0
Добавлен:
24.11.2025
Размер:
436.21 Кб
Скачать

Окончание табл. 2.1

1

 

 

 

2

 

 

 

 

 

 

 

3

 

 

lg x

3

 

x

 

, x 1

 

 

 

 

 

 

a

 

 

 

 

12

y

 

 

 

 

 

 

 

 

2

 

a = 0,9

 

 

 

 

 

 

 

 

 

 

, x 1

 

 

2a cos x 3x

 

 

 

 

a

bi

2

c,i 4

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

a = 2,1

13

 

i, 4 i 6

 

 

b = 1,8

 

 

 

ai bi3, i

6

c = –20,5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i2 1

 

i2 1

0

 

 

a sin

 

,

 

 

 

 

 

 

 

n

 

 

n

 

a = 0,3

14

 

 

 

 

z

 

 

i2 1

 

 

n = 10

 

 

 

1

0

 

cos i

,

 

n

 

 

 

 

 

n

 

 

 

 

 

 

 

at2 b sin t 1, t 0,1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t 0

 

 

 

 

 

a = 2,5

15

at b,

 

 

 

 

 

 

at2 b cos t 1, t 0,1

b = 0,4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пример выполнения работы

Вычислить на ЭВМ значение функции

at b, at 1 s cos at, at 1

e at cos at, at 1

для a = 1,3, b = 1,29.

Схема алгоритма решения представлена на рисунке 2.1.

10

1

 

 

 

 

начало

 

 

 

 

 

 

ввод исходных данных

 

 

 

 

2

 

 

 

 

 

 

a,b,t

 

вычисление значений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

s=f1(t)

 

функции s при любых at

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

да

 

 

 

 

 

 

4

 

at=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вычисление значений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

функции s при at= 1

 

 

нет

 

 

 

 

 

s=f2(x,z)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

 

at>1

да

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вычисление значений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

функции s при at>1

 

 

нет

 

 

 

 

 

s=f2(x,z)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

 

 

s

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вывод вычисленных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

значений функции s

9

 

 

 

 

 

 

 

 

 

 

 

конец

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 2.1 – Схема алгоритма программы

Программа, реализующая на языке VBA схему алгоритма, представленную на рисунке 2.1, имеет вид:

Sub LR2()

'Объявление переменных

Dim a As Double, b As Double, t As Double, s As Double

a= Val(InputBox("a=")) 'Ввод a

b= Val(InputBox("b=")) 'Ввод b

11

t = Val(InputBox("t=")) 'Ввод t

s = a * t + b 'Вычисление значения функции для любых at

If a * t = 1 Then s = Cos(a * t) 'Вычисление значения функции для at=1

If a * t > 1 Then s = Exp(-a * t) * Cos(a * t) 'Вычисление значения функции для at>1

sp = MsgBox(s, , "s=") 'Вывод s End Sub

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

1)a = 1, b = 1, t = 0,5, s = 1 0,5 + 1 = 1,5;

2)a = 1, b = 1, t = 1, s = cos(1) = 0,5403;

3)a = 2, b = 1, t = 1, s = e–2 cos(2) = 0,0563.

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

ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ ЦИКЛИЧЕСКОЙ СТРУКТУРЫ

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

Задания для самостоятельной подготовки

1. Изучить:

организацию алгоритмов циклической структуры;

возможности языка программирования для построения циклов;

приемы программирования: вычисление определенных интегралов по методу прямоугольников и трапеций;

свойства объектов.

2.Разработать алгоритм решения в соответствии с заданием.

3.Создать форму пользователя с необходимыми полями.

4.Составить программу решения задачи.

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

12

Задание к работе

Вычислить на ЭВМ значение интеграла

b

s f x dx,

a

приведенного в таблице 3.1, на заданном отрезке интегрирования [a,b] (в соответствии с вариантом задания). Считать заданным число разбиений отрезка интегрирования n и метод численного решения. Включить в программу вычисление точного значения интеграла по первообразной функции, приведенной в таблице 3.2. Вывести приближенное, точное значения интеграла и относительную погрешность вычисления в процентах.

Таблица 3.1

 

Подынтегральная

Метод

Число

Отрезок

Требуемая

Вариант

численного

разбиений

интегри-

 

функция f(x)

решения

n

рования a,b

точность

1

 

 

2

 

3

4

5

6

1

(ln2 x) / x

Метод

60

[1;4]

10–4

 

 

 

 

 

трапеций

 

 

 

 

1

sin 1

Метод

 

 

0,5.10–3

2

прямо-

50

[1;2,5]

 

x 2

 

 

x

угольников

 

 

 

3

xx 1 ln x

Метод

40

[1;3]

10–4

 

 

 

 

 

трапеций

 

 

 

4

 

cos x

 

-//-

60

[0; /2]

10–4

5

 

sin2 x

 

-//-

60

[0; /2]

0,5.10–3

6

 

ex sin x

 

-//-

100

[0;1]

10–4

 

((ln x) / x)2

Метод

 

 

10–4

7

прямо-

50

[1;2,5]

 

 

 

 

 

угольников

 

 

 

8

 

x arctg x

Метод

50

[0;3]

0,5.10–3

 

 

 

 

 

трапеций

 

 

 

9

 

 

 

2

Метод

 

 

10–5

1 /

9 x

прямо-

100

[0;2]

 

 

угольников

 

 

 

 

 

 

 

 

 

 

 

10

 

ex cos2 x

Метод

60

[0; ]

10–4

 

 

 

 

 

трапеций

 

 

 

13

Окончание табл. 3.1

1

 

 

 

2

 

 

3

4

5

6

 

x3 / 3 x2

Метод

 

 

0,5.10–4

11

прямо-

80

[1;2]

 

 

 

 

 

 

 

угольников

 

 

 

12

x2 ln(x2 1)

Метод

50

1;2

10–4

 

 

 

 

 

 

 

трапеций

 

 

 

 

 

e

x

e

x

 

Метод

 

 

 

13

x

 

 

 

прямо-

50

0;2

10–4

 

 

2

 

 

 

 

 

 

 

угольников

 

 

 

 

 

 

 

 

 

 

 

 

 

14

x2 sin2 x

 

Метод

100

1;2

10–4

 

 

 

 

 

 

 

трапеций

 

 

 

15

 

 

 

x

 

 

-//-

50

1;2

0,5.10–3

 

 

x 1

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.2

Ва-

Первообразные функции

риант

F x

f x dx

1

2

 

1(ln3 x) / 3

2cos 1 / x

3

 

 

 

 

 

 

xx

 

 

 

 

 

4

 

 

 

 

 

sin x

 

 

 

 

5

 

 

 

x

 

sin 2x

 

 

 

 

 

 

2

 

 

4

 

 

 

 

6

 

ex

 

 

 

 

 

 

 

 

2 sin x cos x

 

 

7

 

1 ln2 x 2 ln x 2

 

 

x

 

 

 

 

 

 

 

 

 

 

8

x2

1

arctg x

x

 

 

 

2

 

 

 

2

 

9

 

ln

 

 

x

2

9

 

 

x

 

 

 

 

 

 

 

 

 

 

 

1

2

1010ex cos 2x 2sin 2x 5

11x2 3 ln x2 3

 

 

 

 

 

2

 

 

 

 

2

 

 

 

 

 

 

 

 

x3

 

 

 

 

 

 

 

 

2x3

 

 

2x

 

 

 

 

 

ln x2

1

9

3

 

12

 

3

 

 

 

 

 

 

 

 

 

 

2 arctg x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

1

x

 

1

 

13

 

e x

 

 

 

 

 

 

ex

 

 

 

 

 

 

2

2

2

2

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

 

x2

 

 

1

 

 

 

xcos2x

14

 

 

 

 

 

 

 

 

 

 

sin 2x

 

 

 

 

 

6

 

 

4

 

8

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15

 

 

2

 

 

x 2 arctg

 

 

x

 

 

14

В таблице 3.2 приведены выражения для вычисления первообразных функций

b f x dx F x ba F b F a .

a

Пример выполнения работы

Вычислить на ЭВМ методом трапеций значение интеграла

b

sin2 x

 

для a = 0, b = π,

s

 

dx,

1 cos x

a

 

 

разбивая отрезок интегрирования на 60 частей. Для контроля вычислить точное значение интеграла и оценить на ЭВМ относительную погрешность метода.

Вычислим точное значение интеграла

 

sin2 x

0

 

dx F(b) F(a) b sin b (a sin a) .

1 cos x

Для оформления интерфейса создадим форму пользователя:

заходим в редактор VBA (Alt+F11);

в меню выбираем команду Insert→UserForm;

изменяем название формы Caption (в окне Properties UserForm1) на «Иванов И.И. гр.101317 Лабораторная работа № 3»;

вставляем в форму из панели инструментов Toolbox/Controls

следующие объекты: 8 Label, 6 TextBox и один CommandButton;

располагаем объекты и изменяем заголовки Label и CommandButton как показано на рисунке 3.1.

Двойным щелчком по кнопке «Расчет» заходим в окно редактирования кода программы. В открывшемся окне набираем код программы.

15

Рисунок 3.1 – Внешний вид интерфейса программы

16

1

начало

 

 

 

2

a,b,n

ввод исходных данных

 

 

3

 

вычисление полусуммы значений функции

s=(fa+fb)/2

на концах отрезка

 

 

 

4

dx=(b-a)/n

расчет шага интегрирования

 

 

5

x=a, i=1

присвоение начальных значений x, i

 

 

 

 

условие выхода из цикла

6

i<=n

нет

 

 

7

да

 

 

 

 

x=x+dx

 

8

 

 

 

s=s+f(x)

 

9

 

изменение параметра условия

i=i+1

выхода из цикла

 

 

 

10

 

вычисление приближенного

 

s=s*dx

значения интеграла

 

 

11

 

вычисление точного значения

st=F(b)-F(a)

интеграла

 

 

 

12

 

вычисление погрешности

 

delta=(s-st)/st

 

 

13

 

вывод результатов

 

s, st, delta

 

 

 

конец

 

Рисунок 3.2 – Схема алгоритма циклической структуры

17

Код программы, реализующей схему алгоритма, представленного на рисунке 3.2, имеет вид:

Dim A As Double, B As Double, N As Integer, S As Double, St As Double, delta As Double, dX As Double

Dim X As Double, I As Integer

Private Sub CommandButton1_Click()

A = Val(TextBox1.Text)

B = Val(TextBox2.Text)

N = Val(TextBox3.Text)

dX = (B - A) / N

S = (((Sin(A)) ^ 2 / (1 + Cos(A))) + ((Sin(B)) ^ 2 / (1 + Cos(B)))) / 2 X = A

For I = 2 To N - 1

X = X + dX

S = S + (Sin(X)) ^ 2 / (1 + Cos(X))

Next I

S = S * dX

St = (B - Sin(B)) - (A - Sin(A)) delta = (St - S) / St

TextBox4.Text = Str(S)

TextBox5.Text = Str(St)

TextBox6.Text = Left(Str(delta), 5) + Right(Str(delta), 4)

End Sub

18

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

ОБРАБОТКА ОДНОМЕРНЫХ МАССИВОВ

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

Задания для самостоятельной подготовки

1. Изучить:

способы описания массивов на языке программирования;

способы ввода и вывода массивов;

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

2.Разработать алгоритм решения в соответствии с заданием.

3.Создать форму с соответствующими полями.

4.Составить программу решения задачи.

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

 

 

 

 

Задания к работе

1.

Обработать на ЭВМ одномерный массив в соответствии с ва-

риантом задания, указанного в таблице 4.1.

Таблица 4.1

Действия

 

 

Вариант

Массив

 

 

1

 

2

3

 

 

1

 

X(100)

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

 

 

 

 

 

тов массива Х

 

 

2

 

A(80)

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

 

 

 

массива А

 

 

3

 

X(70)

Переписать элементы массива Х, удовлетворяющие

 

 

 

 

 

условию –1<X<1, в массив Y и подсчитать их количество

 

 

4

 

В(50)

Определить максимальный элемент массива В и его

 

 

 

 

 

порядковый номер

 

 

5

 

C(40)

Вычислить минимальный элемент массива С и его номер

 

 

6

 

D(80)

Найти максимальный и минимальный элементы массива

 

 

 

D и поменять их местами

 

 

7

 

Y(20)

Вычислить среднее геометрическое элементов массива Y

 

19

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]