I етап. Аналіз умови задачі, визначення вхідних даних і кінцевих результатів
Вхідні дані: координати сторін трикутника a, b, с.
Кінцеві результати: площа трикутника.
II етап. Побудова інформаційної моделі
Очевидно, інформаційною моделлю розв’язування цієї задачі є математична модель, яка складається з формул, за якими знайдемо площу трикутника.
Ці формули
а2= ( x2-x1)2+ (y2-y1)2 b2= (x3-x2)2 + (y3-y2)2 c2= (x3-x1)2+ (y3-y1)2
p=( a+b+c) / 2 S2=p*(p-a)*(p-b)*(p-c)
Крім того, одержані дані бажано округлити до сотих.
III етап. Вибір програмних засобів для розв’язування задачі виглядатимуть так:
Прикладним програмним засобом, який можна використати для розв’язування задачі, може бути, наприклад, програма-калькулятор або табличний процесор. Або можна скласти спеціальну програму для розв’язування саме цієї задачі, використовуючи одну з мов програмування.
IV етап. Складання алгоритму розв'язування задачі.
V етап. Отримання комп'ютерної моделі.
H2 - SQRT(G2*(G2-SQRT((C2*C2-2*C2*A2+A2*A2)+(D2*D2-2*D2*B2+B2*B2)))*(G2-SQRT((E2*E2-2*E2*C2+C2*C2)+(F2*F2-2*F2*D2+D2*D2)))*(G2-SQRT((E2*E2-2*E2*A2+A2*A2)+(F2*F2-2*F2*B2+B2*B2))))
G2 - (SQRT((C2*C2-2*C2*A2+A2*A2)+(D2*D2-2*D2*B2+B2*B2))+SQRT((E2*E2-2*E2*C2+C2*C2)+(F2*F2-2*F2*D2+D2*D2))+SQRT((E2*E2-2*E2*A2+A2*A2)+(F2*F2-2*F2*B2+B2*B2)))/2
program Geron;
Uses CRT;
var x1, x2, x3, y1, y2, y3, a, b, c, p, s: real;
begin
writeln ('Формула Герона.Трикутник на координатнiй площинi.');
TextColor (06);
write('Введiть через пробiл координати першої точки, потiм натиснiть Enter - ');
readln(x1, y1);
write ('Введiть через пробiл координати другої точки, потiм натиснiть Enter - ');
readln(x2, y2);
write('Введiть через пробiл координати третьої точки, потiм натиснiть Enter - ');
readln(x3, y3);
a:= sqrt(sqr(x2-x1)+ sqr(y2-y1));
b:= sqrt (sqr (x3-x2) + sqr(y3-y2));
c:= sqrt(sqr(x3-x1)+ sqr(y3-y1));
p:= (a + b+ c) / 2;
s:=sqrt (p* (p-a) * (p-b) * (p-c) );
TextColor (03);
writeln('Площа трикутника - ', s);
readln;
end.
PRINT "”®а¬г« ѓҐа® .Љ®®а¤Ё в Ї«®йЁ ."
'Формула Герона. Координатна площина
INPUT "x1 = ", x1
INPUT "y1 = ", y1
INPUT "x2 = ", x2
INPUT "y2 = ", y2
INPUT "x3 = ", x3
INPUT "y3 = ", y3
a = SQR((x2 - x1) ^ 2 + (y2 - y1) ^ 2)
b = SQR((x3 - x2) ^ 2 + (y3 - y2) ^ 2)
c = SQR((x3 - x1) ^ 2 + (y3 - y1) ^ 2)
p = (a + b + c) / 2
S = SQR(p * (p - a) * (p - b) * (p - c))
PRINT "Џ«®й ваЁЄгвЁЄ = "; S
'Площа трикутника
INPUT z
TextWindow.WriteLine("Формула Герона. Координатна площина")
TextWindow.Write("x1= ")
x1=TextWindow.ReadNumber()
TextWindow.Write("y1= ")
y1=TextWindow.ReadNumber()
TextWindow.Write("x2= ")
x2=TextWindow.ReadNumber()
TextWindow.Write("y2= ")
y2=TextWindow.ReadNumber()
TextWindow.Write("x3= ")
x3=TextWindow.ReadNumber()
TextWindow.Write("y3= ")
y3=TextWindow.ReadNumber()
a= Math.SquareRoot(Math.power((x2-x1),2)+Math.power((y2-y1),2))
b= Math.SquareRoot(Math.power((x3-x2),2)+Math.power((y3-y2),2))
c= Math.SquareRoot(Math.power((x3-x1),2)+Math.power((y3-y1),2))
p = (a + b + c)/2
s = Math.Round( Math.SquareRoot(p*Math.Abs(p-a)*Math.Abs(p-b)*Math.Abs(p-c))*100)/100
TextWindow.Write("Площа S = ")
TextWindow.WriteLine(s)
<title>Формула Герона. Координатна площина</title>
<body><div align="center">
<b>Формула Герона. Координатна площина. </b>
<br>
<br>
<form name="geron_t" action="javascript:geron_t()" id="1419313176">
x1= <input name="x1" type="text" value=" " size="4"></b>
y1= <input name="y1" type="text" value=" " size="4"></b>
<br>
<br>
x2= <input name="x2" type="text" value=" " size="4"></b>
y2= <input name="y2" type="text" value=" " size="4"></b>
<br>
<br>
x3= <input name="x3" type="text" value=" " size="4"></b>
y3= <input name="y3" type="text" value=" " size="4"></b>
<br>
<br>
<input type="submit" value="Порахувати">
<input type="reset" value="Reset">
</form>
Відповідь: <span id="geron_t">Введіть данні і нажміть "Порахувати"</span>
</div>
<script language="javascript">
function geron_t() {
var x1 = document.geron_t.x1.value;
var x2 = document.geron_t.x2.value;
var y1 = document.geron_t.y1.value;
var y2 = document.geron_t.y2.value;
var x3 = document.geron_t.x3.value;
var y3 = document.geron_t.y3.value;
var sol = document.getElementById("geron_t");
var a = Math.sqrt((x2*x2-2*x1*x2+x1*x1)+(y2*y2-2*y1*y2+y1*y1));
var b = Math.sqrt((x3*x3-2*x3*x2+x2*x2)+(y3*y3-2*y3*y2+y2*y2));
var c = Math.sqrt((x3*x3-2*x3*x1+x1*x1)+(y3*y3-2*y1*y3+y1*y1));
var p = (a+b+c)/2;
var s = Math.sqrt(p*(p-a)*(p-b)*(p-c));
string = "Площа S="+s;
sol.innerHTML = string;
}
</script>
<title>Формула Герона. Координатна площина</title>
<form name="prtr" >
Формула Герона. Координатна площина.
<br>
<br>
x1 = <input type="textfield" name="x1" value="">
y1 = <input type="textfield" name="y1" value="">
<br>
<br>
x2 = <input type="textfield" name="x2" value="">
y2 = <input type="textfield" name="y2" value="">
<br>
<br>
x3 = <input type="textfield" name="x3" value="">
y3 = <input type="textfield" name="y3" value="">
<br>
<br>
<input type="button" value="S" onClick="document.prtr.S.value=Math.sqrt((((Math.sqrt((eval(document.prtr.x2.value)*eval(document.prtr.x2.value)-2*eval(document.prtr.x2.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y2.value)*eval(document.prtr.y2.value)-2*eval(document.prtr.y2.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value))))+
(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x2.value)+eval(document.prtr.x2.value)*eval(document.prtr.x2.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y2.value)+eval(document.prtr.y2.value)*eval(document.prtr.y2.value))))+
(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value)))))/2)
*((((Math.sqrt((eval(document.prtr.x2.value)*eval(document.prtr.x2.value)-2*eval(document.prtr.x2.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y2.value)*eval(document.prtr.y2.value)-2*eval(document.prtr.y2.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value))))+
(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x2.value)+eval(document.prtr.x2.value)*eval(document.prtr.x2.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y2.value)+eval(document.prtr.y2.value)*eval(document.prtr.y2.value))))+
(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value)))))/2)-(Math.sqrt((eval(document.prtr.x2.value)*eval(document.prtr.x2.value)-2*eval(document.prtr.x2.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y2.value)*eval(document.prtr.y2.value)-2*eval(document.prtr.y2.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value))))
)*((((Math.sqrt((eval(document.prtr.x2.value)*eval(document.prtr.x2.value)-2*eval(document.prtr.x2.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y2.value)*eval(document.prtr.y2.value)-2*eval(document.prtr.y2.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value))))+
(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x2.value)+eval(document.prtr.x2.value)*eval(document.prtr.x2.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y2.value)+eval(document.prtr.y2.value)*eval(document.prtr.y2.value))))+
(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value)))))/2)-(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x2.value)+eval(document.prtr.x2.value)*eval(document.prtr.x2.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y2.value)+eval(document.prtr.y2.value)*eval(document.prtr.y2.value))))
)*((((Math.sqrt((eval(document.prtr.x2.value)*eval(document.prtr.x2.value)-2*eval(document.prtr.x2.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y2.value)*eval(document.prtr.y2.value)-2*eval(document.prtr.y2.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value))))+
(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x2.value)+eval(document.prtr.x2.value)*eval(document.prtr.x2.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y2.value)+eval(document.prtr.y2.value)*eval(document.prtr.y2.value))))+
(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value)))))/2)-(Math.sqrt((eval(document.prtr.x3.value)*eval(document.prtr.x3.value)-2*eval(document.prtr.x3.value)*eval(document.prtr.x1.value)+eval(document.prtr.x1.value)*eval(document.prtr.x1.value))+(eval(document.prtr.y3.value)*eval(document.prtr.y3.value)-2*eval(document.prtr.y3.value)*eval(document.prtr.y1.value)+eval(document.prtr.y1.value)*eval(document.prtr.y1.value))))
))">
Площа S = <input type="textfield" name="S" value="">
<br>
<br>
<input type="reset" value="Reset">
</form>
#include <stdio.h>
#include <math.h>
int main(void)
{
float x1,x2,x3,y1,y2,y3,a,b,c,p,S;
printf ("”®а¬г« ѓҐа® .Љ®®а¤Ё в Ї«®йЁ .\n \n");
printf ( "x1 = ");
scanf("%f", &x1);
printf ( "y1 = ");
scanf("%f", &y1);
printf ( "x2 = ");
scanf("%f", &x2);
printf ( "y2 = ");
scanf("%f", &y2);
printf ( "x3 = ");
scanf("%f", &x3);
printf ( "y3 = ");
scanf("%f", &y3);
a=sqrt(pow((x2 - x1), 2) + pow((y2 - y1), 2));
b=sqrt(pow((x3 - x2), 2) + pow((y3 - y2), 2));
c=sqrt(pow((x3 - x1), 2) + pow((y3 - y1), 2));
p = (a + b + c) / 2;
S = sqrt(p * (p - a) * (p - b) * (p - c));
printf ("\nЏ«®й ваЁЄгвЁЄ = %f", S);
scanf("\n");
return 0;
}
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Формула Герона. Координатна площина");
Console.Write("x1 = ");
Double x1 = Convert.ToDouble(Console.ReadLine());
Console.Write("y1 = ");
Double y1 = Convert.ToDouble(Console.ReadLine());
Console.Write("x2 = ");
Double x2 = Convert.ToDouble(Console.ReadLine());
Console.Write("y2 = ");
Double y2 = Convert.ToDouble(Console.ReadLine());
Console.Write("x3 = ");
Double x3 = Convert.ToDouble(Console.ReadLine());
Console.Write("y3 = ");
Double y3 = Convert.ToDouble(Console.ReadLine());
double a = Math.Sqrt(Math.Pow((x2 - x1), 2) + Math.Pow((y2 - y1), 2));
double b = Math.Sqrt(Math.Pow((x3 - x2), 2) + Math.Pow((y3 - y2), 2));
double c = Math.Sqrt(Math.Pow((x3 - x1), 2) + Math.Pow((y3 - y1), 2));
double p = (a + b + c) / 2;
double s = Math.Round(Math.Sqrt(p * (p - a) * (p - b) * (p - c)) * 100) / 100;
Console.WriteLine (" ");
Console.WriteLine("Площа S = "+s);
Console.ReadKey();
}
}
Class Program
Shared Sub Main()
Console.WriteLine("Формула Герона. Координатна площина")
Console.Write("x1 = ")
Dim x1 As Double = Convert.ToDouble(Console.ReadLine())
Console.Write("y1 = ")
Dim y1 As Double = Convert.ToDouble(Console.ReadLine())
Console.Write("x2 = ")
Dim x2 As Double = Convert.ToDouble(Console.ReadLine())
Console.Write("y2 = ")
Dim y2 As Double = Convert.ToDouble(Console.ReadLine())
Console.Write("x3 = ")
Dim x3 As Double = Convert.ToDouble(Console.ReadLine())
Console.Write("y3 = ")
Dim y3 As Double = Convert.ToDouble(Console.ReadLine())
Dim a As Double = Math.Sqrt((X2 - X1) ^ 2 + (Y2 - Y1) ^ 2)
Dim b As Double = Math.Sqrt((X3 - X2) ^ 2 + (Y3 - Y2) ^ 2)
Dim c As Double = Math.Sqrt((X3 - X1) ^ 2 + (Y3 - Y1) ^ 2)
Dim p As Double = (a + b + c) / 2
Dim s As Double = Math.Round(Math.Sqrt(p * (p - a) * (p - b) * (p - c)) * 100) / 100
Console.WriteLine (" ")
Console.Write ("Площа S = {0}",s)
Console.ReadKey()
End Sub
End Class
#include <conio.h>
#include <iostream>
#include <cmath>
int main(void)
{
double x1,x2,y1,y2,x3,y3,a,b,c,S,p;
setlocale(LC_ALL, "");
std::cout << "Формула Герона. Координатна площина\n";
std::cout << "x1 = ";
std::cin >> x1;
std::cout << "y1 = ";
std::cin >> y1;
std::cout << "x2 = ";
std::cin >> x2;
std::cout << "y2 = ";
std::cin >> y2;
std::cout << "x3 = ";
std::cin >> x3;
std::cout << "y3 = ";
std::cin >> y3;
a = sqrt(pow((x2-x1),2)+pow((y2-y1),2));
b = sqrt(pow((x3-x2),2)+pow((y3-y2),2));
c = sqrt(pow((x3-x1),2)+pow((y3-y1),2));
p = (a + b + c)/2;
S = sqrt(p*(p-a)*(p-b)*(p-c));
std::cout << "\nПлоща S = " << S << std::endl;
getch();
return 0;
}
print ('Формула Герона. Координатна площина')
x1=float(input('x1 = '))
y1=float(input('y1 = '))
x2=float(input('x2 = '))
y2=float(input('y2 = '))
x3=float(input('x3 = '))
y3=float(input('y3 = '))
print ('')
a =((x2-x1)**(2)+(y2-y1)**(2))**(1/2)
b =((x3-x2)**(2)+(y3-y2)**(2))**(1/2)
c =((x3-x1)**(2)+(y3-y1)**(2))**(1/2)
p=(a + b + c) / 2
s = (p*(p-a)*(p-b)*(p-c))**(1/2)
print ('Площа S =',s)
input()
Розв’язування задачі в Visual BASIK 6
VERSION 5.00
Begin VB.Form Form1
BorderStyle = 1 'Fixed Single
Caption = "Формула Герона (координатна площина)"
ClientHeight = 1395
ClientLeft = 45
ClientTop = 390
ClientWidth = 6705
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 1395
ScaleWidth = 6705
StartUpPosition = 2 'CenterScreen
Begin VB.CommandButton Command3
Caption = "ВИХІД"
Height = 375
Left = 5520
TabIndex = 16
Top = 840
Width = 975
End
Begin VB.CommandButton Command2
Caption = "СТАРТ"
Height = 375
Left = 5520
TabIndex = 15
Top = 240
Width = 975
End
Begin VB.TextBox Text1
Height = 300
Index = 6
Left = 3120
TabIndex = 14
Top = 840
Width = 735
End
Begin VB.TextBox Text1
Height = 300
Index = 5
Left = 3120
TabIndex = 12
Top = 240
Width = 735
End
Begin VB.TextBox Text1
Height = 300
Index = 4
Left = 1800
TabIndex = 10
Top = 840
Width = 735
End
Begin VB.TextBox Text1
Height = 300
Index = 3
Left = 1800
TabIndex = 8
Top = 240
Width = 735
End
Begin VB.TextBox Text1
Height = 300
Index = 2
Left = 480
TabIndex = 6
Top = 840
Width = 735
End
Begin VB.TextBox Text1
Height = 300
Index = 1
Left = 480
TabIndex = 4
Top = 240
Width = 735
End
Begin VB.TextBox Text1
Height = 300
Index = 0
Left = 4560
TabIndex = 2
Top = 840
Width = 735
End
Begin VB.CommandButton Command1
Caption = "Очистка"
Height = 375
Index = 1
Left = 4320
TabIndex = 0
Top = 240
Width = 975
End
Begin VB.Label Label1
Caption = "Y3 ="
Height = 255
Index = 6
Left = 2760
TabIndex = 13
Top = 840
Width = 375
End
Begin VB.Label Label1
Caption = "X3 ="
Height = 255
Index = 5
Left = 2760
TabIndex = 11
Top = 240
Width = 375
End
Begin VB.Label Label1
Caption = "Y2 ="
Height = 255
Index = 4
Left = 1440
TabIndex = 9
Top = 840
Width = 375
End
Begin VB.Label Label1
Caption = "X2 ="
Height = 255
Index = 3
Left = 1440
TabIndex = 7
Top = 240
Width = 375
End
Begin VB.Label Label1
Caption = "Y1 ="
Height = 255
Index = 2
Left = 120
TabIndex = 5
Top = 840
Width = 375
End
Begin VB.Label Label1
Caption = "Х1 ="
Height = 255
Index = 1
Left = 120
TabIndex = 3
Top = 240
Width = 375
End
Begin VB.Label Label1
Caption = "S ="
Height = 255
Index = 0
Left = 4200
TabIndex = 1
Top = 840
Width = 375
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Command1_Click(Index As Integer)
Text1(0).Text = ""
Text1(1).Text = ""
Text1(2).Text = ""
Text1(3).Text = ""
Text1(4).Text = ""
Text1(5).Text = ""
Text1(6).Text = ""
End Sub
Private Sub Command2_Click()
X1 = Text1(1).Text
X2 = Text1(3).Text
x3 = Text1(5).Text
Y1 = Text1(2).Text
Y2 = Text1(4).Text
Y3 = Text1(6).Text
a = Sqr((X2 - X1) ^ 2 + (Y2 - Y1) ^ 2)
b = Sqr((x3 - X2) ^ 2 + (Y3 - Y2) ^ 2)
c = Sqr((x3 - X1) ^ 2 + (Y3 - Y1) ^ 2)
p = (a + b + c) / 2
S = Sqr(p * (p - a) * (p - b) * (p - c))
Text1(0).Text = S
End Sub
Private Sub Command3_Click()
End
End Sub
Розв’язування задачі в Pascal ABC.NET
procedure Form1.button2_Click(sender: Object; e: EventArgs);
begin
TextBox1.Text:='';
TextBox2.Text:='';
TextBox3.Text:='';
TextBox4.Text:='';
TextBox5.Text:='';
TextBox6.Text:='';
TextBox11.Text:=''
end;
procedure Form1.button3_Click(sender: Object; e: EventArgs);
begin
Close;
end;
procedure Form1.button1_Click(sender: Object; e: EventArgs);
var x1,x2,x3,y1,y2,y3,a,b,c,S,p:real;
begin
x1:=StrToFloat(TextBox1.Text);
x2:=StrToFloat(TextBox2.Text);
x3:=StrToFloat(TextBox3.Text);
y1:=StrToFloat(TextBox4.Text);
y2:=StrToFloat(TextBox5.Text);
y3:=StrToFloat(TextBox6.Text);
a:= sqrt(sqr(x2-x1)+ sqr(y2-y1));
b:= sqrt (sqr (x3-x2) + sqr(y3-y2));
c:= sqrt(sqr(x3-x1)+ sqr(y3-y1));
p:=(a+b+c)/2;
s := round(sqrt (p* (p-a) * (p-b) * (p-c) )*100)/100;
TextBox11.Text:=FloatToStr(S);
end;
Розв’язування задачі в VB.NET
Public Class Form1
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
End
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox7.Text = ""
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim X1 As Double = Convert.ToDouble(TextBox1.Text)
Dim Y1 As Double = Convert.ToDouble(TextBox2.Text)
Dim X2 As Double = Convert.ToDouble(TextBox3.Text)
Dim Y2 As Double = Convert.ToDouble(TextBox4.Text)
Dim X3 As Double = Convert.ToDouble(TextBox5.Text)
Dim Y3 As Double = Convert.ToDouble(TextBox6.Text)
Dim a As Double = Math.Sqrt((X2 - X1) ^ 2 + (Y2 - Y1) ^ 2)
Dim b As Double = Math.Sqrt((X3 - X2) ^ 2 + (Y3 - Y2) ^ 2)
Dim c As Double = Math.Sqrt((X3 - X1) ^ 2 + (Y3 - Y1) ^ 2)
Dim p As Double = (a + b + c) / 2
Dim s As Double = Math.Round(Math.Sqrt(p * (p - a) * (p - b) * (p - c)) * 100) / 100
TextBox7.Text = Convert.ToString(s)
End Sub
End Class
Розв’язування задачі в C#
private void button3_Click(object sender, EventArgs e)
{
System.Environment.Exit(0);
}
private void button2_Click(object sender, EventArgs e)
{
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
textBox4.Text = "";
textBox5.Text = "";
textBox6.Text = "";
textBox7.Text = "";
}
private void button1_Click(object sender, EventArgs e)
{
double X1 = Convert.ToDouble(textBox1.Text);
double Y1 = Convert.ToDouble(textBox2.Text);
double X2 = Convert.ToDouble(textBox3.Text);
double Y2 = Convert.ToDouble(textBox4.Text);
double X3 = Convert.ToDouble(textBox5.Text);
double Y3 = Convert.ToDouble(textBox6.Text);
double a = Math.Sqrt(Math.Pow((X2 - X1), 2) + Math.Pow((Y2 - Y1), 2));
double b = Math.Sqrt(Math.Pow((X3 - X2), 2) + Math.Pow((Y3 - Y2), 2));
double c = Math.Sqrt(Math.Pow((X3 - X1), 2) + Math.Pow((Y3 - Y1), 2));
double p = (a + b + c) / 2;
double s = Math.Round(Math.Sqrt(p * (p - a) * (p - b) * (p - c)) * 100) / 100;
textBox7.Text = Convert.ToString(s);
}
from tkinter import *
def click ():
x1 = float (entry1.get())
y1 = float (entry2.get())
x2 = float (entry3.get())
y2 = float (entry4.get())
x3 = float (entry5.get())
y3 = float (entry6.get())
a =((x2-x1)**(2)+(y2-y1)**(2))**(1/2)
b =((x3-x2)**(2)+(y3-y2)**(2))**(1/2)
c =((x3-x1)**(2)+(y3-y1)**(2))**(1/2)
p=(a + b + c) / 2
s = (p*(p-a)*(p-b)*(p-c))**(1/2)
entry7.insert(0, s)
def click1 ():
entry1.delete(0, END)
entry2.delete(0, END)
entry3.delete(0, END)
entry4.delete(0, END)
entry5.delete(0, END)
entry6.delete(0, END)
entry7.delete(0, END)
root=Tk()
root.title('Формула Герона. Координатна площина')
root.geometry('300x440')
label = Label (text = 'Формула Герона. Координатна площина')
label.pack(pady = 10)
labe2 = Label (text = 'x1')
labe2.pack(pady = 1)
entry1 = Entry ()
entry1.pack (pady = 1)
labe3 = Label (text = 'y1 ')
labe3.pack(pady = 1)
entry2 = Entry ()
entry2.pack (pady = 1)
labe4 = Label (text = 'x2 ')
labe4.pack(pady = 1)
entry3 = Entry ()
entry3.pack (pady = 1)
labe5 = Label (text = 'y2 ')
labe5.pack(pady = 1)
entry4 = Entry ()
entry4.pack (pady = 1)
labe6 = Label (text = 'x3 ')
labe6.pack(pady = 1)
entry5 = Entry ()
entry5.pack (pady = 1)
labe7 = Label (text = 'y3 ')
labe7.pack(pady = 1)
entry6 = Entry ()
entry6.pack (pady = 1)
button = Button (text='Старт', command=click)
button.pack (pady = 10)
button = Button (text='Очистка', command=click1)
button.pack (pady = 1)
labe8 = Label (text = 'Площа S ')
labe8.pack(pady = 1)
entry7 = Entry ()
entry7.pack (pady = 1)
VI етап. Дослідження отриманих результатів на реальність і на відповідність умові
Після одержання підсумкової програми маємо проаналізувати її реальність.
Якщо таке дослідження виявляє помилки, потрібно шукати їхні причини, виправляти їх і знову проходити етапи, наступні за тим, на якому виявилися помилки