Курсовая работа по Visual Basic _2013-2014_
.pdf
|
|
Задача №4. |
«Графика» |
№ задания |
|
Содержание задания |
|
|
|
||
1. |
Построить график функции Y=3*x2 на отрезке [-5, 5] |
||
2. |
Построить график функции Y=(x+3)/(x-2) на отрезке [3, 10] |
||
3. |
Построить график функции Y=3+2/x+3/x2 на отрезке [-3, -1] |
||
4. |
Построить график функции Y=1/(x2-2*x+1) на отрезке [-10, 0] |
||
5. |
Построить окружность радиуса R=30 c центром в начале координат по |
||
|
заданному параметрическому представлению |
||
|
X=R*Cos(t); Y=R*Sin(t) 0 <= t <= 2*Pi |
||
6. |
Построить эллипс с большой и малой полуосями, равными R1=10 и R2=30 и |
||
|
расположенными параллельно осям координат по заданному |
||
|
параметрическому представлению |
||
|
X=R1*Cos(t); Y=R2*Sin(t); 0 <= t <= 2*Pi |
||
7. |
Построить кардиоиду по заданному параметрическому представлению |
||
|
X=a*Cos(t)*(1+Cos(t)); Y=a*Sin(t)*(1+Cos(t)); a=15; 0 <= t <= 2*Pi |
||
8. |
Построить эпициклоиду по заданному параметрическому представлению |
||
|
X=(a+b)*Cos(t)-a*Cos((a+b)*t/a); Y=(a+b)*Sin(t)-a*Sin((a+b)*t/a); a=12; |
||
|
b=5; |
0 <= t<= 2*PI |
|
9. |
Построить лемнискату по уравнениям в полярных координатах (p - радиус |
||
|
вектор; f - угол) p=a*(2*Cos(2*f))^(1/2); при a=5 |
||
10. |
Построить спираль вокруг начала координат с N витками и внешним |
||
|
радиусом R. Начальное направление спирали образует с осью X угол 0 |
||
|
градусов. Параметрическое представление спирали |
||
|
X=R*Cos(t); Y=R*Sin(t); R=t/2; |
0 <= t <= 2*N*Pi |
|
11. |
Построить график функции Y=6*x2 на отрезке [-7, 6] |
||
12. |
Построить графикфункции Y=(x+4)/(x-3) на отрезке [4, 12] |
||
13. |
Построить график функции Y=5+2/x+2/x2 на отрезке [-7, -3] |
||
14. |
Построить график функции Y=1/(x2-2*x+4) на отрезке [-12, 3] |
||
15. |
Построить окружность радиуса R=60 c центром в начале координат по |
||
|
заданному параметрическому представлению |
||
|
X=R*Cos(t); Y=R*Sin(t) 0 <= t <= 2*Pi |
||
16. |
Построить эллипс с большой и малой полуосями, равными R1=20 и R2=50 и |
||
|
расположенными параллельно осям координат по заданному |
||
|
параметрическому представлению |
||
|
X=R1*Cos(t); Y=R2*Sin(t); 0 <= t <= 2*Pi |
||
17. |
Построить кардиоиду по заданному параметрическому представлению |
||
|
X=a*Cos(t)*(1+Cos(t)); Y=a*Sin(t)*(1+Cos(t)); a=15; 0 <= t <= 2*Pi |
||
18. |
Построить эпициклоиду по заданному параметрическому представлению |
||
|
X=(a+b)*Cos(t)-a*Cos((a+b)*t/a); Y=(a+b)*Sin(t)-a*Sin((a+b)*t/a); a=12; |
||
|
b=5; |
0 <= t<= 2*PI |
|
19. |
Построить лемнискату по уравнениям в полярных координатах (p - радиус |
||
|
вектор; f - угол) p=a*(2*Cos(2*f))^(1/2); при a=5 |
||
20. |
Построить спираль вокруг начала координат с N витками и внешним |
||
|
радиусом R. Начальное направление спирали образует с осью X угол 0 |
||
|
градусов. Параметрическое представление спирали |
||
|
X=R*Cos(t); Y=R*Sin(t); R=t/2; |
0 <= t <= 2*N*Pi |
11
№ задания |
Содержание задания |
|
|
21. |
Построить график функции Y=2*x2 на отрезке [-6, 6] |
22. |
Построить график функции Y=(x+3)/(x-2) на отрезке [3, 10] |
23. |
Построить окружность радиуса R=60 c центром в начале координат по |
|
заданному параметрическому представлению |
|
X=R*Cos(t); Y=R*Sin(t) 0 <= t <= 2*Pi |
24. |
Построить эллипс с большой и малой полуосями, равными R1=15 и R2=40 и |
|
расположенными параллельно осям координат по заданному |
|
параметрическому представлению |
|
X=R1*Cos(t); Y=R2*Sin(t); 0 <= t <= 2*Pi |
25. |
Построить кардиоиду по заданному параметрическому представлению |
|
X=a*Cos(t)*(1+Cos(t)); Y=a*Sin(t)*(1+Cos(t)); a=15; 0 <= t <= 2*Pi |
26. |
Построить эпициклоиду по заданному параметрическому представлению |
|
X=(a+b)*Cos(t)-a*Cos((a+b)*t/a); Y=(a+b)*Sin(t)-a*Sin((a+b)*t/a); a=18; b=7; |
|
0 <= t<= 2*PI |
27. |
Построить лемнискату по уравнениям в полярных координатах (p - радиус |
|
вектор; f - угол) p=a*(2*Cos(2*f))^(1/2); при a=5 |
28. |
Построить спираль вокруг начала координат с N витками и внешним |
|
|
|
радиусом R. Начальное направление спирали образует с осью X угол 0 |
|
градусов. Параметрическое представление спирали |
|
X=R*Cos(t); Y=R*Sin(t); R=t/2; 0 <= t <= 2*N*Pi |
|
|
29. |
Построить график функции Y=4+2/x+4/x2 на отрезке [-5, -2] |
30. |
Построить график функции Y=1/(x2-3*x+2) на отрезке [-8, 2] |
12
Пример выполнения курсовой работы
Для создания формы с краткой информацией о приложении (титульный лист курсовой работы) удобно использовать шаблон About Dialog . Пример оформления титульного листа курсовой работы в виде показан на рисунке 1.
Рисунок 1 – Титульный лист
На главном окне приложения размещается меню, созданное с использованием кнопок (CommandButton) или текстового меню. Пример реализации главного окна приложения показан на рисунке 1.
Рисунок 2 – Главное окно приложения
13
Пример выполнения задачи №1 «Сумма ряда»
1.1. Постановка задачи
Вычислить значение суммы ряда S. Сравнить полученное значение с точным решением Y, вычислив абсолютную и относительную погрешности.
S = ∑ x |
k |
Y = (e x − e− x ) −1 |
||||
n |
|
|
|
|
||
|
|
; |
|
|
|
|
|
|
|||||
k =2 |
k! |
(1 + 1/ 3) |
|
1.2. Схема алгоритма |
1.3. Исходный текст программы |
Начало |
|
N, x |
|
S = 0, f = 1 |
|
k = 2, N |
|
f = f * k |
|
S = S + x k / f |
|
Y =(ex-e-x)/(1+1/3)-1
A = Y - S
D= A/Y*100
S, Y, A, D
Конец
Рисунок 3 – Схема алгоритма
1.4. Экранная форма программы с примером решения задачи
Рисунок 4 – Экранная форма программы
14
Пример выполнения задачи №2 «Массивы»
1.1. Постановка задачи
Дан двумерный массив (матрица) размером NxM.
1.Определить сумму элементов, значения которых больше или равны заданному числу F.
2.Найти местоположения (номера индексов) максимальных элементов массива.
3.Все элементы с наибольшим значением заменить значением заданного числа F.
1.2.Схема алгоритма
|
Начало |
|
n, m, A_min, |
|
A_max, F |
|
S = 0 |
|
i = 0, n - 1 |
|
j = 0, m - 1 |
|
A(i, j) = Rnd |
|
Вывод A(i, j) |
|
max = A(0, 0) |
1 |
i = 0, n - 1 |
|
j = 0, m - 1 |
Нет
A(i, j) >= F
Да
S = S + A(i, j)
Нет
A(i, j) > max
Да
1 |
Ввод max |
Ввод S |
i = 0, n - 1 |
j = 0, m - 1 |
Нет |
A(i, j) = max |
Да |
Вывод i, j |
A(i, j) = f |
i = 0, n - 1 |
j = 0, m - 1
Вывод A(i, j)
Конец
max = A(i, j)
Рисунок 5 – Схема алгоритма
15
1.3. Исходный текст программы
16
1.4. Экранная форма программы с примером решения задачи
Рисунок 6 – Экранная форма программы
Для ввода значений переменных n (количество строк), m (количество столвцов), A_min и A_max) границы значений элементов массива, F (заданное число) используются текстовые поля (объект TextBox).
Для ввода элементов массива (матрицы) использован генератор случайных чисел (Rnd). Для вывода элементов массива использовано окно списка (объект List).
Результаты решения задачи выводятся:
−значение максимального элемента массива и сумма элементов, значения которых больше или равны заданному числу F – на метки
(объект Label);
−индексы элементов массива, имеющих наибольшее значение – в окно списка (объект List);
−преобразованный массив (после изменения значений элементов – в окно списка (объект List).
17
Пример выполнения задачи №3 «Строки»
1.1. Постановка задачи Дана строка. Определить, сколько раз в строке встречается заданный символ и
указать места расположения (позиции) этого символа в строке.
1.2. Схема алгоритма |
1.3. Исходный текст программы |
|
|
Начало |
|
|
Ввод Str1 |
|
|
Ввод Char |
|
|
K = 0 |
|
i = 0, Len(Str1) |
|
|
Нет |
|
|
Mid(Str1,i,1)=Char |
|
|
|
Да |
|
|
K = K + 1 |
|
|
Вывод i |
|
|
Вывод K |
|
|
Конец |
|
Рисунок 7 – |
Схема алгоритма |
|
1.4. Экранная форма программы с примером решения задачи
Рисунок 8 – Экранная форма программы
18
Пример выполнения задачи №4 «Графика»
1.1. Постановка задачи
Построить график функции Y=(x+3)/(x-2) на отрезке [3, 10].
1.2. Схема алгоритма |
1.3. Исходный текст программы |
Начало
Вычерчиваем оси, проставляем метки
x = 3 y = f(x)
Устанавливаем указатель
вначальную точку
x<= 10
y= f(x)
Вычерчиваем линию
x = x + 0.1
Конец цикла
Конец
Рисунок 9 – Схема алгоритма
19
1.4. Экранная форма программы с примером решения задачи
Рисунок 10 – Экранная форма программы
20