- •Тема и название работы
- •Задание на разработку проекта и вариант задания
- •Формализация задания
- •Разработка проекта
- •Разработка графического интерфейса пользователя
- •Установка свойств объектов
- •Разработка схемы алгоритма
- •Написание программного кода с использованием процедур
- •Результаты выполнения проекта
- •Доказательство правильности работы программы
Ордена Трудового Красного Знамени федеральное государственное
бюджетное образовательное учреждение высшего образования
Московский технический университет связи и информатики
|
Предмет: Языки программирования
Лабораторная работа №3 по теме:
«Программирование алгоритмов итеративных циклических структур»
Проверил(а): Саркисова И.О.
2 курс, факультет ЦЗОПБ
Группа БИК1953
Вариант 24
Москва, 2020
Оглавление
Тема и название работы
Программирование алгоритмов итеративных циклических структур. Вычисление с точностью до значение заданного выражения.
Задание на разработку проекта и вариант задания
Создать проект с именем YaP-LR-03C для вычисления с точностью до значение выражения , воспользовавшись разложением в ряд:
Проверить правильность решения сравнив со значением, полученным в результате вычисления стандартной функцией C# Match.Log(). Составить схему алгоритма и написать программный код в соответствии с заданием. Если необходимо, предварительно провести формализацию.
Формализация задания
Для решения поставленной задачи необходимо использовать итерационную формулу
задаётся параметром x функции «private void Calculate(double x, double e)». На каждой итерации цикла выводить номер итерации и приближённый корень в два ListBox. Вычисленный приближенный корень по итерационной формуле и корень, вычисленный с помощью стандартной функции C# Math.Log() а также их модуль разности вывести в TextBox.
Разработка проекта
Разработка графического интерфейса пользователя
Разработанная форма интерфейса пользователя приведена на рис. 4.1.
Анализируя задание на разработку проекта, можно сделать вывод, что для организации ввода и вывода данных можно использовать пять элементов управления. Для ввода аргумента и точности используется объект TextBox. Для вывода приближенного корня, вычисленного по итерационной формуле и корня, вычисленного с помощью стандартной функции C# Math.Log() а также модуля их разности так же используется объект TextBox только с установленным свойством ReadOnly в true что бы поле предназначенное для вывода нельзя было изменить вручную. Для отображения текстовой информации и для указания за что отвечают поля ввода и вывода используются объекты Label. Для вывода номера итерации и приближенного корня используются объекты ListBox которые позволяют выводить информацию в виде списка, так же если количество элементов больше, чем может показать окно списка то появляется полоса прокрутки, с помощью которой можно просмотреть все элементы, добавленные в список. Манипулирование элементами списка осуществляется с помощью свойства Items, для добавления используется метод Add() который в качестве аргумента может принимать строки, а для очистки списка используется метод Clear(). Так же элементы можно добавлять на стадии разработки, для этого надо поместить элементы списка в свойство Items, которое имеется в окне Properties элемента управления ListBox, щелкнув кнопку с тремя точками и составив нужный список в открывшемся диалоговом окне. Каждая строка этого свойства задает один элемент, для перехода на следующую строку надо нажать клавишу <Enter>, после набора всех элементов – щелкнуть ОК. Для объединения ListBox отвечающие за номер итерации и приближенного корня используется объект Panel.
Для вызова функций расчёта и выхода из программы используются объекты Button которые запускают соответствующие функции при нажатии на них.
Рис. 4.1
Установка свойств объектов
Свойства объектов управления разработанной формы приведены в таблице 4.2.
Объект |
Имя Объекта |
Свойство |
Значение свойства |
Form |
FormLab3 |
Name |
FormLab3 |
Font |
Century Gothic; 10pt |
||
Text |
ЗБИК1953_ЛР3_ЩеголевГГ_В24 |
||
BackColor |
Color.FromArgb(181, 208, 238) |
||
FormBorderStyle |
FormBorderStyle.FixedSingle |
||
Panel |
panel1ListBox |
Name |
panel1ListBox |
Label |
label1ApproximateRoot |
Name |
label1ApproximateRoot |
Font |
Century Gothic; 10pt |
||
Text |
Приближённый корень |
||
Label |
label3E |
Name |
label3E |
Font |
Century Gothic; 10pt |
||
Text |
E |
||
Label |
label4X |
Name |
label4X |
Font |
Century Gothic; 10pt |
||
Text |
X |
||
Label |
label5LogX |
Name |
label5LogX |
Font |
Century Gothic; 10pt |
||
Text |
X |
||
Label |
label5LogX |
Name |
label5LogX |
Font |
Century Gothic; 10pt |
||
Text |
X |
||
Label |
label6ApproximateX |
Name |
label6ApproximateX |
Font |
Century Gothic; 10pt |
||
Text |
≈X |
||
Label |
label7DeltaX |
Name |
label7DeltaX |
Font |
Century Gothic; 10pt |
||
Text |
ΔX |
||
TextBox |
textBox1E |
Name |
textBox1E |
Font |
Century Gothic, 12 point |
||
BackColor |
Color.FromArgb(155, 167, 183) |
||
BorderStyle |
BorderStyle.None |
||
TextBox |
textBox2X |
Name |
textBox2X |
Font |
Century Gothic, 12 point |
||
BackColor |
Color.FromArgb(155, 167, 183) |
||
BorderStyle |
BorderStyle.None |
||
TextBox |
textBox3LogX |
Name |
textBox3LogX |
Font |
Century Gothic, 12 point |
||
BackColor |
Color.FromArgb(155, 167, 183) |
||
BorderStyle |
BorderStyle.None |
||
ReadOnly |
true |
||
TextBox |
textBox4ApproximateX |
Name |
textBox4ApproximateX |
Font |
Century Gothic, 12 point |
||
BackColor |
Color.FromArgb(155, 167, 183) |
||
BorderStyle |
BorderStyle.None |
||
ReadOnly |
true |
||
TextBox |
textBox5DeltaX |
Name |
textBox5DeltaX |
Font |
Century Gothic, 12 point |
||
BackColor |
Color.FromArgb(155, 167, 183) |
||
BorderStyle |
BorderStyle.None |
||
ReadOnly |
true |
||
Button |
button1Calculate |
Name |
button1Calculate |
Font |
Century Gothic; 10pt |
||
Text |
Вычислить |
||
Click |
button1Calculate_Click |
||
BackColor |
Color.FromArgb(140, 156, 177) |
||
FlatStyle |
FlatStyle.Flat |
||
FlatAppearance.BorderSize |
0 |
||
FlatAppearance.MouseDownBackColor |
Color.FromArgb(123, 137, 155) |
||
FlatAppearance.MouseOverBackColor |
Color.FromArgb(158, 176, 199) |
||
Button |
button2Exit |
Name |
button2Exit |
Font |
Century Gothic; 10pt |
||
Text |
Выход |
||
Click |
button2Exit_Click |
||
BackColor |
Color.FromArgb(140, 156, 177) |
||
FlatStyle |
FlatStyle.Flat |
||
FlatAppearance.BorderSize |
0 |
||
FlatAppearance.MouseDownBackColor |
Color.FromArgb(123, 137, 155) |
||
FlatAppearance.MouseOverBackColor |
Color.FromArgb(158, 176, 199) |
||
ListBox |
listBox1ApproximateRoot |
Name |
listBox1ApproximateRoot |
Font |
Century Gothic; 10pt |
||
BackColor |
Color.FromArgb(224, 244, 244) |
||
BorderStyle |
BorderStyle.None |
||
ListBox |
listBox2Iteration |
Name |
listBox2Iteration |
Font |
Century Gothic; 10pt |
||
BackColor |
Color.FromArgb(224, 244, 244) |
||
BorderStyle |
BorderStyle.None |
Таблица 4.2