Задача 4 ( Arrays and Methods more exercises) Grab and Go
Здравейте колеги
Видях че има доста писано специално за тази задача, но всичките решения които бяха дадени, например да се промени типа на сумата от int на long или индекса да ми е -1 а не 0, при мен не помогнаха. Ще ви бъда много благодарен ако ударите едно рамо, но върху моя код а не готова решена задача със различен код. Ето го моето решение което дава 71/100.... :/
https://pastebin.com/jcq4n7Yx
Благодаря много. Само ако може да ми обясниш защо с int не става а с long работи. В какъв смисъл int-ът прелива и не се побира информацията в него като самите числа не са големи. Благодаря отново :)
result += input[i]; - ей това тук както ти е казал колегата ако е int ще изгърми явно в скритите примери подават много големи числа и акумулативния ефект ще счупи обема на int затова ти трябва long ти гледаш примерите но в тестовете числата са други. Ти и локално сам можеш да си го тестваш с debuger-a пусни едно long число и ще видиш как result-a ти ще даде outofrangeexception или нещо такова. Опитай да подадеш 2 500 000 000 и ще изгърми
В Constraints пише следното :
т.е. е напълно възможно например да ти се подаде масив от числа със стойност 2147483647
и съответно като ги сумираш няма как да ги събереш във променлива от тип int.