Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

NachevB avatar NachevB 14 Точки

Java, Nested Loops Exercise, 04. Equal Sums Even Odd Position

Здравейте,
Може ли някой да ми обясни защо задача 04. Equal Sums Even Odd Position от  Nested Loops Exercise минава в Judge когато цикълът е зададен да се върти докато първото число <= второто число. В условието е посочено "Винаги първото въведено число ще бъде по малко от второто."

Ето линк към моето решение 100/100 в Judge, където while() цикълът се върти докато първото число <=второто число: https://pastebin.com/u95vp9yg

Ето и същото решение, с единствена промяна while() цикълът да се върти докато първото число <второто число, както е посочено в условието. При този случай точките са 70/100: https://pastebin.com/mhs4fxy0

Цялото условие може да бъде намерено в този документ: https://softuni.bg/downloads/svn/programming-basics-v4/course-content/course-resources/Java/07.PB-Java-Nested-Loops/07.4%20PB-Java-Nested-Loops-Exercise.docx
 

0
Programming Basics 26/03/2019 19:22:57
willystyle avatar willystyle 2472 Точки

Всичко е нормално. "Винаги първото въведено число ще бъде по малко от второто." И ти променяш първото число++ в цикъла, но във второто решение, чрез проверката  първото число <второто число, тогава не проверяващ реално дали последното число отговаря на критерийте.

т.е. пропускаш случаите когато второто число отговаря на критерийте.

0
NachevB avatar NachevB 14 Точки

Благодаря, но пак не разбирам логиката. Пример: Взех правилния код с цикъл <= и за вход му подавам две еднакви числа 100001 и 100001. Още от този момент нарушавам условието "Винаги първото въведено число ще бъде по малко от второто", но поради <= в цикъла бива отпечатано числото 100001. Не разбирам защо изобщо трябва да вървят проверки когато първото число още при входа не е по-малко от второто.
 

0
26/03/2019 20:16:20
willystyle avatar willystyle 2472 Точки

Ами такъв вход нямаш, както е упоменато, но например при вход 100001 и 100002, ти с второто решение няма да провериш дали 100002 отговаря на условието. Подобно за всички входове. ти проверяваш до предпоследното число и въпросните 30% са явно входове при които последното число отговаря на условието.

0
NachevB avatar NachevB 14 Точки

При вход 100001 и 100002 , независимо дали се използва цикъл условие <= или < винаги се отпечатва 100001. Това означава, че в Judge има вход с две еднакви числа, въпреки че условието на задачата изключва подобен сценарий.

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