Loading...
denikk avatar denikk 0 Точки

Conditional Statements Advanced - 07 Operations Between Numbers - защо Judge гърми?

Здравейте,

Задачата е екстра и излиза 100/100. 

https://pastebin.com/qy6S1kGk

 

Обаче наблюдавайте 18 ред - подменям else с else if и добавям условие:

https://pastebin.com/sGMkLedf

 

И Judge ми дава 90/100. Защо се случва така, при положение, че else if в тази ситуация може да е ненужно, но не е грешно

Тагове:
mttnu avatar mttnu 82 Точки
Best Answer

Заради отрицателните числа. По условие Judge пуска дамо положителни (>0) числа, но при извършване на операция изваждане може да се получи отрицателен резултат. Когато се използва деление с остатък (%), и не само, крайният резултат е със знака на делимото, а не на делителят.

Например при входни аргументи

n1 = 5, n2 = 6, operator = '-'  

result щe e със стойност -1

След това в else if-а проверяваш изрично дали result % 2 === 1, но то не е 1, а -1 - връща false и не изпълнява кода от тялото. 

При проверка за четни числа (result % 2 === 0) няма такива проблеми. За това и работи коректно само с else защото ако числото не е четно - няма какво друго да е, освен нечетно. :) 

0
denikk avatar denikk 0 Точки

Благодаря! Вчера доста си блъсках главата 

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.