using System;
namespace LappObj3{
///
///
///
class Lapp{
///
/// Kõikide lappide pindala kokku
///
static int pindalasumma=0;
///
/// Lapi enese pikem külg
///
private int pikkus;
///
/// Lühem külg
///
private int laius;
///
/// Värvitoon
///
private string toon;
///
/// Uue lapi loomine
///
public Lapp(int upikkus, int ulaius, string utoon){
if(upikkus>ulaius){
pikkus=upikkus;
laius=ulaius;
} else {
pikkus=ulaius;
laius=upikkus;
}
pindalasumma+=KysiPindala();
toon=utoon;
}
///
/// Väljastusmeetod pikkuse tarvis
///
public int KysiPikkus(){
return pikkus;
}
///
/// Laiuse teatamine
///
public int KysiLaius(){
return laius;
}
///
/// Tooni teatamine
///
public string KysiToon(){
return toon;
}
///
/// Pindala arvutamine olemasolevate andmete põhjal
///
public int KysiPindala(){
return laius*pikkus;
}
///
/// Kõigi lappide pindalade summa
///
public static int KysiPindaladeSumma(){
return pindalasumma;
}
///
/// Lapi andmete väljatrükk
///
public void Tryki(){
Console.WriteLine("Lapp pikkusega {0}, laiusega {1} "+
" tooniga {2}", pikkus, laius, toon);
}
///
/// Soovitud osani poolitus
///
public Lapp Poolita(double protsent){
pindalasumma-=KysiPindala();
int vanapikkus=pikkus, vanalaius=laius;
if(pikkus>laius){
pikkus=(int)(pikkus*protsent/100);
pindalasumma+=KysiPindala();
return new Lapp(vanapikkus-pikkus, laius, toon);
} else {
laius=(int)(laius*protsent/100);
pindalasumma+=KysiPindala();
return new Lapp(pikkus, vanalaius-laius, toon);
}
}
///
/// Täpselt pooleks
///
public Lapp Poolita(){
return Poolita(50);
}
}
///
/// Katsetusklass
///
class LapiProov{
///
/// Massiivis olevate lappide pindalade summa leidmine
///
static int LapiMassiiviPindala(Lapp[] m){
int kogupindala=0;
for(int i=0; i