Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Доказательство правильности результата




Результат выполнения проекта приведен на рис. 4.4.5-4.

Пример выполнения задания

 

1) Тема и название лабораторной работы:

Программирование алгоритмов разветвляющихся структур.

Вычисление условных выражений.

2) Фамилия, имя студента, номер группы, номер варианта:

Иванов И., БИН1405, вариант 13.

3) Задание на разработку проекта:

Создайте проект с именем Проект-4 для вычисления сложной функции с условием r=f(x, y, z):

4) Формализация и уточнение задания:

Алгоритм решения данной задачи представляет собой комбинацию вычисления сложной функции с условием и выбора наименьшего (наибольшего) из нескольких значений. Он использует все виды разветвлений, и программируется с использованием как однострочных, так и блочных операторов If.

Данная задача решается с помощью процедуры Razv(), которая, получив в качестве входных параметров аргументы x, y, z, возвращает вычисленное значение r и номер ветки разветвляющейся функции n. Процедура vivod() предназначена для вывода в текстовое поле полученного значения функции r вещественного типа (Double) и для вывода номера n ветки разветвления целого типа (Integer), т.е. имеет аргументы разного типа, поэтому она является перегружаемой и объявлена как Overloads.

5) Элементы, разрабатываемого проекта:

5.1) Графический интерфейс пользователя:

Форма приложения может иметь такой же вид, как на рис. 4.4.5-1.

 

Рис. 4.4.5-1. Форма проекта Проект 4-1:
Вычисление
условных выражений.

5.2) Таблица свойств объектов:

Установите и сведите в таб. 4.4.5-2 свойства всех объектов.

 

Таблица 4.4.5-2

Объект Таблица П.4-2 Объект Имя объекта Свойство Значение свойства
Форма Form1 Name Form1
Text   ЛР по теме:Разветвляющиеся Разветвляющиеся структуры
Метка Label1 Text   Вычислить значение r=f(x,y,z)
ImageAlign MiddleCenter
Метка Label2 Text   X=
ImageAlign MiddleCenter
Метка Label3 Text Y=
Метка Label4 Text Z=
Метка Label5 Text R=
Текстовое поле TextBox1 Name TextBox1
Текстовое поле TextBox2 Name TextBox2
Текстовое поле TextBox3 Name TextBox3
Текстовое поле TextBox4 Name TextBox4
Кнопка Button1 Name Button1
Text Вычислить r=f(x, y, z)
Кнопка Button2 Name Button2
Text Конец

 

5.3) Схема алгоритма процедуры:

Схема алгоритма процедуры Razv() представлена на рис. 4.4.5-2.

 

Рис. 4.4.5-2. Схемы алгоритмов процедур Razv() проекта Проект 4-1:

Вычисление условных выражений

5.4) Программный код проекта приведен на рис. 4.4.5-3.

 

Imports System.Math Public Class Form1 'Функция ввода в TextBox Function vvod(ByVal T As TextBox) As Double Return Val(T.Text) End Function 'Перегружаемая процедура вывода вещест. результата в TextBox Overloads Sub vivod(ByVal Z As Double, ByVal T As TextBox) T.Text = CStr(Z) End Sub 'Перегружаемая процедура вывода целого результата в TextBox Overloads Sub vivod(ByVal Z As Integer, ByVal T As TextBox) T.Text = CStr(Z) End Sub Sub Razv(ByVal x As Double, ByVal y As Double, _ ByVal z As Double, ByRef r As Double,ByRef n As Integer) Dim r1, r2 As Double If y < x Then r1 = Sin(y): r2 = Cos(z) r = x ^ 2 If r1 < r Then r = r1 End If If r2 < r Then r = r2 End If n = 1 '1 ветвь разветвл. ф-ции ElseIf y <= z Then r1 = Log(z ^ 2): r2 = Exp(x + y) If r1 > r2 Then r = r1 Else r = r2 End If n = 2 '2 ветвь разветвл. ф-ции Else r = x + y + z n = 3 '3 ветвь разветвл. ф-ции End If End Sub Private Sub Button1_Click(sender As Object,e As EventArgs) _ Handles Button1.Click Dim x, y, z, r As Double Dim n As Integer x = vvod(TextBox1): y = vvod(TextBox2):z = vvod(TextBox3) Razv(x, y, z, r, n) vivod(r, TextBox4): vivod(n, TextBox5) End Sub Private Sub Button2_Click(sender As Object,e As EventArgs) _ Handles Button2.Click End End Sub End Class

 

Рис. П.1.4-3. Программный код проекта Проект 4-1:

Вычисление условных выражений.

 

 

Рис. 4.4.5-4. Результаты выполнения проекта Проект 4-1:

Вычисление условных выражений

 

Разработаны с тестовые исходные данные для контрольного решения, проверяющие все ветви процедуры функции, и получены результаты:

Исходные данные Результат № ветви
x=2 y=1 z=1 r= 0,540302305 n=1
x=1 y=2 z=3 r= 20,08553692 n=2
x=1 y=3 z=2 r= 6 n=3

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




Поделиться с друзьями:


Дата добавления: 2017-01-13; Просмотров: 281; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.