Как найти площадь в vba

0 / 0 / 0

Регистрация: 14.02.2010

Сообщений: 7

1

Найти площадь треугольника по формуле Герона

24.03.2010, 12:17. Показов 24251. Ответов 4


Студворк — интернет-сервис помощи студентам

Создать проект на visual basic. Найти площадь треугольника по формуле Герона. Стороны вводятся пользователем. Помогите, PLEASE!



0



YuraAAA

1605 / 1337 / 291

Регистрация: 25.10.2009

Сообщений: 3,487

Записей в блоге: 2

24.03.2010, 12:57

2

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Private Sub Command1_Click()
Dim a As Single, b As Single, c As Single
Dim p As Single
Dim S As Single
a = InputBox("a")
b = InputBox("b")
c = InputBox("c")
p = (a + b + c) / 2
S = Sqr(p * (p - a) * (p - b) * (p - c))
MsgBox (S)
End Sub



1



0 / 0 / 0

Регистрация: 14.02.2010

Сообщений: 7

24.03.2010, 13:31

 [ТС]

3

Спасибо большое!))))



0



дана

0 / 0 / 0

Регистрация: 14.02.2010

Сообщений: 7

13.05.2010, 10:42

 [ТС]

4

У меня программный код на visual basic. нужно найти площадь треугольника по формуле герона. в некотовых случаях у меня не вычисляется площадь, мне нужно сделать так, что тогда когда не вычисляется, выводилось сообщение, что площадь с такими сторонами не может существовать, а у меня все время выводится это сообщение, даже когда высчитывается площадь. помоготе

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Command1_Click()
On Error GoTo ErrLabel
 
Dim a As Double, b As Double, c As Double
Dim p As Double, S As Double
a = Val(txta.Text)
b = Val(txtb.Text
c = Val(txtc.Text)
p = (a + b + c) / 2
S = Sqr(p*(p-a)*(p-b)*(p-c))
lblRezultat.Caption = Str(S)
 
Exit Sub
 
ErrLabel:
MsgBox "Треугольник с такими сторонами не может существовать!"
Resume Next
 
End Sub



0



YuraAAA

1605 / 1337 / 291

Регистрация: 25.10.2009

Сообщений: 3,487

Записей в блоге: 2

13.05.2010, 15:46

5

После

Visual Basic
1
c = Val(txtc.Text)

напишите такое условие ( условие существования треугольника)

Visual Basic
1
If a > (b + c) Or b > (a + c) Or c > (a + b) Then MsgBox ("Такой треугольник не существует"): Exit Sub



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

13.05.2010, 15:46

5

Создание программы для вычисления площади геометрических фигур в среде Visual Basic

Введение

Понятие объекта. Развитие
структурного и событийного программирования способствовало:

.    Увеличению производительности труда
программистов.

2.      Уменьшению сроков создания приложения
объемов в сотни тысяч строк.

Однако этого стало не достаточно для эффективной
работы человека, и потребовались новые технологии разработки программ.

В начале 80-х годов в программировании появилось
новое направление, основанное на понятии объекта. До этого разрозненность в
программе данных и методов их обработки накладывала на возможность создания
больших систем некоторые (основные) ограничения.

Базовые характеристики реальных объектов
окружающего мира:

.    Обладают набором свойств.

2.      Способны различными методами изменять
эти свойства.

.        Реагируют на события, происходящие как
в окружающем мире, так и внутри самого объекта.

Именно так в языках программирования и
реализовано понятие объекта как совокупность свойств (структур данных,
характерных для данного объекта), методов их обработки (программ изменения
свойств) и событий, на которые данный объект может реагировать, и которые
приводят, как правило, к изменению свойств объекта.

Возникновение возможности создания объектов в
программах качественного повлияло на увеличение производительности труда
программистов.

Существенные изменения:

.    Максимальный объем приложений, которые
стали доступны для создания группой программистов из 10 человек, за несколько
лет возросло до миллионов строк кода.

2.      Появилась высокая надежность программ.

.        Возникновение повторного использования
ранее созданных объектов в других задачах.

Класс. Все
объекты могут иметь аналогичную структуру и отличаться только значениями
свойств. В таких случаях в программе создается класс. Класс — это новый тип,
основанный на единой структуре объекта (по аналогии с тем, как создаются новые
типы для структур данных). Экземпляр класса — каждый конкретный объект, имеющий
структуру данного класса.

В Visual Basic для описания нового класса
используется конструкция:

Class ИмяКласса

‘описание классаClass.

Стандартные типы данных Visual Basic хорошо
вписываются в терминологию объектов и классов. Например, описание:

Dim s As Stringi As Integer.

Здесь создается объект s, принадлежащий классу
String, и объект i, принадлежащий классу Integer. Переменные s и i — это
объекты (как модели сущностей «строка» и «целое число»), а
типы данных String и Integer — классы, к которым данные объекты относятся. Эти
классы определяют диапазон возможных состояний объекта и его поведение.
Внутреннее состояние объекта, относящегося к классу Integer, характеризуется
целым числом; объект же, относящийся к классу String, характеризуется
символьной строкой. То же можно сказать и о поведении: принадлежность двух
объектов классу Integer дает возможность их складывать, вычитать, перемножать и
делить; принадлежность классу String не гарантирует, что можно производить
арифметические действия, зато определяет операцию конкатенации
(«приписывания» одной строки в конец другой), которая не работает в
случае объектов класса Integer.

Таким образом, любой тип данных, используемый в
языке Visual Basic, подходит под определение класса. Верно и то, что, создавая
новый класс, мы тем самым создаем свой собственный тип данных. После этого
можно описывать переменные, принадлежащие новому типу данных (то есть создавать
отдельные объекты, экземпляры класса), и оперировать ими в рамках возможностей,
заданных при описании класса.

Объектно-ориентированное программирование
базируется на трех ключевых концепциях — инкапсуляция, наследовании и
полиморфизме.

Наследование. Класс
представляет собой совокупность связанных между собой данных, методов их
обработки и событий. Важнейшая характеристика наследования — возможность
создания на его основе новых классов всех его свойств и методов и добавлением
собственных. Базовый класс — это класс, не имеющий предшественника. С позиции
наследования класс может быть дочерним или родительским. Дочерний класс
наследует характеристики родительского класса, включая свойства, методы, поля
данных и события. Например, класс «управленцы», приведенный на следующей схеме,
наследует все члены родительского класса «персонал» за исключением метода
«управлять», который создается заново, замещая исходный «работать».

Рисунок 1 — Класс
«Персонал»

Наследование позволяет создавать новые классы,
повторно используя уже готовый исходный новый код и не траты времени на его
переписывание. То есть, нет необходимости в повторном программировании. Класс,
созданный на основе родительского, может быть изменен за счет добавления новых
членов и адаптирован по определенным требованиям, так как унаследованные методы
могут изменяться.

В Visual Basic при определении нового класса,
наследуемого от существующего, используется ключевое слово Inherits.
Например:Class NewChildClassMyClass

Этот код создает новый компонент, который
наследует все свойства, методы, события и поля класса MyClass. Параметры
компонента могут быть расширены по сравнению с исходным классом, чтобы
обеспечить необходимые качества создаваемых объектов.

Полиморфизм. В
большинстве случает методы базового класса у классов — наследников приходиться
переопределять — объект класса «управленец» выполняет метод «управлять» совсем
не так, как объект класса «рабочий».

Поэтому, существует полиморфизм, который
позволяет нескольким классам, имеющим различные имена, обращаться к одним и тем
же методам и свойствам.

Например, если для всех людей, занимающихся
делом, выполняется метод «работать», можно написать процедуру таким образом,
чтобы она относилась к любым из этих объектов, не заботясь о типе каждого из
них. На приведенной ниже схеме представлен метод «работать», предназначенный
для двух объектов, созданный на базе двух различных классов:

Рисунок 2 — Схема
метода «работать»

То есть полиморфизмом называется свойство
объектов переопределять методы наследуемого класса и корректно их использовать.

Инкапсуляция
позволяет объединять данные с методами в одном классе. Так же инкапсуляция
позволяет ограничивать доступ к данным объектов и реализации методов классов.
Исходя из списка аргументов, переданного методу, и возвращаемого им значения,
компилятор автоматически определяет, какой из методов нужно вызвать. На
следующей схеме приведен класс, содержащий 4 перезагружаемых определения метода
«работать».

Рисунок 3 — Класс
«персонал»

Инкапсуляция позволяет упростить определение
класса за счет использования одного метода для решения определенного типа
задач. Таким образом, программисты могут использовать готовые классы в своих
приложениях на основе только описания этих классов.

Визуальное программирование. Сегодня
технологии объектного программирования объединены в RAD-системах, которые
содержат множество готовых классов, представленных в виде визуальных
компонентов, которые добавляются в программы одним щелчком мыши. Весь
вспомогательный исходный код среда сгенерирует сама. Программисту надо только
скооперировать внешний вид окон своего приложения и определить обработку
основных событий — какие операторы будут выполняться при нажатии на кнопки, при
выборе пунктов меню или щелчком мыши.

Благодаря этому, программист может
сосредоточиться только на реализации алгоритма поставленной задачи.

Постановка задачи работы.
Требуется вычислить площади геометрических фигур из заданного множества фигур, указанных
ниже, по расчетным формулам вычисления их площадей на языке Visual Basic.

Конкретное множество геометрических фигур:

. Круг:

.

Следовательно, функция зависит от одной переменной
R.

. Прямоугольник:

.

Следовательно, функция зависит от двух
переменных A, h.

. Трапеция:

.

Следовательно, функция зависит от трех переменных
A, B, h.

1. Методика
решения поставленной задачи

В программе для вычисления площадей
геометрических фигур я применила метод полиморфизм, то есть программировала,
используя полиморфную функцию.

Полиморфной называется функция, независимо
определенная в каждом из группы производных классов и имеющая в них общее имя.

Полиморфная функция обладает тем свойством, что
при отсутствии полной информации о том, объект какого из производных классов в
данный момент обрабатывается, она, тем не менее, корректно вызывается в том
виде, в каком она была определена для данного конкретного класса.

Таким образом, посылается общее сообщение о
сборе данных любому классу, причем и родительский класс, и классы-потомки
ответят на сообщение соответствующим образом, поскольку произвольные классы
содержат дополнительную функцию.

Например, при нажатии кнопок или «Круг», или
«Прямоугольник», или «Трапеция», вызывается функция PL, которая и рассчитывает
площади фигур.

Рисунок 4 —
Блок-схема алгоритма

Рисунок 5 — Форма в
терминах элемента управления

2. Текст программы

Class Form1

Public obj As New Figure

Private Sub Form1_Load(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

TextBox1.Text = » »

TextBox2.Text = » «

Label7.Text = » »

Label8.Text = » »

End Sub

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

Dim R, S As Integer

R = Val(TextBox1.Text)

If R < 0 Then

Label7.Text = «Ошибка»

Label8.Text = «Ошибка»

Else : S = obj.PL(R)

Label7.Text = CStr(S)

Label8.Text = «Круг»

End If

End Sub

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

Dim A, h, S As Integer

A = Val(TextBox1.Text)

h = Val(TextBox2.Text)

If A < 0 Or h < 0 Then

Label7.Text = «Ошибка»

Label8.Text = «Ошибка»

Else : S = obj.PL(A, h)

Label7.Text = CStr(S)

Label8.Text = «Прямоугольник»

End If

End SubSub Button3_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles Button3.Click

Dim A, h, B, S As Integer

A = Val(TextBox1.Text)

B = Val(TextBox2.Text)

h = Val(TextBox3.Text)

If A < 0 Or B < 0 Or h < 0 Then

Label7.Text = «Ошибка»

Label8.Text = «Ошибка»

Else : S = obj.PL(A, B, h)

Label7.Text = CStr(S)

Label8.Text = «Трапеция»

End If

End SubClassClass Figure

Public Function PL(ByVal R As Double) As Double

Return (Math.PI * R * R)

End Function

Public Function PL(ByVal A As Double, ByVal h As
Double) As Double

Return (A * h)

End Function

Public Function PL(ByVal A As Double, ByVal B As
Double, ByVal h As Double) As Double

Return ((A + B) * h / 2)

End FunctionClass

Рисунок 6 —
Экранная форма

3. Руководство пользователя

Программа «Вычисление геометрических площадей»
запускается двойным щелчком левой мыши по ярлыку, после чего на экран выводится
окно со списком фигур, для которых вычисляется площадь:

Радиус, длина сторон и высота прямоугольника и
трапеции задаются в верхнем, среднем и нижнем полях под фразой «Ввести числа:».

Для того чтобы рассчитать площадь круга,
необходимо ввести число в верхнем поле. Чтобы вычислить площадь прямоугольника,
надо указать длину сторон в верхнем и среднем полях. Для трапеции данные
вводятся во всех трех полях.

После введения данных необходимо нажать на
кнопку или «Круг», или «Прямоугольник», или «Трапеция», в зависимости от того
какой фигуры вы хотите найти площадь.

Результат вычисления и название фигуры, для
которой находилась площадь, можно увидеть в окне «Площадь».

Для повторения операции необходимо ввести новые
данные и нажать на любую из кнопок, где указана фигура, для которой нужно найти
площадь.

Числовое значение не может быть задано
отрицательным числом. В этом случае программа будет выдавать ошибку:

Рисунок 7 — Ошибка
программы

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

Рисунок 8 —
Прекращение работы программы

4. Контрольный пример

Задача:

Найти площадь заштрихованной фигуры, указанной
ниже, которая образуется из треугольника со стороной а, высотой h
и круга радиусом R:

Рисунок 9 — Условие
задачи

Решение:

Для того чтобы найти площадь заштрихованной
фигуры надо рассчитать площадь треугольника и круга и затем найти их разность.
Это и будет площадь, которую надо найти.

Пусть сторона а=12, высота h=8 тогда площадь
треугольника вычислим по формуле нахождения площади трапеции:

При условии B=0 (так как надо найти площадь
треугольника). Вводим данные в программу и получаем:

Рисунок 10 —
Площадь трапеции

Поэтому площадь треугольника равна 48.

Затем, учитывая, что радиус круга R=3,
рассчитываем площадь круга по формуле:

.

Рисунок 11 —
Площадь круга

Получаем, что площадь круга равна 28.

Таким образом, находим площадь фигуры:

.

Тогда:

.

Площадь фигуры равна 20.

Делаем вывод, что программой, написанной мной,
можно рассчитывать площади разных фигур.

программа вычисление площадь фигура
basic

Заключение

В ходе создания программы для вычисления
площадей геометрических фигур я изучила элементы объектно-ориентированного программирования
и научилась работать в среде Visual Basic.

Литература

1.  Супрун А.Н. Рамел Д. Visual
Basic. NET. Справочник программиста / Практ. Пособ./ Пер. с англ. — М.:
Издательство ЭКОМ, 2002. — 352.:ил.

2.      Информатика. Базовый курс.
2-е издание / Под ред. С.В. Симоновича. — СПб: ПитерБ, 2009. — 640 с.: ил.

Формулировка задачи:

Нахождение площади треугольника, если три заданных числа a,b,c задают длины его сторон

Код к задаче: «На VBA найти площадь треугольника»

textual

sub GetTriangleSquare(a As Variant, b As Variant, c As Variant) 
 
    Dim p As Variant
    Dim s As Variant
    
    p = (a + b + c) / 2
    
    s = Sqr(p * (p - a) * (p - b) * (p - c))
    
    MsgBox "Площадь треугольника равна " & s
End sub

Полезно ли:

15   голосов , оценка 4.133 из 5

По теме: методические разработки, презентации и конспекты

площадь треугольника

урок изучение нового материала с использованием ЭОР….

площадь треугольника

Урок обяснения нового материала в 8 классе по теме » Площадь треугольника» с использованием ЭОР….

Урок — Решение задач по геометрии 9 кл. «Площадь треугольника. Теорема синусов. Теорема косинусов.»

Решение задач предусматривает умение применять знания в стандартных условиях или при небольших отклонениях от них. Так же рассматриваются задачи, в которых требуется уметь применять знания в усложненн…

Презентация по теме «Площади четырёхугольников. Площадь треугольника

В презентации показаны свойства площадей, теоремы и формулы для вычисления площадей прямоугольника, параллелограмма треугольника….

«Площадь треугольника. Площадь параллелограмма» — метод. разработка 9 класс

Урок с использованием технологии обучения в сотрудничестве….

Краткосрочный план урока геометрии для 9 класса по теме «Решение треугольников (вычисление площади треугольника через радиус вписанной или описанной окружности)».

В работе представлен краткосрочный план урока геометрии в 9 классе по теме «Решение треугольников».  В ходе урока выполняются задания на развитие функциональной грамотности обучающихс…

Контрольная работа № 3 «Нахождение площадей треугольников и многоугольных фигур. Площади подобных фигур». для 8 класса

Контрольная работа № 3 «Нахождение площадей треугольников и многоугольных фигур. Площади подобных фигур». для 8 класса…

Рис. 15 Диалоговое окно приложения.

Основную работу в программе выполняют процедуры обработки событий. Процедуры обработки событий представляют собой программные коды, написанные на языке Visual Basic и выполняемые при наступлении связанных с ним событий. Созданная кнопка сейчас служит лишь украшением окна. При щелчке на нее должно происходить какое-то событие, но наша программа об этом событии пока ничего не знает. Теперь наша задача указать программе, что она должна делать при щелчке на кнопке. То есть теперь мы должны написать программный код, по которому будет обрабатываться щелчок. Зададим реакцию на кнопку «Вычисление». Чтобы задать реакцию на кнопку, выделите ее на форме, затем дважды щелкните. Откроется окно кода формы ( Рис. 16 ).

Рис. 16 Окно кода формы frmTreugolnik.

При нажатии на кнопку «Вычисление» программа должна вычислить площадь треугольника по формуле Герона, используя параметры треугольника, введенные в текстовые окна. Откроем окно редактирования кода, для этого дважды нажмем на кнопку «Вычисление». Чтобы вычислить площадь треугольника нужно ввести длины сторон треугольника. Для ввода значений мы будем использовать текстовые окна.

Процедура обработки события Click кнопки cmdRaschet :

Private Sub cmdRaschet _ Click ()

Dim a As Single , b As Single , c As Single объявляем переменные (длины сторон) как вещественные с одинарной точностью;

Dim p As Double , S As Double переменные которые будут вычисляться в программе объявим как вещественные с двойной точностью;

a = Val ( txta . Text ) текст введенный в текстовое поле txta Val и присваиваем значение переменной a ; преобразуем в число с помощью функции

p = ( a + b + c ) / 2 вычисляем полупериметр треугольника, используя введенные значения длин сторон;

S = Sqr ( p *( p — a )*( p — b )*( p — c )) вычисляем площадь треугольника по формуле Герона ( Sqr – корень квадратный);

lblRezultat . Caption = Str ( S ) помещаем полученный результат в метку lblRezultat , предварительно переводим числовую переменную S в текстовую с помощью функции Str .

Private Sub cmdRaschet_Click()

Dim a As Single, b As Single объявляем типы переменных

Dim s As Double

a = Val ( InputBox («Введите ширину прямоугольника», «Ввод данных»)) вводим ширину прямоугольника с помощью системной функции InputBox и присваиваем введенное значение переменной a . Функция Val переводит текстовое значение в числовое.

b = Val (InputBox(«Введите длину прямоугольника», «Ввод данных»)) аналогично вводим длину прямоугольника и присваиваем ее переменной b и переводим в число.

s = a * b вычисляем площадь прямоугольника;

txtRezultat . Text = Str ( s ) полученный результат переводим в текст и помещаем в текстовое окно txt Результат;

MsgBox «Площадь прямоугольника равна»&Str(s), vbInformation + vbOKOnly, «Результат» выведем результат также в окно сообщений.

Напишем процедуру обработки события Click кнопки cmd Vihod :

Private Sub cmdVihod _ Click ()

End – завершает работу программы

Проверим работу программы. Для этого на панели инструментов нажмем кнопку Start (синий треугольник), либо выполним команду StartRun . меню

Площадь треугольника. Программирование VBA в MS Excel
учебно-методическое пособие по информатике и икт (11 класс)

Составление простой программы VBA в MS Excel для вычислений площади геометрических фигур.

Скачать:

Вложение Размер
000_vychislenie_ploshchadi_treugolnika.docx 2.43 МБ

Предварительный просмотр:

Чтобы пользоваться предварительным просмотром создайте себе аккаунт (учетную запись) Google и войдите в него: https://accounts.google.com

По теме: методические разработки, презентации и конспекты

площадь треугольника

урок изучение нового материала с использованием ЭОР.

площадь треугольника

Урок обяснения нового материала в 8 классе по теме » Площадь треугольника» с использованием ЭОР.

Урок — Решение задач по геометрии 9 кл. «Площадь треугольника. Теорема синусов. Теорема косинусов.»

Решение задач предусматривает умение применять знания в стандартных условиях или при небольших отклонениях от них. Так же рассматриваются задачи, в которых требуется уметь применять знания в усложненн.

Синус,косинус, тангенс. Площадь треугольника.

Отработка навыка применения основных тригонометрических тождеств, формул приведения, координаты точки, выведение новой формулы площади треугольника, параллелограмма.

Презентация по теме «Площади четырёхугольников. Площадь треугольника

В презентации показаны свойства площадей, теоремы и формулы для вычисления площадей прямоугольника, параллелограмма треугольника.

«Площадь треугольника. Площадь параллелограмма» — метод. разработка 9 класс

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

Краткосрочный план урока геометрии для 9 класса по теме «Решение треугольников (вычисление площади треугольника через радиус вписанной или описанной окружности)».

В работе представлен краткосрочный план урока геометрии в 9 классе по теме «Решение треугольников». В ходе урока выполняются задания на развитие функциональной грамотности обучающихс.

Вычисление периметра и площади треугольника

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

Сформулируем содержательную постановку задачи: Создать приложение на VB которое должно вычислять периметр и площадь треугольника по заданным значениям трех его сторон:

Задано: А, В, С – значения сторон треугольника.
Требуется определить: Р – периметр треугольника, S – площадь треугольника.

Ограничения на значения исходных данных и их соотношения: А>0, В>0, C>0, А+В>С, А+C>В, В+C>А одновременно.

Проект должен иметь простой интерфейс пользователя:

  • две кнопки управления;
  • три поля, отображающие входные данные;
  • два поля, отображающие выходные данные.

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

Для решения задачи существуют известные формулы:
Р = А + В + С;
S = (формула Герона),

источники:

http://nsportal.ru/shkola/informatika-i-ikt/library/2021/04/11/ploshchad-treugolnika-programmirovanie-vba-v-ms-excel

http://reshimvse.com/article.php?id=26

Понравилась статья? Поделить с друзьями:
  • Как найти абсолютное изменение величины
  • Image failed to verify with access denied что делать lenovo как исправить
  • Как найти середину рассказа
  • Как исправить ошибку decompression problem broken compressed data
  • Как составить бизнес план для продажи бизнеса