Stránka 1 z 1

Převod hodnoty na 2D souřadnice  Vyřešeno

Napsal: 19 lis 2015 16:38
od SPolygon
Jenom takový dotázek, v jednom programu potřebuji převést hodnotu (A) na 2D souřadnice (X,Y). Pole je o rozměrech 0-29 šířka a 0-17 výška a počítá se zhora a zprava (tzn. levý horní roh je 0,0 a spodní pravý roh je 29,17). Problém je v tom, že hodnota co přichází (A) může být například 31, to znamená že jí musím umístit na souřadnice (2,2). Přišel jsem na to, jak z hodnoty A vypočítat Y, ale nevím jak na X.
Dokázal jsem vymyslet jeden postup, ale ten by zahrnoval aby se u každé hodnoty X 17 krát určilo jestli je menší a zároveň větší než určité hodnoty, ale to zabere spoustu času, popřípadě to způsobí i spoždění a mohly by se mi smíchat dvě hodnoty.
Jen by mě zajímalo, zda nejde vymyslet nějaká jednoduchá rovnice, jako např. ta na výpočet Y pomocí zaokrouhlení nahoru (ceiling):

Y = ceiling(A/29)

Re: Převod hodnoty na 2D souřadnice

Napsal: 19 lis 2015 16:46
od lubos123
Slo by ze bys tu plochu bral jako radek takze 1 by byla 1:0 petka by byla 5:0 tricitka 1:1 vdychky bys to vydelil 29

Dodatečně přidáno po 1 minutě 56 vteřinách:
Vydelils bys to 29 to by byl sloupec a zbytek by byl radek nebo naopak

Re: Převod hodnoty na 2D souřadnice

Napsal: 19 lis 2015 16:58
od SPolygon
chápu chápu, zkusím to nějak vymyslet, každopádně nezaručuju že když to napíšu já tak že to bude fungovat :D

Re: Převod hodnoty na 2D souřadnice

Napsal: 19 lis 2015 17:06
od lubos123
zkusím ti to udělat v konzolové aplikaci

Dodatečně přidáno po 17 minutách 26 vteřinách:
Chceš to v C# ?
v příloze máš exe
a v spoileru máš kód ,třeba ho pochopíš.
► Zobrazit spoiler


Dodatečně přidáno po 22 minutách 33 vteřinách:
Číslo X může být jaké chceš ale Y nesmí být větší než 28 , jestli chceš to větší tak musíš všechny 29 přepsat na větší číslo :)

Re: Převod hodnoty na 2D souřadnice

Napsal: 19 lis 2015 18:28
od SPolygon
moc díky za odpovědi, stačilo vzít zbytek po tom dělení

X = (A%29)
Y = ceiling(A/29)