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

ФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ

МОСКОВСКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

СВЯЗИ И ИНФОРМАТИКИ

Кафедра информатики

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

по теме: «4.2. Основные средства языка программирования VB.NET. Типы данных»

Задание

Решить задачу вычисления арифметических выражений в двух вариантах (два проекта). В одном решении: первый проект с неявными преобразованиями типов данных, второй – с требованием явного преобразования (без инструкции Option Strict On и с использованием этой инструкции). Формализовать арифметические выражения, то есть записать выражение в формальном математическом виде, а затем записать полученные математические формулы в виде выражения по правилам языка программирования с учетом приоритета операций.

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

Для формализации и уточнения задания допустим, что х, у – исходные данные вещественного типа Double, а переменные i, f, j, n, p – результаты вычислений, причем i, j – переменные целого типа Integer, а f, n, p – вещественного типа Double. Выражение j=[f] означает, что вычисляется целая часть числа, полученная с помощью функции Int().

Запишем арифметическое выражение на языке программирования:

f = ((5.2^3)*log(x+y))/(x-(1/(0.45*sin(x-8*y))))+0.5

I = f; j = Fix(f)

Графический интерфейс

Таблица элементов.

Объект

Имя объекта

Свойство

Значение свойства

Форма

Form1

Name

Form1

Text

Вычисление арифметических выражений

Метка

Label

Text

Тема 4.2. Основные средства языка программирования VB.NET. Типы данных.

Метка

Label2

Text

Исходные данные

Метка

Label3

Text

Х=

Метка

Label4

Text

Y=

Метка

Label5

Text

Значение переменной f =

Метка

Label6

Text

Значение переменной i =

Метка

Label7

Text

Значение переменной j=Fix(f) =

Метка

Label8

Text

Значение переменной Int(f) =

Метка

Label9

Text

Значение переменной Int(Abs(f)) =

Текстовое поле

TextBox1

Name

TextBox1

Текстовое поле

TextBox2

Name

TextBox2

Текстовое поле

TextBox3

Name

TextBox3

Текстовое поле

TextBox4

Name

TextBox4

Текстовое поле

TextBox5

Name

TextBox5

Текстовое поле

TextBox6

Name

TextBox6

Текстовое поле

TextBox7

Name

TextBox7

Кнопка

Button1

Name

Button1

Text

Вычислить

Кнопка

Button3

Name

Button3

Text

Выход

Кнопка

Button2

Name

Button2

Text

Повторить

Программный код первого проекта

Imports System.Math 'подключение математического модуля

Public Class Form1

Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click

Dim x, y, f, j, n As Double, p As Single, i As Integer

x = TextBox1.Text

y = TextBox2.Text

f = ((5.2 ^ 3) * log(x + y)) / (x - (1 / (0.45 * sin(x - 8 * y)))) + 0.5

p = f

i = f

j = Fix(f)

n = Int(f)

TextBox3.Text = Str(f)

TextBox4.Text = Str(i)

TextBox5.Text = Str(j)

TextBox6.Text = Str(n)

TextBox7.Text = Str(p)

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

Application.Exit()

End Sub

Private Sub Button2_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

TextBox1.Clear()

TextBox2.Clear()

TextBox3.Clear()

TextBox4.Clear()

TextBox5.Clear()

TextBox6.Clear()

TextBox7.Clear()

End Sub

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

End Sub

End Class

Программный код второго проекта

Option Strict On

Imports System.Math 'подключение математического модуля

Public Class Form1

Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click

Dim x, y, f, j, n As Double, p As Single, i As Integer

x = CDbl(TextBox1.Text) 'преобразование типа String в Double

y = CDbl(TextBox2.Text)

f = ((5.2 ^ 3) * log(x + y)) / (x - (1 / (0.45 * sin(x - 8 * y)))) + 0.5

p = CSng(f) 'преобразование типа Double в тип Single

i = CInt(f) 'преобразование типа Double в тип Integer

j = Fix(f) : n = Int(f)

TextBox3.Text = Str(f)

TextBox4.Text = Str(i)

TextBox5.Text = Str(j)

TextBox6.Text = Str(n)

TextBox7.Text = Str(p)

End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

Application.Exit()

End Sub

Private Sub Button2_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

TextBox1.Clear()

TextBox2.Clear()

TextBox3.Clear()

TextBox4.Clear()

TextBox5.Clear()

TextBox6.Clear()

TextBox7.Clear()

End Sub

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

End Sub

End Class

Блок-схема

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

При помощи онлайн-калькулятора.

~ 8 ~

Соседние файлы в папке 4.2. Основные средства языка программирования VB.NET. Типы данных