Форум » Обработка целых чисел » Тема 17 ,номер 161 » Ответить

Тема 17 ,номер 161

christoph35: Здравствуйте, помогите пожалуйста разобраться с заданием из вашего сборника. Тема 17, номер 161. В файле 17-3.txt содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от –10 000 до 10 000 включительно. Определите и запишите в ответе сначала количество пар элементов последовательности, в которых сумма элементов делится на 2 и не оканчивается на 6, затем максимальное из средних арифметических элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности. Вот моя программа: f=open('17-3.txt') n=[int(i) for i in f] count=0 maxx=0 for i in range(len(n)-1): if (n+n[i+1])%2==0 and (n + n[i+1])%10!=6: count+=1 maxx=max(maxx,(n+n[i+1])//2) print(count,maxx) У меня, к сожалению, количество не совпадает с ответом, а вот максимальное из пар находит верно. Скажите пожалуйста, что у меня неправильно в программе. Мой ответ на количество 1996, а в ответе 1971Спасибо!

Ответов - 3

patnikk: abs()

фыв: че вообще значит n + n[i + 1] ты что курил, когда такую ересь писал

Ж: Это система сама убирает n[ i], воспринимая [ i] как форматирование текста - курсив - выход : писать с пробелом перед i или не использовать i , а использовать j abs нужен, чтобы правильно получать остаток при делении на 10 у отрицательных чисел -3%10=7 abs(-3)%10=3 int(str(-3)[-1])=3




полная версия страницы