1
0
mirror of https://github.com/ikoHSE/SR4.git synced 2024-07-14 10:20:25 +03:00

Initial commit

This commit is contained in:
ilyakooo0 2018-04-15 10:40:23 +03:00
commit 87b4ba622b
41 changed files with 932 additions and 0 deletions

35
.vs/SR4/xs/UserPrefs.xml Normal file
View File

@ -0,0 +1,35 @@
<Properties StartupConfiguration="{B24C8C3A-6F8B-4AD7-BB48-5C48873CB4FF}|Default">
<MonoDevelop.Ide.Workbench ActiveDocument="Triangle/Triangle.cs">
<Files>
<File FileName="SR4/Program.cs" Line="20" Column="49" />
<File FileName="Write/Program.cs" Line="7" Column="18" />
<File FileName="Triangle/Triangle.cs" Line="53" Column="1" />
<File FileName="Triangle/iko.cs" Line="5" Column="12" />
</Files>
<Pads>
<Pad Id="ProjectPad">
<State name="__root__">
<Node name="SR4" expanded="True">
<Node name="Read" expanded="True">
<Node name="References" expanded="True" />
</Node>
<Node name="Triangle" expanded="True">
<Node name="Triangle.cs" selected="True" />
</Node>
<Node name="Write" expanded="True">
<Node name="References" expanded="True" />
</Node>
</Node>
</State>
</Pad>
</Pads>
</MonoDevelop.Ide.Workbench>
<MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|x86" />
<MonoDevelop.Ide.ItemProperties.Read PreferredExecutionTarget="MonoDevelop.Default" />
<MonoDevelop.Ide.DebuggingService.Breakpoints>
<BreakpointStore />
</MonoDevelop.Ide.DebuggingService.Breakpoints>
<MonoDevelop.Ide.DebuggingService.PinnedWatches />
<MultiItemStartupConfigurations />
<MonoDevelop.Ide.ItemProperties.Write PreferredExecutionTarget="MonoDevelop.Default" />
</Properties>

29
SR4.sln Normal file
View File

@ -0,0 +1,29 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Read", "SR4\Read.csproj", "{9524549F-3DF4-4566-BF81-F08246E54EB9}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Write", "Write\Write.csproj", "{B24C8C3A-6F8B-4AD7-BB48-5C48873CB4FF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Triangle", "Triangle\Triangle.csproj", "{C16F84C8-31C7-43F7-A593-3EBE333EC7D1}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9524549F-3DF4-4566-BF81-F08246E54EB9}.Debug|x86.ActiveCfg = Debug|x86
{9524549F-3DF4-4566-BF81-F08246E54EB9}.Debug|x86.Build.0 = Debug|x86
{9524549F-3DF4-4566-BF81-F08246E54EB9}.Release|x86.ActiveCfg = Release|x86
{9524549F-3DF4-4566-BF81-F08246E54EB9}.Release|x86.Build.0 = Release|x86
{B24C8C3A-6F8B-4AD7-BB48-5C48873CB4FF}.Debug|x86.ActiveCfg = Debug|x86
{B24C8C3A-6F8B-4AD7-BB48-5C48873CB4FF}.Debug|x86.Build.0 = Debug|x86
{B24C8C3A-6F8B-4AD7-BB48-5C48873CB4FF}.Release|x86.ActiveCfg = Release|x86
{B24C8C3A-6F8B-4AD7-BB48-5C48873CB4FF}.Release|x86.Build.0 = Release|x86
{C16F84C8-31C7-43F7-A593-3EBE333EC7D1}.Debug|x86.ActiveCfg = Debug|Any CPU
{C16F84C8-31C7-43F7-A593-3EBE333EC7D1}.Debug|x86.Build.0 = Debug|Any CPU
{C16F84C8-31C7-43F7-A593-3EBE333EC7D1}.Release|x86.ActiveCfg = Release|Any CPU
{C16F84C8-31C7-43F7-A593-3EBE333EC7D1}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

28
SR4/Program.cs Normal file
View File

@ -0,0 +1,28 @@
using System;
using System.Xml.Serialization;
using System.IO;
namespace SR4 {
class MainClass {
public static void Main(string[] args) {
Triangle.Triangle[] triangles;
try {
var stream = new FileStream("../../../triangles.xml", FileMode.Open);
var format = new XmlSerializer(typeof(Triangle.Triangle[]));
triangles = format.Deserialize(stream) as Triangle.Triangle[];
Array.Sort(triangles);
foreach (var triangle in triangles) {
Console.WriteLine(triangle);
}
} catch {
Console.WriteLine("There was an error reading the file.");
}
}
}
}

View File

@ -0,0 +1,26 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle("SR4")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

47
SR4/Read.csproj Normal file
View File

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{9524549F-3DF4-4566-BF81-F08246E54EB9}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>SR4</RootNamespace>
<AssemblyName>SR4</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ExternalConsole>true</ExternalConsole>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ExternalConsole>true</ExternalConsole>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml.Serialization" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Triangle\Triangle.csproj">
<Project>{C16F84C8-31C7-43F7-A593-3EBE333EC7D1}</Project>
<Name>Triangle</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>

BIN
SR4/bin/Debug/SR4.exe Normal file

Binary file not shown.

BIN
SR4/bin/Debug/SR4.pdb Normal file

Binary file not shown.

BIN
SR4/bin/Debug/Triangle.dll Normal file

Binary file not shown.

BIN
SR4/bin/Debug/Triangle.pdb Normal file

Binary file not shown.

View File

@ -0,0 +1 @@
85deafded028a41ab74476515e10848f89eed32a

View File

@ -0,0 +1,8 @@
/Users/ilya/Developer/HSE/Костюченко_4/SR4/SR4/bin/Debug/SR4.exe
/Users/ilya/Developer/HSE/Костюченко_4/SR4/SR4/bin/Debug/SR4.pdb
/Users/ilya/Developer/HSE/Костюченко_4/SR4/SR4/bin/Debug/Triangle.dll
/Users/ilya/Developer/HSE/Костюченко_4/SR4/SR4/bin/Debug/Triangle.pdb
/Users/ilya/Developer/HSE/Костюченко_4/SR4/SR4/obj/x86/Debug/Read.csproj.CoreCompileInputs.cache
/Users/ilya/Developer/HSE/Костюченко_4/SR4/SR4/obj/x86/Debug/SR4.exe
/Users/ilya/Developer/HSE/Костюченко_4/SR4/SR4/obj/x86/Debug/SR4.pdb
/Users/ilya/Developer/HSE/Костюченко_4/SR4/SR4/obj/x86/Debug/Read.csprojResolveAssemblyReference.cache

BIN
SR4/obj/x86/Debug/SR4.exe Normal file

Binary file not shown.

BIN
SR4/obj/x86/Debug/SR4.pdb Normal file

Binary file not shown.

View File

@ -0,0 +1,26 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle("Triangle")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

52
Triangle/Triangle.cs Normal file
View File

@ -0,0 +1,52 @@
using System;
using System.Xml;
namespace Triangle {
/// <summary>
/// A right angle triangle.
/// </summary>
[Serializable]
public class Triangle: IComparable<Triangle> {
/// <summary>
/// A side of the triangle.
/// </summary>
public double A {get; set;}
/// <summary>
/// A side of the triangle.
/// </summary>
public double B {get; set;}
/// <summary>
/// A side of the triangle.
/// </summary>
public double C {
get {
return Math.Sqrt(A*A + B*B);
}
}
/// <summary>
/// The area of the triangle.
/// </summary>
public double S {
get {
return A * B / 2;
}
}
public Triangle() {
}
public override string ToString() {
return $"A: {A:f2} \tB: {B:f2} \tC: {C:f2} \tS: {S:f2}";
}
int IComparable<Triangle>.CompareTo(Triangle other) {
return (other.S/other.C).CompareTo(S/C);
}
}
}

41
Triangle/Triangle.csproj Normal file
View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{C16F84C8-31C7-43F7-A593-3EBE333EC7D1}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>Triangle</RootNamespace>
<AssemblyName>Triangle</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Serialization" />
<Reference Include="System.Runtime.Serialization" />
</ItemGroup>
<ItemGroup>
<Compile Include="Triangle.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="iko.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
<StartAction>Project</StartAction>
<ConsolePause>true</ConsolePause>
</PropertyGroup>
</Project>

Binary file not shown.

Binary file not shown.

107
Triangle/iko.cs Normal file
View File

@ -0,0 +1,107 @@
using System;
using static System.Console;
namespace Iko {
public static class Iko {
/// <summary>
/// Gets a double value from the user.
/// </summary>
/// <returns>The double.</returns>
/// <param name="text">Prompt</param>
/// <param name="validate">A validation function</param>
/// <param name="falseText">Text to print if user fails</param>
public static double GetDouble(string text, Func<double, bool> validate, string falseText) {
Write(text);
double res;
while (true) {
if (double.TryParse(ReadLine(), out res) && validate(res)) {
return res;
} else {
WriteLine(falseText);
Write(text);
}
}
}
/// <summary>
/// Gets a double value from the user.
/// </summary>
/// <returns>The double.</returns>
/// <param name="text">Prompt</param>
/// <param name="falseText">Text to print if user fails</param>
public static double GetDouble(string text, string falseText) {
return GetDouble(text, _ => { return true; }, falseText);
}
/// <summary>
/// Gets a float value from the user.
/// </summary>
/// <returns>The double.</returns>
/// <param name="text">Prompt</param>
/// <param name="validate">A validation function</param>
/// <param name="falseText">Text to print if user fails</param>
public static float GetFloat(string text, Func<float, bool> validate, string falseText) {
Write(text);
float res;
while (true) {
if (float.TryParse(ReadLine(), out res) && validate(res)) {
return res;
} else {
WriteLine(falseText);
Write(text);
}
}
}
/// <summary>
/// Gets a float value from the user.
/// </summary>
/// <returns>The double.</returns>
/// <param name="text">Prompt</param>
/// <param name="falseText">Text to print if user fails</param>
public static float GetFloat(string text, string falseText) {
return GetFloat(text, _ => { return true; }, falseText);
}
/// <summary>
/// Gets an int value from the user.
/// </summary>
/// <returns>The double.</returns>
/// <param name="text">Prompt</param>
/// <param name="validate">A validation function</param>
/// <param name="falseText">Text to print if user fails</param>
public static int GetInt(string text, Func<int, bool> validate, string falseText) {
Write(text);
int res;
while (true) {
if (int.TryParse(ReadLine(), out res) && validate(res)) {
return res;
} else {
WriteLine(falseText);
Write(text);
}
}
}
/// <summary>
/// Gets an int value from the user.
/// </summary>
/// <returns>The double.</returns>
/// <param name="text">Prompt</param>
/// <param name="falseText">Text to print if user fails</param>
public static int GetInt(string text, string falseText) {
return GetInt(text, _ => { return true; }, falseText);
}
/// <summary>
/// Repeats a given function.
/// </summary>
/// <param name="f">the function to be repeated</param>
public static void Repeat(Action f) {
do {
f();
Write("Press Enter to repeat program. Press any other key to quit.");
} while (ReadKey().Key == ConsoleKey.Enter);
}
}
}

View File

@ -0,0 +1 @@
26064c01187a39112c66f518d62a1007e5e8435d

View File

@ -0,0 +1,6 @@
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Triangle/obj/Debug/Triangle.csprojResolveAssemblyReference.cache
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Triangle/obj/Debug/Triangle.csproj.CoreCompileInputs.cache
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Triangle/bin/Debug/Triangle.dll
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Triangle/bin/Debug/Triangle.pdb
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Triangle/obj/Debug/Triangle.dll
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Triangle/obj/Debug/Triangle.pdb

Binary file not shown.

Binary file not shown.

33
Write/Program.cs Normal file
View File

@ -0,0 +1,33 @@
using System;
using static Iko.Iko;
using Triangle;
using System.Xml.Serialization;
using System.IO;
namespace Write {
class MainClass {
static Random rand = new Random();
public static void Main() {
var n = GetInt("N = ", x => x > 0, "That is not a valid integer, larger than 0.");
var triangles = new Triangle.Triangle[n];
for (var i = 0; i < n; i++) {
triangles[i] = new Triangle.Triangle();
triangles[i].A = rand.NextDouble() * 29 + 1;
triangles[i].B = rand.NextDouble() * 29 + 1;
}
try {
var stream = new FileStream("../../../triangles.xml", FileMode.Create);
var format = new XmlSerializer(typeof(Triangle.Triangle[]));
format.Serialize(stream, triangles);
} catch {
Console.WriteLine("There was an error writing the file.");
}
}
}
}

View File

@ -0,0 +1,26 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle("Write")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

47
Write/Write.csproj Normal file
View File

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{B24C8C3A-6F8B-4AD7-BB48-5C48873CB4FF}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>Write</RootNamespace>
<AssemblyName>Write</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ExternalConsole>true</ExternalConsole>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ExternalConsole>true</ExternalConsole>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Serialization" />
</ItemGroup>
<ItemGroup>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Triangle\Triangle.csproj">
<Project>{C16F84C8-31C7-43F7-A593-3EBE333EC7D1}</Project>
<Name>Triangle</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>

Binary file not shown.

Binary file not shown.

BIN
Write/bin/Debug/Write.exe Normal file

Binary file not shown.

BIN
Write/bin/Debug/Write.pdb Normal file

Binary file not shown.

View File

@ -0,0 +1 @@
85deafded028a41ab74476515e10848f89eed32a

View File

@ -0,0 +1,8 @@
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Write/bin/Debug/Write.exe
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Write/bin/Debug/Write.pdb
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Write/bin/Debug/Triangle.dll
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Write/bin/Debug/Triangle.pdb
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Write/obj/x86/Debug/Write.csprojResolveAssemblyReference.cache
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Write/obj/x86/Debug/Write.csproj.CoreCompileInputs.cache
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Write/obj/x86/Debug/Write.exe
/Users/ilya/Developer/HSE/Костюченко_4/SR4/Write/obj/x86/Debug/Write.pdb

Binary file not shown.

Binary file not shown.

403
triangles.xml Normal file
View File

@ -0,0 +1,403 @@
<?xml version="1.0"?>
<ArrayOfTriangle xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Triangle>
<A>11.590066778748328</A>
<B>8.45989516166034</B>
</Triangle>
<Triangle>
<A>13.408463797256566</A>
<B>11.282894549091763</B>
</Triangle>
<Triangle>
<A>26.500275969272607</A>
<B>27.645732498562772</B>
</Triangle>
<Triangle>
<A>21.3934979827113</A>
<B>20.232584909644249</B>
</Triangle>
<Triangle>
<A>5.852705262532786</A>
<B>4.8671410153001275</B>
</Triangle>
<Triangle>
<A>12.381108361473823</A>
<B>11.980707896398709</B>
</Triangle>
<Triangle>
<A>18.329954963796752</A>
<B>2.1361606587358568</B>
</Triangle>
<Triangle>
<A>11.777939608217189</A>
<B>23.828438237695227</B>
</Triangle>
<Triangle>
<A>27.911080049309451</A>
<B>10.134340782712373</B>
</Triangle>
<Triangle>
<A>29.803544806690674</A>
<B>27.433086728413162</B>
</Triangle>
<Triangle>
<A>27.917988435327068</A>
<B>4.7046660458225134</B>
</Triangle>
<Triangle>
<A>8.2098921510437</A>
<B>10.453102189327172</B>
</Triangle>
<Triangle>
<A>2.7149787739454672</A>
<B>1.1104073450483416</B>
</Triangle>
<Triangle>
<A>15.438877385779694</A>
<B>12.28837327160331</B>
</Triangle>
<Triangle>
<A>24.912193073384554</A>
<B>27.003105659970597</B>
</Triangle>
<Triangle>
<A>11.545656455003495</A>
<B>4.3250944643863916</B>
</Triangle>
<Triangle>
<A>15.286987881775474</A>
<B>16.497282976516189</B>
</Triangle>
<Triangle>
<A>4.3865856683750568</A>
<B>18.063062359608274</B>
</Triangle>
<Triangle>
<A>5.9489991622739469</A>
<B>16.256814009629569</B>
</Triangle>
<Triangle>
<A>7.7351671246509843</A>
<B>17.158297940231069</B>
</Triangle>
<Triangle>
<A>26.106131854516516</A>
<B>9.7492303549075636</B>
</Triangle>
<Triangle>
<A>9.3909375487784565</A>
<B>22.288055134605642</B>
</Triangle>
<Triangle>
<A>10.1610902758134</A>
<B>23.629829560234132</B>
</Triangle>
<Triangle>
<A>23.727255164052945</A>
<B>28.332973533465051</B>
</Triangle>
<Triangle>
<A>27.539886972652695</A>
<B>11.244115075675825</B>
</Triangle>
<Triangle>
<A>16.852272863431033</A>
<B>7.9682857813165917</B>
</Triangle>
<Triangle>
<A>23.208372760661121</A>
<B>18.683286146113314</B>
</Triangle>
<Triangle>
<A>7.19508445923919</A>
<B>7.885400732925814</B>
</Triangle>
<Triangle>
<A>1.2500030106166391</A>
<B>3.9553616079293943</B>
</Triangle>
<Triangle>
<A>9.5679157751462949</A>
<B>26.389868624224263</B>
</Triangle>
<Triangle>
<A>13.206855112783078</A>
<B>10.105124711107987</B>
</Triangle>
<Triangle>
<A>25.3203918362597</A>
<B>8.84959960256219</B>
</Triangle>
<Triangle>
<A>23.321484560296629</A>
<B>9.05601389708743</B>
</Triangle>
<Triangle>
<A>26.693720014623235</A>
<B>2.8326719872805626</B>
</Triangle>
<Triangle>
<A>27.7495749903608</A>
<B>23.714877248608914</B>
</Triangle>
<Triangle>
<A>18.879439075421281</A>
<B>12.654266039679882</B>
</Triangle>
<Triangle>
<A>3.3991736580613878</A>
<B>13.645246866459608</B>
</Triangle>
<Triangle>
<A>2.3269548738966486</A>
<B>19.168758080419508</B>
</Triangle>
<Triangle>
<A>25.313728497044057</A>
<B>15.921837016438058</B>
</Triangle>
<Triangle>
<A>1.2920119135137704</A>
<B>9.0851492137113343</B>
</Triangle>
<Triangle>
<A>7.3831521809953973</A>
<B>17.105903852314643</B>
</Triangle>
<Triangle>
<A>14.748486298950615</A>
<B>14.668077997708728</B>
</Triangle>
<Triangle>
<A>11.150832796539568</A>
<B>4.5773706736869038</B>
</Triangle>
<Triangle>
<A>11.116721703725272</A>
<B>26.603701735662156</B>
</Triangle>
<Triangle>
<A>10.302198517276999</A>
<B>26.501184935449242</B>
</Triangle>
<Triangle>
<A>17.813059348991633</A>
<B>2.9936375543445521</B>
</Triangle>
<Triangle>
<A>7.6888982344832728</A>
<B>11.345298500426718</B>
</Triangle>
<Triangle>
<A>4.9514428274479894</A>
<B>17.001007143408529</B>
</Triangle>
<Triangle>
<A>14.428838518647867</A>
<B>1.5413379462162675</B>
</Triangle>
<Triangle>
<A>28.96657057430901</A>
<B>2.10507637872597</B>
</Triangle>
<Triangle>
<A>26.936109545610897</A>
<B>21.894583176772382</B>
</Triangle>
<Triangle>
<A>1.5833985431042494</A>
<B>4.82500972404378</B>
</Triangle>
<Triangle>
<A>22.364676000254544</A>
<B>5.1980068237511476</B>
</Triangle>
<Triangle>
<A>5.5691121232552039</A>
<B>10.563125894201512</B>
</Triangle>
<Triangle>
<A>17.356331272216668</A>
<B>18.026326378819686</B>
</Triangle>
<Triangle>
<A>12.571672235881756</A>
<B>15.328165994178581</B>
</Triangle>
<Triangle>
<A>3.6633496944156239</A>
<B>1.4827665614349612</B>
</Triangle>
<Triangle>
<A>20.006716443228871</A>
<B>26.100951260468435</B>
</Triangle>
<Triangle>
<A>25.35663841215737</A>
<B>11.652313838550967</B>
</Triangle>
<Triangle>
<A>27.698766806022622</A>
<B>19.744113886609725</B>
</Triangle>
<Triangle>
<A>27.93929219336216</A>
<B>1.0900182789610784</B>
</Triangle>
<Triangle>
<A>22.530473470003567</A>
<B>2.2483900549115567</B>
</Triangle>
<Triangle>
<A>6.9018178996172814</A>
<B>16.885801521076729</B>
</Triangle>
<Triangle>
<A>5.9653678051966095</A>
<B>22.053875157634671</B>
</Triangle>
<Triangle>
<A>9.6938040390116171</A>
<B>15.325947730488119</B>
</Triangle>
<Triangle>
<A>5.7399195617716376</A>
<B>24.77239055082779</B>
</Triangle>
<Triangle>
<A>16.955266442129048</A>
<B>29.1869355347878</B>
</Triangle>
<Triangle>
<A>12.149039668100439</A>
<B>15.488569004223015</B>
</Triangle>
<Triangle>
<A>16.522505309210395</A>
<B>10.923476574906836</B>
</Triangle>
<Triangle>
<A>22.303401997454188</A>
<B>6.95282597278842</B>
</Triangle>
<Triangle>
<A>29.008258550431698</A>
<B>1.5535958095237592</B>
</Triangle>
<Triangle>
<A>10.24737046344549</A>
<B>22.275872138457313</B>
</Triangle>
<Triangle>
<A>14.929512699567487</A>
<B>3.4848933548130527</B>
</Triangle>
<Triangle>
<A>29.33028785992893</A>
<B>7.2061316730483114</B>
</Triangle>
<Triangle>
<A>21.338582057197851</A>
<B>8.8504915669795565</B>
</Triangle>
<Triangle>
<A>21.644368731251156</A>
<B>3.7765246800969003</B>
</Triangle>
<Triangle>
<A>3.8425711401936464</A>
<B>10.222456687699284</B>
</Triangle>
<Triangle>
<A>4.1657841853638109</A>
<B>26.846091266649815</B>
</Triangle>
<Triangle>
<A>29.364109706768815</A>
<B>29.335008488192692</B>
</Triangle>
<Triangle>
<A>27.9231918244265</A>
<B>6.478874479177815</B>
</Triangle>
<Triangle>
<A>29.23263901855454</A>
<B>13.515236965620534</B>
</Triangle>
<Triangle>
<A>1.8693218551898942</A>
<B>3.0303835417285483</B>
</Triangle>
<Triangle>
<A>13.286406817048046</A>
<B>17.79928168505397</B>
</Triangle>
<Triangle>
<A>28.372899552049535</A>
<B>4.476414159627824</B>
</Triangle>
<Triangle>
<A>19.333726893334521</A>
<B>5.5181474390058538</B>
</Triangle>
<Triangle>
<A>10.57844595125804</A>
<B>15.433161837250536</B>
</Triangle>
<Triangle>
<A>19.348911841096783</A>
<B>21.7459408332342</B>
</Triangle>
<Triangle>
<A>20.735855336178027</A>
<B>27.3856963838384</B>
</Triangle>
<Triangle>
<A>20.842647815515587</A>
<B>1.2546013315462514</B>
</Triangle>
<Triangle>
<A>17.318877355344071</A>
<B>4.4169245448042282</B>
</Triangle>
<Triangle>
<A>17.5555136611478</A>
<B>28.7592361321483</B>
</Triangle>
<Triangle>
<A>1.7152931004368202</A>
<B>1.8433124720320628</B>
</Triangle>
<Triangle>
<A>23.681578999236962</A>
<B>2.9633948816747382</B>
</Triangle>
<Triangle>
<A>21.929819410634142</A>
<B>7.7328097544297627</B>
</Triangle>
<Triangle>
<A>26.021151349423988</A>
<B>15.302948401450621</B>
</Triangle>
<Triangle>
<A>16.124459297454198</A>
<B>17.187496821017703</B>
</Triangle>
<Triangle>
<A>13.000284750480338</A>
<B>16.824527518276369</B>
</Triangle>
<Triangle>
<A>7.7201869542338821</A>
<B>16.493021584811167</B>
</Triangle>
<Triangle>
<A>29.684273954333865</A>
<B>8.2169869217169413</B>
</Triangle>
<Triangle>
<A>9.9894653214092681</A>
<B>27.130231014513519</B>
</Triangle>
</ArrayOfTriangle>