Проблем със задачата "2D Rectangle Area".
Здравейте,
някой може ли да ми помогне къде бъркам в задачата, мисля, че съм въвел всичко, но май нещо пропускам...
http://pastebin.com/s9rbYtVe
Здравейте,
някой може ли да ми помогне къде бъркам в задачата, мисля, че съм въвел всичко, но май нещо пропускам...
http://pastebin.com/s9rbYtVe
Включвам изображението, защото обяснението ще бъде малко по-ясно
Тази задача все още не съм я решавал, но сега прочетох, че се въвеждат координатите на горния ляв и на долния десен ъгъл. На този чертеж, горният ляв ъгъл на правоъгълникът има координати (-6, 5). С други думи, ако с (x1, y1) обозначаваме координатите на горния ляв ъгъл, то x1 = -6 и y1 = 5. Долният десен ъгъл има координати (10, -1). За изчисленията е само от значение, че горния и долния десен ъгъл притежават същата стойност по абцисната ос. Тогава, разликата между абцисната стойност на горния десен ъгъл и горния ляв ъгъл предоставя ширината на правоъгълника, докато разликата на ординатните стойности предоставя височината му. Нека сега погледнем кода
double sideA = Math.abs(x1 - y1);
double sideB = Math.abs(x2 - y2);
Ти изваждаш стойността на x1 от y1 (-6 - 5?), но това не е дължината на страната. Ditto и за височината на правоъгълника. Същото се отнася и за другата страна. Коректният израз е
double sideA = Math.abs(x1 - x2);
double sideB = Math.abs(y1 - y2);
Да сега виждам, че като цяло е доста глупаво това, което съм въвел,май съм се опитал съм се от две страни, да направя една страна.
Отговора ти бе много добър и всичко ми стана в пъти по-ясно!
Благодаря!