Yra 9 aukštų namas. Kiekviename laiptinės aukšte yra po 3 butus. Namo laiptinių skaičius mažesnis už 20. Butai turi numerius. Jų numeriai yra iš aibės [1, laiptinių sk. * 27]. Aukšto numeris išskaičiuojamas iš buto numerio. Ir sąlyga tokia, kad nurodome aukštus pvz nuo 3 iki 5 ir reikia surasti kokie butai yra tuose aukštuose t.y. nurodyti jų numerius. Ir niekaip nesugalvoju koks turi būti algoritmas. Gal kas nors turite minčių?
Čia iš KTU šitas uždavinys? :D
Aš tai šitą vietą dariau taip(išrauka iš klasės Butas.cs):
public Butas(int butonr, int plotas, int kambariai,int kaina, int telnr)
{
ButoNr = butonr;
Plotas = plotas;
KambSkc = kambariai;
Kaina = kaina;
TelNr = telnr;
Laiptine = LaiptinesRadimas(butonr);
Aukstas = AukstoRadimas(butonr, Laiptine);
}
private int LaiptinesRadimas(int butonr)
{
int laiptine = butonr / 27;
if(butonr!=0 && butonr % 27 == 0) {
laiptine--;
}
return laiptine;
}
private int AukstoRadimas(int butonr, int laiptine)
{
int aukstas = (butonr-1 - laiptine * 27) / 3;
aukstas++;
return aukstas;
}