Софтуерно Инженерство
Loading...
+ Нов въпрос
Vesso1980 avatar Vesso1980 483 Точки
Best Answer

Здравей имаш малък пропуск на 49 ред if (cenaZaVSichkiPodaruci < pariSKoitoRazpolagaDqdoKoleda) трябва да бъде <= защото изпускаш варианта, в който парите стигат точно. Така дава 100%.

0
IvonaPaskova avatar IvonaPaskova 0 Точки

Аз имам въпрос.

Моят код го написах по подобен начин , само че if конструкцията ми завършва на else и judge не го признава, а тук в този код завършва на else if и judge го признава. Защо става така и не трябва ли всяка if конструкция ,независимо колко if els-a съдържа да завършва с един последен else?

0
Vesso1980 avatar Vesso1980 483 Точки

Ами не е същото защото else ти обхваща всички останали варианти. И ако ти подадат вход, който е различен от думите, които те интересуват else го хваща и пак изпълнява условието, което не би трябвало да се изпълни. Не си задължена да завършваш с else. С else if хващаш точно тези условия, които те интересуват. Може да се използва else ако човек е 100% сигурен, че входът няма да се състои от нещо неочаквано. Примерно, ако знам, че вариантите за вход са само 1, 2, 3, 4 то 4ката мога да я хвана само с else, но ако не съм сигурен какво число ще получа, а ме интересуват само тези 4 то тогава трябва само с else if. Ако забележиш в условието на тази задачата, никъде не пише, че подаръкът ще бъде само от списъка с подаръци , който имаме. Пише че ще бъде видът подарък и толкова, но дали ще е валиден с нашия списък не е ясно. Когато не е описано в условието, че входът ще е винаги валиден, то препоръчително е да се хващат само валидните ситуации. 

0