using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace haromszogek
{
class DHaromszog
{
private
double aOldal;
private
double bOldal;
private
double cOldal;
public
double a
{
get
{ return aOldal; }
set
{
if
(value > 0)
{
aOldal = value;
}
else
{
throw
new Exception("Az \'a\' nem lehet nulla vagy negatív!");
}
}
}
public
double b
{
get
{ return bOldal; }
set
{
if
(value > 0)
{
bOldal = value;
}
else
{
throw
new Exception("Az \'b\' nem lehet nulla vagy negatív!");
}
}
}
public
double c
{
get
{ return cOldal; }
set
{
if
(value > 0)
{
cOldal = value;
}
else
{
throw
new Exception("Az \'c\' nem lehet nulla vagy negatív!");
}
}
}
public
DHaromszog(string sor, int sorSz)
{
SorSzama = sorSz;
string[]
adat = new string[3];
adat = sor.Split();
a = Convert.ToDouble(adat[0]);
b = Convert.ToDouble(adat[1]);
c = Convert.ToDouble(adat[2]);
if
(!EllMegszerkesztheto) throw new Exception("A háromszöget nem lehet megszerkeszteni!");
if
(!EllNovekvoSorrend) throw new Exception("Az adatok nincsenek növekvő sorrendben!");
if
(!EllDerekszogu) throw new Exception("A háromszög nem derékszögű!");
}
public
int SorSzama
{
get;
set;
}
public
double Kerulet
{
get
{
return
a + b + c;
}
}
public
double Terulet
{
get
{
return
a * b / 2;
}
}
public
bool EllNovekvoSorrend
{
get
{
if
(a <= b && b <= c)
{
return
true;
}
else
{
return
false;
}
}
}
public bool EllDerekszogu
{
get
{
if
(Math.Pow(a, 2) + Math.Pow(b,
2) == Math.Pow(c, 2) ||
Math.Pow(a,
2) + Math.Pow(c, 2) == Math.Pow(b, 2) ||
Math.Pow(b,
2) + Math.Pow(c, 2) == Math.Pow(a, 2))
{
return
true;
}
else
{
return
false;
}
}
}
public
bool EllMegszerkesztheto
{
get
{
if
((a + b > c) && (a + c > b) && (b + c > a))
{
return
true;
}
else
{
return
false;
}
}
}
public
override string
ToString()
{
return
SorSzama + ".sor: a=" + a + " b=" + b + "
c=" + c + " K=" +
Kerulet + " T=" + Terulet;
}
}
class Program
{
static
void Main(string[]
args)
{
try
{
StreamReader
be = new StreamReader("haromszogek.txt");
int
i=0;
while
(!be.EndOfStream)
{
DHaromszog
h = new DHaromszog(be.ReadLine(),i+1
);
Console.WriteLine(h.ToString());
i++;
}
be.Close();
}
catch
(Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadLine();
}
}
}
Szövegfájl:
1,11 1,48 1,85
8,0 15,0 17,0
4,0 3,0 2,0
3,0 4,0 5,0
9,0 40,0 48,0
0,0 2,2 4,56
1,2 3,4 5,6
11,7 15,6 19,5
|