Два треугольника

Пишем программу по заданию 16 учебника Лукина «Понятно о Visual.Net»

Условие задания:

В компьютер вводятся длины трех отрезков. Компьютер должен ответить на вопрос, можно или нельзя из этих отрезков обра-зовать треугольник.

Решение: В условии задачи мы должны ввести длины отрезков, но давайте усложним, вычислим длину отрезков по координатам, и если нельзя из этих отрезков построить треугольник, выведем об этом сообщение.

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim x1, x2, x3, y1, y2, y3 As Integer 'объявляем переменные для координатов отрезков
        Dim d1, d2, d3 As Integer ' объявляем переменные для длины отрезков
        Dim graf As Graphics
        graf = Me.CreateGraphics
        'присваиваем переменные из текстовых полей
        x1 = Val(TextBox1.Text) : y1 = Val(TextBox2.Text) 'первый отрезок
        x2 = Val(TextBox3.Text) : y2 = Val(TextBox4.Text) 'второй отрезок
        x3 = Val(TextBox5.Text) : y3 = Val(TextBox6.Text) 'третий отрезок
        'производим вычисление длины отрезков по формуле d=math.sqrt((x2-x1)^2+(y2-y1)^2)
        d1 = Math.Sqrt((x2 - x1) ^ 2 + (y2 - y1) ^ 2) : TextBox7.Text = d1 'вычисляем длину первого отрезка
        d2 = Math.Sqrt((x3 - x2) ^ 2 + (y3 - y2) ^ 2) : TextBox8.Text = d2 'вычисляем и выводим длину второго отрезка
        d3 = Math.Sqrt((x3 - x1) ^ 2 + (y3 - y1) ^ 2) : TextBox9.Text = d3 'вычисляем и выводим длину третьего отрезка
        'проверка условия для рисования (можно ли из этих отрезков нарисовать треугольник)
        If d1 < d2 + d3 And d2 < d1 + d3 And d3 < d2 + d3 Then
            'рисуем треугольники
            graf.DrawLine(Pens.Black, x1, y1, x2, y2)
            graf.DrawLine(Pens.Black, x2, y2, x3, y3)
            graf.DrawLine(Pens.Black, x3, y3, x1, y1)
        Else
            MsgBox("Один из отрезков слишком длинный")
        End If
        'рисуем ещё один треугольник
        graf.DrawLine(Pens.Black, x1 + 100, y1 - 30, x2 + 100, y2 - 30)
        graf.DrawLine(Pens.Black, x2 + 100, y2 - 30, x3 + 100, y3 - 30)
        graf.DrawLine(Pens.Black, x3 + 100, y3 - 30, x1 + 100, y1 - 30)

    End Sub
End Class
  1. У меня сохранилась первоначальная программа для рисования треугольников, которые решал ранее, поэтому просто внёс в неё изменения.
  2. Нашёл формулу, которая вычисляет длину отрезка по введённым координатам d1 = Math.Sqrt((x2 — x1) ^ 2 + (y2 — y1) ^ 2)
  3. Вычисляем длину отрезков по формуле, результаты выводим в три дополнительных текстовых поля
  4. Проверяем условие (Для этого каждый отрезок должен быть меньше суммы длин двух других отрезков.), если да, то рисуем треугольник, если нет, то появляется надпись msgbox, что один из отрезков слишком длинный.
  5. Прим. Для того, чтобы треугольники не заползали на текстовые поля и кнопку, рисовать их можно в picturebox.

Скачать программу: Рисуем треугольники
Установки не требует.
Файл exe. Размер 25.5kb.
На компьютере должен быть установлен net.framework 3.5 и выше.


Внимание!!! На некоторых компьютерах, у меня к примеру, система не даёт запускаться файлам с расширением .Exe . Всё просто, эти файлы исполняемые, и система их блокирует, как и любой файл Exe от сторонних разработчиков. В моих программах вирусов нет, можно проверить на любом сайте онлайн проверки на вирусы, или сам файл антивирусником. Если вы всё равно остерегаетесь, то используйте сам код программы в Visual Studio.net 2008

Запись опубликована в рубрике Мои программы, Решение заданий vb.net. Добавьте в закладки постоянную ссылку.