Similar presentations:
Основы программирования информационных систем
1.
Основыпрограммирования
информационных
систем
Преподаватель:
Олег Чеславович Ролич
кандидат технических наук, доцент
2.
Лабораторная работа 1ПРИМЕНЕНИЕ
ТЕХНОЛОГИИ ActiveX
В ПРОГРАММИРОВАНИИ
ИНФОРМАЦИОННЫХ
СИСТЕМ
3.
Цельработы
Применение стандартных
элементов
ActiveX
в
разработке
и
программировании
пользовательского
интерфейса
3
4.
Вопросы для самоподготовки1. Базовый принцип программирования
2. Атрибуты программных объектов
3. Форматы MSB (big endian) и LSB (little
endian) в представлении данных в памяти и
файлах
4. Представление целых беззнаковых чисел в
памяти: unsigned char, unsigned short,
unsigned int
4
5. Представление целых знаковых чисел в
памяти: signed char, signed short, signed int
5.
Вопросы для самоподготовки6.
Представление вещественных чисел в памяти
7. Массивы и их представление в памяти
8. Функции и их представление в памяти
9. Структуры их представление в памяти
10. Понятие указателя
11. Правила преобразования указателей
12. Указатели на массивы
13. Указатели на функции
14. Указатели на структуры
5
6.
Chart<ALT+F11
>
Использование
ActiveX-компонента
Chart в Microsoft
Office Excel на базе
языка VBA
6
7.
Итоговыйпользовательский
интерфейс
Chart
7
8.
ChartВ случае
отсутствия
у формы
панели
инструментов
8
9.
ChartCommandButton
Frame
9
10.
ChartProperties
Свойства объекта
Заголовок кнопки
10
11.
Важно!!!Properties
Свойство
модальности
формы
11
12.
ChartДвойной щелчок мыши на кнопке
12
13.
Триггер событиянажатия на кнопку
Private Sub CommandButton2_Click()
Dim myFile As String
Dim textline As String
Dim rows As Integer
myFile = Application.GetOpenFilename()
Open myFile For Input As #1
Do Until EOF(1)
Line Input #1, textline
ActiveCell.FormulaR1C1 = textline
ActiveCell.Offset(1, 0).Select
rows = rows + 1
Loop
Close #1
Chart
13
14.
Триггер событиянажатия на кнопку
Dim rRange As Range: Set rRange = Range(ActiveCell.Offset(
-rows, 0), ActiveCell.Offset(-1, 0))
Dim cChart As Chart: Set cChart = Charts.Add(,
ActiveSheet)
With cChart
.ChartType = xlLine
.SetSourceData Source:=rRange,
PlotBy:=xlColumns
.Location WHERE:=xlLocationAsObject,
Name:="Лист1"
End With
End Sub
Chart
14
15.
ChartПопытка запуска формы
15
16.
ChartВозможное появление окна предупреждения
о типе файла с поддержкой макросов
В случае отсутствия данного окна –
переход к слайду 20
16
17.
ChartВозможное появление окна предупреждения
о типе файла с поддержкой макросов
1
2
17
18.
ChartНастройка свойств документа для поддержки макросов
18
19.
ChartНастройка свойств документа для поддержки макросов
После этапов подключения макросов Excel
необходимо перезапустить!!!
19
20.
Повтордействий
слайда 15
Chart
Установить
удобную
ячейку
1
2
Нажать на кнопку
(массив данных
будет записываться
в колонке по
вертикали)
20
21.
ChartВыбор файла
Формат файла
данных
21
22.
ChartСоздание файла
данных
с помощью
среды MathCAD
Обратить
внимание на
формат данных
в созданном файле
22
23.
Создание файла данных с помощью среды MathCADСтепень
Клавиша ":"
Клавиша ";"
Степень
Возведение в степень
клавиша "^"
Клавиша "["
Пишется вручную
или выбирается отсюда
23
24.
Результат работы программы«Активное» (от «active») средство «Chart»
управления пользовательским
интерфейсом
24
25.
Первая частьлабораторной
работы № 1
ВЫПОЛНЕНА 25
26.
Image<ALT+F11
>
Использование
ActiveXкомпонента Image в
Microsoft Office
Excel на базе языка
26
27.
ImageCommandButton
OptionButton
Image
Итоговый пользовательский интерфейс
27
28.
ImageCommandButton
Image
OptionButton
28
29.
СвойстваUserForm
Image
Свойства объекта
Заголовок
формы
29
30.
СвойстваUserForm
Image
Свойство
модальности
формы
Достаточно
важно!!!
30
31.
СвойстваCommandButton
Image
Заголовок кнопки
Размеры кнопки
Width 306 х Height 24
31
32.
СвойстваCommandButton
Image
Размеры кнопки
Width 306 х Height 24
32
33.
СвойстваImage
Image
Размеры области
изображения
Width 306 х Height 186
33
34.
СвойстваImage
Image
Размеры области
изображения
Width 306 х Height 186
34
35.
СвойстваOptionButton1
Image
Заголовок
радиопереключателя 1
Важно!!!
Имя группы верхних
переключателей, не
зависящих от нижней группы
Размеры радиопереключателя 1
Width 93,75 х Height 18
35
36.
СвойстваOptionButton1
Image
Размеры
радиопереключателя 1
Width 93,75 х Height 18
36
37.
СвойстваOptionButton2
Image
Заголовок
радиопереключателя 2
Важно!!!
Имя группы верхних
переключателей, не
зависящих от нижней группы
Размеры радиопереключателя 2
Width 93,75 х Height 18
37
38.
СвойстваOptionButton2
Image
Размеры
радиопереключателя 2
Width 93,75 х Height 18
38
39.
СвойстваOptionButton3
Image
Заголовок
радиопереключателя 3
Важно!!!
Имя группы верхних
переключателей, не
зависящих от нижней группы
Размеры радиопереключателя 3
Width 84 х Height 18
39
40.
СвойстваOptionButton3
Image
Размеры
радиопереключателя 3
Width 84 х Height 18
40
41.
СвойстваOptionButton4
Image
Заголовок
радиопереключателя 4
Важно!!!
Имя группы нижних
переключателей, не зависящих
от верхней группы
Размеры радиопереключателя 4
Width 54 х Height 18
41
42.
СвойстваOptionButton4
Image
Размеры
радиопереключателя 4
Width 54 х Height 18
42
43.
СвойстваOptionButton5
Image
Заголовок
радиопереключателя 5
Важно!!!
Имя группы нижних
переключателей, не зависящих
от верхней группы
Размеры радиопереключателя 5
Width 93,75 х Height 18
43
44.
СвойстваOptionButton5
Image
Размеры радиопереключателя 5
Width 93,75 х Height 18
44
45.
Важно!!!Image
Убедиться в принадлежности
верхних
радиопереключателей
к одной группе GROUP_1
45
46.
Важно!!!Image
Убедиться в принадлежности
нижних
радиопереключателей
к одной группе GROUP_2
46
47.
ImageДвойной щелчок
левой клавишей
мыши на кнопке
47
48.
Триггер событиянажатия на кнопку
Image
48
49.
Триггер событиянажатия на кнопку
Image
Расшифровка самой длинной строки
предыдущего слайда
FilePathAndName =
Application.GetOpenFilename(filefilter:="PNG
Files(*.png),*.PNG,GIF Files(*.gif),*.gif,JPEG Files
(*.jpg;*.jpeg;*.jfif;*.jpe),*.jpg;*.jpeg;*.jfif;*.jpe,Bitma
p Files(*.bmp),*.bmp", FilterIndex:=3, Title:="Select a
File", MultiSelect:=False)
49
50.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
50
51.
Триггер событиянажатия
на радиопереключатель 1
Image
51
52.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
52
53.
Триггер событиянажатия
на радиопереключатель 2
Image
53
54.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
54
55.
Триггер событиянажатия
на радиопереключатель 3
Image
Для радиопереключателя
OptionButton3 триггер нажатия
на него написать самостоятельно
по аналогии с OptionButton1
и OptionButton2 в соответствии
с форматом LSB (little endian)
представления цветовых
компонентов в памяти
55
56.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
56
57.
Триггер событиянажатия
на радиопереключатель 4
Image
57
58.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
58
59.
Триггер событиянажатия
на радиопереключатель 5
Image
59
60.
Дополнительныйпрограммный код
в начале документа
(в области General)
Image
60
61.
Дополнительныйпрограммный код
в начале документа
(в области General)
Image
Расшифровка длинных строк предыдущего слайда
Private Declare PtrSafe Function GetObject Lib "gdi32" Alias
"GetObjectA" (ByVal hObject As LongPtr, ByVal nCount As
Long, lpObject As Any) As Long
Private Declare PtrSafe Function GetBitmapBits Lib "gdi32"
(ByVal hBitmap As LongPtr, ByVal dwCount As Long, lpBits As
Any) As Long
Private Declare PtrSafe Function SetBitmapBits Lib "gdi32"
(ByVal hBitmap As LongPtr, ByVal dwCount As Long, lpBits As
Any) As Long
61
62.
Запускпрограммы
Image
62
63.
ImageРабота программы: загрузка файла изображения
63
64.
ImageРабота программы: действие красного фильтра
64
65.
ImageРабота программы: действие зелёного фильтра
65
66.
ImageРабота программы: действие зелёного фильтра в полутоновом виде
66
67.
Вторая частьлабораторной
работы № 1
ВЫПОЛНЕНА 67
68.
Решение аналогичных задач в Visual Studio68
69.
ChartИспользование
ActiveX-компонента
Chart
в Visual Studio на
базе языка C#
Создание нового проекта в Visual
69
70.
ChartИспользование
ActiveXкомпонента
Chart
в Visual Studio
на базе языка C#
Указать имя проекта, например, LW_Chart
Указать доступное месторасположение, например, Z:/Share/и т.д.
Создание нового проекта в Visual Studio
70
71.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Рекомендуемый интерфейс пользователя
71
72.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Рекомендуемый интерфейс пользователя
72
73.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Примерные свойства формы Form1
73
74.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Примерные свойства кнопки button1
74
75.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Примерные свойства средства chart1
75
76.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Примерные свойства группы управления groupBox1
76
77.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Примерные свойства текстового поля textBox1
77
78.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Двойной щелчок
левой клавишей
мыши на кнопке
78
79.
ChartТриггер события
нажатия
на кнопку button1
Использование
ActiveXкомпонента
Chart
в Visual Studio
на базе языка
C#
79
80.
ChartИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Изменения в конструкторе формы
Изменения в том же файле…
80
81.
ChartЗапуск программы на выполнение
81
82.
ChartРабота
программы:
загрузка
файла данных
82
83.
ChartРабота программы: результат обработки файла данных
83
84.
Третья частьлабораторной
работы № 1
ВЫПОЛНЕНА 84
85.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Рекомендуемый интерфейс пользователя
85
86.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства формы Form1
86
87.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства кнопки button1
87
88.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства средства pictureBox1
88
89.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства группы управления groupBox1
89
90.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства группы управления groupBox1
90
91.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства радиопереключателя radioButton4
Внимание! В примере имена радиопереключателей неупорядочены!
91
92.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства радиопереключателя radioButton5
Внимание! В примере имена радиопереключателей неупорядочены!
92
93.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства радиопереключателя radioButton8
Внимание! В примере имена радиопереключателей неупорядочены!
93
94.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства радиопереключателя radioButton3
Внимание! В примере имена радиопереключателей неупорядочены!
94
95.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Примерные свойства радиопереключателя radioButton6
Внимание! В примере имена радиопереключателей неупорядочены!
95
96.
ImageИспользование ActiveX-компонента Image
в Visual Studio на базе языка C#
Двойной щелчок
левой клавишей
мыши на кнопке
96
97.
ImageИспользование ActiveX-компонента Chart
в Visual Studio на базе языка C#
Триггер события нажатия на кнопку button1
Не забыть дописать вручную компонент класса
97
98.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
«Красный компонент»
Использование
ActiveX-компонента
Image в Visual Studio
на базе языка C#
98
99.
ImageИспользование ActiveX-компонента Chart в Visual Studio на базе языка C#
Триггер события нажатия на радиопереключатель «Красный компонент»
99
100.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
«Зелёный компонент»
Использование
ActiveX-компонента
Image в Visual Studio
на базе языка C#
100
101.
ImageИспользование ActiveX-компонента Chart в Visual Studio на базе языка C#
Триггер события нажатия на радиопереключатель «Зелёный компонент»
101
102.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
«Синий компонент»
Использование
ActiveX-компонента
Image в Visual Studio
на базе языка C#
102
103.
ImageИспользование ActiveX-компонента Chart в Visual Studio на базе языка C#
Триггер события нажатия на радиопереключатель «Синий компонент»
103
104.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
«Цветное»
Использование
ActiveX-компонента
Image в Visual Studio
на базе языка C#
104
105.
ImageИспользование ActiveX-компонента Chart в Visual Studio на базе языка C#
Триггер события нажатия на радиопереключатель «Цветное»
105
106.
ImageДвойной щелчок
левой клавишей мыши
на радиопереключателе
«В оттенках серого»
Использование
ActiveX-компонента
Image в Visual Studio
на базе языка C#
106
107.
ImageИспользование ActiveX-компонента Chart в Visual Studio на базе языка C#
Триггер события нажатия на радиопереключатель «В оттенках серого»
107
108.
ImageЗапуск программы на выполнение
108
109.
ImageРабота программы:
загрузка файла
изображения
109
110.
ImageРабота программы: результат загрузки файла
изображения
110
111.
ImageРабота программы: результат красного цветофильтра
111
112.
ImageРабота программы: результат зелёного цветофильтра
112
113.
ImageРабота программы: результат зелёного цветофильтра
с представлением изображения в полутоновом виде
113
114.
Лабораторнаяработа № 1
ВЫПОЛНЕНА!
114
115.
Контрольные вопросы и задачи1. Основные технологии программирования
2. Основные принципы объектноориентированного программирования
3. Программирование, управляемое
событиями
4. Визуальное программирование
5. Стандарт COM
6. Технология OLE
7. Технология ActiveX
115
116.
Контрольные вопросы и задачиПредставить в памяти заданное
преподавателем число типов unsigned char,
unsigned short, signed char, signed short, float
9. Вычислить результат цепочки преобразований
типов «int → float → int» для исходно
заданного преподавателем числа, большего
100000000
10. Вычислить максимальное целое число, не
искажающееся после цепочки преобразований
типов «int → float → int»
116
8.
117.
Контрольные вопросы и задачи11. Написать программу инвертирования бита
двоичного представления в памяти исходного
целого или вещественного числа и вычислить
вручную результирующее числовое значение
на множестве того же типа (например, если
исходное число имело целый тип, то и
результат должен быть целочисленным, если
вещественный – то вещественным). Номер
инвертируемого бита и исходное число
задаются преподавателем
117
118.
Контрольные вопросы и задачи12. Написать функцию переписывания числа
(целого или вещественного по заданию
преподавателя) с разрядностью, кратной
байту, в направлении от младшего бита к
старшему
13. Текстовый формат хранения массивов
чисел
14. Бинарный (двоичный) формат хранения
массивов чисел
118
119.
Контрольные вопросы и задачи15. Понятие изображения и его представление в
памяти в контексте системы RGB
16. Формат BMP-файла
17. Структура битовой карты DIB
18. Отфильтровать изображение, отобразив его
красную, зелёную или синюю составляющую
в оттенках следующих цветов: жёлтого,
голубого,
пурпурного,
фиолетового,
коричневого (базовая составляющая и оттенок
распределяются преподавателем)
119
120.
Контрольные вопросы и задачи19. Сформировать бинарный файл одномерного массива
данных заданного преподавателем типа: unsigned
char, unsigned short, signed char, signed short, float в
форматах LSB и MSB
20. Сгенерировать векторное изображение размером
(N x N) пикселей, яркость красной, зелёной и синей
составляющих которого распределены следующим
образом (i, j – соответственно индексы строки и
столбца пикселя изображения):
a)
120
121.
Контрольные вопросы и задачиb)
c)
d)
e)
f)
121
122.
Контрольные вопросы и задачиg)
h)
В сечении
кардиоида
i)
В сечении
окружность
j)
k)
В сечении можно
выделить трилистник,
пятилистник и
семилистник
122
123.
Контрольные вопросы и задачиl)
m)
В перечисленных вариантах текущей задачи
(i0, j0) = (N/2, N/2)
– координаты центра
123
124.
Контрольные вопросы и задачи21. Построить графики для следующих массивов,
заданных явным способом, с учётом синтаксиса Сиподобных языков программирования, где PI – это
число π = 3.1415926, k = 0, 1, 2, …, (N – 1), N = 64:
a)
b)
c)
d)
e)
f)
g)
h)
f[k] = 2.0*sin((2*PI/N)*1*k + 0)
f[k] = 3.0*cos((2*PI/N)*5*k + 0)
f[k] = 5.0*sin((2*PI/N)*1*k + PI/2)
f[k] = 5.0*cos((2*PI/N)*3*k + PI/2)
f[k] = 1.0*cos((2*PI/N)*2*k – PI/2)
f[k] = 4.0*sin((2*PI/N)*3*k – PI/2)
f[k] = 4.0*cos((2*PI/N)*1*k + PI)
f[k] = 1.0*sin((2*PI/N)*2*k + PI)
124
125.
Контрольные вопросы и задачи21. Построить графики для следующих массивов,
заданных явным способом, с учётом синтаксиса Сиподобных языков программирования, где PI – это
число π = 3.1415926, k = 0, 1, 2, …, (N – 1), N = 64:
i)
j)
k)
l)
m)
n)
o)
p)
f[k] = 3.0*cos((2*PI/N)*2*k – PI)
f[k] = 4.0*sin((2*PI/N)*2*k – PI)
f[k] = 3.0*cos((2*PI/N)*3*k – PI)
f[k] = 1.0*sin((2*PI/N)*3*k – PI)
f[k] = –1.0*sin((2*PI/N)*1*k + 0)
f[k] = –3.0*sin((2*PI/N)*2*k + 0)
f[k] = –3.0*cos((2*PI/N)*3*k + 0)
f[k] = –1.0*sin((2*PI/N)*1*k + PI/2)
125
126.
Контрольные вопросы и задачи21. Построить графики для следующих массивов,
заданных явным способом, с учётом синтаксиса Сиподобных языков программирования, где PI – это
число π = 3.1415926, k = 0, 1, 2, …, (N – 1), N = 64:
q)
r)
s)
t)
u)
v)
w)
x)
f[k] = –5.0*cos((2*PI/N)*2*k + PI/2)
f[k] = –4.0*sin((2*PI/N)*3*k + PI/2)
f[k] = –4.0*sin((2*PI/N)*4*k + PI/2)
f[k] = –3.0*cos((2*PI/N)*5*k + PI/2)
f[k] = –4.0*cos((2*PI/N)*1*k – PI/2)
f[k] = –4.0*cos((2*PI/N)*2*k – PI/2)
f[k] = –5.0*sin((2*PI/N)*2*k – PI/2)
f[k] = –4.0*cos((2*PI/N)*3*k – PI/2)
126
127.
Контрольные вопросы и задачи21. Построить графики для следующих массивов,
заданных явным способом, с учётом синтаксиса Сиподобных языков программирования, где PI – это
число π = 3.1415926, k = 0, 1, 2, …, (N – 1), N = 64:
y)
z)
aa)
bb)
cc)
dd)
ee)
ff)
f[k] = –4.0*cos((2*PI/N)*4*k – PI/2)
f[k] = –3.0*sin((2*PI/N)*4*k – PI/2)
f[k] = –3.0*sin((2*PI/N)*1*k + PI)
f[k] = –5.0*cos((2*PI/N)*2*k + PI)
f[k] = –3.0*sin((2*PI/N)*2*k + PI)
f[k] = –2.0*cos((2*PI/N)*3*k + PI)
f[k] = –4.0*sin((2*PI/N)*3*k + PI)
f[k] = –3.0*cos((2*PI/N)*4*k + PI)
127
128.
Контрольные вопросы и задачи21. Построить графики для следующих массивов,
заданных явным способом, с учётом синтаксиса Сиподобных языков программирования, где PI – это
число π = 3.1415926, k = 0, 1, 2, …, (N – 1), N = 64:
gg) f[k] = –5.0*sin((2*PI/N)*4*k + PI)
hh) f[k] = –2.0*sin((2*PI/N)*5*k + PI)
ii)
f[k] = –3.0*cos((2*PI/N)*1*k – PI)
jj)
f[k] = –5.0*sin((2*PI/N)*1*k – PI)
kk) f[k] = –4.0*cos((2*PI/N)*2*k – PI)
ll)
f[k] = –2.0*sin((2*PI/N)*3*k – PI)
mm) f[k] = –4.0*cos((2*PI/N)*4*k – PI)
nn) f[k] = –4.0*cos((2*PI/N)*5*k – PI)
oo) f[k] = –3.0*sin((2*PI/N)*5*k – PI)
128
129.
Контрольные вопросы и задачи22. Дискретное преобразование Фурье (ДПФ)
массива f[N], N = 2p, p – натуральное число,
записывается в виде
где k = 0, 1, 2, …, (N – 1), n = 0, 1, 2, …, (N – 1),
i – мнимая единица. В результате ДПФ можно
построить амплитудно-частотную (АЧХ),
фазо-частотную (ФЧХ) и амплитудно-фазочастотную (АФЧХ) характеристики.
129
130.
Контрольные вопросы и задачиАЧХ – это зависимость |Cn|, ФЧХ – это зависимость
arg(Cn). И АЧХ, и ФЧХ представляются в виде
столбчатой диаграммы. АФЧХ строится в полярной
плоскости так, что каждому n на ней сопоставляется
точка с полярным углом arg(Cn), расстояние до которой
равно |Cn|.
Построить АЧХ и ФЧХ для следующих массивов f[N],
заданных явно с учётом синтаксиса Си-подобных языков
программирования, где PI – это число π = 3.1415926,
N = 16:
a) f[k] = 0.9 * cos((2*PI/N) * 3 * (k + N/8)) – 0.7 * sin((2*PI/N) * 5 * (k – N/4))
b) f[k] = –0.9 * sin((2*PI/N) * 3 * (k + N/8)) + 0.7 * cos((2*PI/N) * 5 * (k – N/4))
c) f[k] = –0.9 * sin((2*PI/N) * 3 * (k + N/8)) + 0.7 * cos((2*PI/N) * 5 * (k + N/4))
130
131.
Контрольные вопросы и задачиe) f[k] = 0.9 * sin((2*PI/N) * 3 * (k – N/8)) – 0.7 * cos((2*PI/N) * 5 * (k – N/4))
f) f[k] = –0.9 * sin((2*PI/N) * 3 * (k – N/8)) – 0.7 * cos((2*PI/N) * 5 * (k – N/4))
g) f[k] = –1.1 * cos((2*PI/N) * 3 * (k + N/8)) + 0.5 * sin((2*PI/N) * 5 * (k – N/4))
h) f[k] = 1.1 * sin((2*PI/N) * 3 * (k + N/8)) + 0.5 * sin((2*PI/N) * 5 * (k + N/4))
i) f[k] = 1.1 * sin((2*PI/N) * 3 * (k – N/8)) + 0.5 * sin((2*PI/N) * 5 * (k + N/4))
j) f[k] = –1.1 * sin((2*PI/N) * 3 * (k – N/8)) – 0.5 * cos((2*PI/N) * 5 * (k + N/4))
k) f[k] = –1.1 * cos((2*PI/N) * 3 * (k – N/8)) + 0.5 * cos((2*PI/N) * 5 * (k – N/4))
l) f[k] = –1.1 * sin((2*PI/N) * 3 * (k – N/8)) – 0.5 * cos((2*PI/N) * 5 * (k – N/4))
m) f[k] = 0.9 * cos((2*PI/N) * 3 * (k + N/6)) – 0.7 * cos((2*PI/N) * 5 * (k – N/9))
n) f[k] = –0.9 * sin((2*PI/N) * 3 * (k + N/6)) + 0.7 * cos((2*PI/N) * 5 * (k – N/9))
o) f[k] = 0.9 * cos((2*PI/N) * 3 * (k + N/6)) – 0.7 * cos((2*PI/N) * 5 * (k + N/9))
p) f[k] = –0.9 * sin((2*PI/N) * 3 * (k + N/6)) – 0.7 * sin((2*PI/N) * 5 * (k + N/9))
q) f[k] = –0.9 * cos((2*PI/N) * 3 * (k – N/6)) + 0.7 * sin((2*PI/N) * 5 * (k + N/9))
r) f[k] = 0.9 * sin((2*PI/N) * 3 * (k – N/6)) + 0.7 * sin((2*PI/N) * 5 * (k – N/9))
s) f[k] = –0.9 * cos((2*PI/N) * 3 * (k – N/6)) – 0.7 * sin((2*PI/N) * 5 * (k – N/9))
t) f[k] = 1.1 * sin((2*PI/N) * 3 * (k + N/6)) – 0.5 * cos((2*PI/N) * 5 * (k – N/9))
u) f[k] = –1.1 * cos((2*PI/N) * 3 * (k + N/6)) – 0.5 * sin((2*PI/N) * 5 * (k – N/9))
131
132.
Контрольные вопросы и задачиv) f[k] = 1.1 * cos((2*PI/N) * 3 * (k + N/6)) – 0.5 * cos((2*PI/N) * 5 * (k + N/9))
w) f[k] = –1.1 * cos((2*PI/N) * 3 * (k + N/6)) – 0.5 * sin((2*PI/N) * 5 * (k + N/9))
x) f[k] = 1.1 * sin((2*PI/N) * 3 * (k – N/6)) – 0.5 * sin((2*PI/N) * 5 * (k + N/9))
y) f[k] = –1.1 * sin((2*PI/N) * 3 * (k – N/6)) – 0.5 * cos((2*PI/N) * 5 * (k + N/9))
z) f[k] = 1.1 * cos((2*PI/N) * 3 * (k – N/6)) – 0.5 * cos((2*PI/N) * 5 * (k – N/9))
aa) f[k] = –1.1 * sin((2*PI/N) * 3 * (k – N/6)) – 0.5 * cos((2*PI/N) * 5 * (k – N/9))
bb) f[k] = –0.9 * cos((2*PI/N) * 3 * (k + N/8)) + 0.7 * sin((2*PI/N) * 4 * (k – N/4))
cc) f[k] = 0.9 * sin((2*PI/N) * 3 * (k + N/8)) – 0.7 * sin((2*PI/N) * 4 * (k + N/4))
dd) f[k] = –0.9 * sin((2*PI/N) * 3 * (k + N/8)) – 0.7 * cos((2*PI/N) * 4 * (k + N/4))
ee) f[k] = –0.9 * cos((2*PI/N) * 3 * (k – N/8)) + 0.7 * cos((2*PI/N) * 4 * (k + N/4))
ff) f[k] = 0.9 * sin((2*PI/N) * 3 * (k – N/8)) + 0.7 * cos((2*PI/N) * 4 * (k – N/4))
gg) f[k] = –0.9 * cos((2*PI/N) * 3 * (k – N/8)) – 0.7 * cos((2*PI/N) * 4 * (k – N/4))
hh) f[k] = –1.1 * cos((2*PI/N) * 3 * (k + N/8)) + 0.5 * sin((2*PI/N) * 4 * (k – N/4))
ii) f[k] = 1.1 * cos((2*PI/N) * 3 * (k + N/8)) – 0.5 * cos((2*PI/N) * 4 * (k + N/4))
jj) f[k] = –1.1 * sin((2*PI/N) * 3 * (k + N/8)) – 0.5 * sin((2*PI/N) * 4 * (k + N/4))
kk) f[k] = –1.1 * cos((2*PI/N) * 3 * (k – N/8)) + 0.5 * sin((2*PI/N) * 4 * (k + N/4))
ll) f[k] = 1.1 * sin((2*PI/N) * 3 * (k – N/8)) + 0.5 * sin((2*PI/N) * 4 * (k – N/4))
132
133.
Контрольные вопросы и задачиmm) f[k] = 1.1 * cos((2*PI/N) * 3 * (k + N/6)) – 0.5 * cos((2*PI/N) * 5 * (k + N/9))
nn) f[k] = –1.1 * sin((2*PI/N) * 3 * (k – N/8)) + 0.5 * cos((2*PI/N) * 4 * (k – N/4))
oo) f[k] = –0.9 * cos((2*PI/N) * 3 * (k + N/6)) – 0.7 * sin((2*PI/N) * 4 * (k – N/9))
pp) f[k] = 0.9 * sin((2*PI/N) * 3 * (k + N/6)) – 0.7 * cos((2*PI/N) * 4 * (k + N/9))
qq) f[k] = –0.9 * sin((2*PI/N) * 3 * (k + N/6)) + 0.7 * cos((2*PI/N) * 4 * (k + N/9))
rr) f[k] = 0.9 * cos((2*PI/N) * 3 * (k – N/6)) + 0.7 * sin((2*PI/N) * 4 * (k + N/9))
ss) f[k] = –0.9 * cos((2*PI/N) * 3 * (k – N/6)) + 0.7 * cos((2*PI/N) * 4 * (k + N/9))
tt) f[k] = –0.9 * sin((2*PI/N) * 3 * (k – N/6)) – 0.7 * sin((2*PI/N) * 4 * (k + N/9))
uu) f[k] = 0.9 * cos((2*PI/N) * 3 * (k – N/6)) – 0.7 * sin((2*PI/N) * 4 * (k – N/9))
vv) f[k] = 1.1 * cos((2*PI/N) * 3 * (k + N/6)) + 0.5 * cos((2*PI/N) * 4 * (k – N/9))
ww) f[k] = –1.1 * sin((2*PI/N) * 3 * (k + N/6)) + 0.5 * cos((2*PI/N) * 4 * (k – N/9))
xx) f[k] = 1.1 * sin((2*PI/N) * 3 * (k + N/6)) – 0.5 * sin((2*PI/N) * 4 * (k + N/9))
yy) f[k] = 1.1 * cos((2*PI/N) * 3 * (k – N/6)) + 0.5 * sin((2*PI/N) * 4 * (k + N/9))
zz) f[k] = –1.1 * sin((2*PI/N) * 3 * (k – N/6)) + 0.5 * sin((2*PI/N) * 4 * (k + N/9))
aaa) f[k] = 1.1 * cos((2*PI/N) * 3 * (k – N/6)) + 0.5 * cos((2*PI/N) * 4 * (k – N/9))
bbb) f[k] = 1.1 * sin((2*PI/N) * 3 * (k – N/6)) – 0.5 * cos((2*PI/N) * 4 * (k – N/9))
ccc) f[k] = –1.1 * cos((2*PI/N) * 3 * (k – N/6)) – 0.5 * cos((2*PI/N) * 4 * (k – N/9))
133
134.
Контрольные вопросы и задачи23. Построить
графики
массивов,
заданных
функционально посредством обратного дискретного
преобразования Фурье (ОДПФ):
134
135.
Контрольные вопросы и задачиПостроить поверхность
135
136.
Контрольные вопросы и задачи24. Построить гистограмму следующих составляющих
изображения: красной, зелёной, синей, жёлтой,
голубой, пурпурной, фиолетовой, коричневой
25. В BMP-файле бинарного (16-цветного или 256цветного)
изображения
заменить
заданный
преподавателем цвет, не корректируя при этом
непосредственную битовую карту (DIB)
26. Выделить в JPEG-файле тег с таблицей квантования
и представить её в матричном виде с учётом
зигзагообразной траектории
27. Выделить в JPEG-файле тег с таблицей Хаффмана и
построить гистограмму распределения длин кодов
Хаффмана
136