JS PB Nested loops
Еднакви суми на леви и десни позиции
Напишете програма, която чете от конзолата две петцифрени цели числа в диапазона от 10000 до 99999.
Първото число винаги ще бъде по-малко от второто. Да се намерят и отпечатат на конзолата, разделени с
интервал, онези числа, които се намират между прочетените от конзолата числа и отговарят на следните
условия:
сумите от двете най-десни и двете най-леви цифри на проверяваното число да са равни
ако сумите са различни към по-малката от тях се прибавя средната цифра, на проверяваното число и
получената нова сума се сравнява с другата сума. Ако те са равни числото се отпечатва.
Ако няма числа, отговарящи на условията на конзолата не се извежда резултат.
Примерен вход и изход
Вход
10000
10100
Изход
10001 10010 10100
Обяснения
Първото генерирано число за проверка е 10000. Разделяме числото на 3
групи - двете най- десни цифри, двете най- леви и средната. Сумата на двете
най- десни цифри е 0+0=0, а тази на двете най- -леви 0+1=1. Тъй като сумата
на десните цифри е по-малка от сумата на левите към нея прибавяме
средната цифра 0+0=0. Получаваме 0. Сравняваме новополучената сума със
сумата на левите цифри. Те не са равни, числото не отговаря на условието и
не се отпечатва.
Следващото число за проверка е 10001. Сумата на десните цифри е 1+0=1, а
на левите 0+1=1. Двете суми са равни и не е нужно да извършваме някакви
действия със средната цифра. Числото се отпечатва на конзолата.
Следващото число е 10002. Не отговаря на условията и не се отпечатва.
Последното число за проверка е 10100. Сумата на десните цифри е 0+0=0, на
левите 0+1=1. Дясната сума е по-малка и затова към нея прибавяме средната
цифра 0+1=1. Новополучената сума сравняваме със сумата на левите цифри.
Двете суми са равни, числото отговаря на условията и се отпечатва.
Това е условието на задачата, а това е моето решение - https://pastebin.com/PY8FJB0X, за което получавам 40/100.
Съдейки по резултата ми проблемът е с тази част на условието " ако сумите са различни към по-малката от тях се прибавя средната цифра, на проверяваното число и получената нова сума се сравнява с другата сума. Ако те са равни числото се отпечатва."
Някой да вижда какъв е проблема?
Здравей, решението ми е абсолютно същото като твоето. С единствената разлика, че аз използвам Мат.абс. Благодаря ти!
Качвам отново решението - https://pastebin.com/NquF372C.