3.Tочка върху отсечка
Здравейте! Опитвам се да реша тази задача, но judge ми дава 90 от 100...
Кода:
http://pastebin.com/N5u46k6j
Здравейте! Опитвам се да реша тази задача, но judge ми дава 90 от 100...
Кода:
http://pastebin.com/N5u46k6j
Здравей колега,
1.да ми е по-лесно да си представя даденото в задачата наредих точките по големина отляво надясно, чрез "говорящи" променливи (var firstP и var secondP), които присвояват стойностите от конзолата.
2.Проверявам дали въпросната точка, която именувах Point се намира в интервала между firstP и secondP. В случай, че това е вярно - изпечатваме "in" и за понататъшните пресмятания се налага да декларираме в началото на кода още 2 променливи (firstDiff и secondDiff). В конкретния случай secondDiff пази стойност от разликата на втората точка и търсената точка (point), а firstDiff пази стойност от разликата на търсената точка (point) и първата точка от отсечката. С вложена if конструкция проверявам коя от разликите е по-малка по стойност - тя представлява най-късият път от интересуващата ни точка до една от 2-те точки.
3.Ако въпросната точка не се намира в интервала между firstP и secondP конзолата изпечатва "out" и отново пресмята стойностите на разликите пазени от secondDiff и firstDiff, но този път с Math.Abs, за да не се получи отрицателно число. С вложен if проверяваме и изпечатваме по-малката по стойност разлика, която представлява най-късия път от интересуващата ни точка до една от двете точки, които са краища на отсечката.
ето и кода - работи коректно: http://pastebin.com/8Ph9WLpd
За дълъг код във форума използвай pastebin!
Съжалявам - грешката е моя! Следващия път ще използвам pastebin!
Хубав ден от мен.