На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Не зарегистрирован
ссылка на сообщение  Отправлено: 22.02.22 12:27. Заголовок: Задание 17 №4300 (автор Кабанов)


Добрый день!
Не сходится ответ с решением автора, первое число получается не 140, а 150. Максимальная сумма сходится

Мое решение (здесь f - файловая переменная)

k = 0
maxSum = -1000000000
nums = []
for i in f:
nums += [int(i)]
prev = nums[0]
for i in range(1, len(nums)):
cur = nums[i]
s = prev + cur
if s % 3 == 0 and s % 6 != 0 and (prev * cur) % 10 == 8:
k += 1
if s > maxSum:
maxSum = s
prev = cur
print(k,maxSum)

Подскажите, пожалуйста, что я делаю не так?

Спасибо: 0 
Цитата Ответить
Ответов - 4 [только новые]







Сообщение: 53
ссылка на сообщение  Отправлено: 22.02.22 13:42. Заголовок: Программы "завор..


Программы "заворачивайте" в тэг
...
, при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.


Подозреваю, что работаете с отрицательными числами и не берете модуль при взятии остатка от деления.

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 572
ссылка на сообщение  Отправлено: 22.02.22 16:23. Заголовок: abs(prev * cur) % 10..


abs(prev * cur) % 10 == 8

Discussio mater veritas est Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 23.02.22 19:44. Заголовок: Понял, спасибо больш..


Понял, спасибо большое) Неожиданно, что питон так работает с отрицательными числами при подсчете остатка от деления

Спасибо: 0 
Цитата Ответить





Сообщение: 59
ссылка на сообщение  Отправлено: 23.02.22 20:58. Заголовок: В разных языках прог..


В разных языках программирования остаток по-разному считается. Подробнее на википедии https://ru.wikipedia.org/wiki/Деление_с_остатком

В с++, с#, Pascal знак остатка определяет Делимое, в Python - Делитель.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 4594
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет