Предмет: Информатика, автор: tkd186

Как вы думаете, решит ли правильно данная программа задачку:
Найдите количество 6-значных чисел, произведение цифр которых делится на 4.

g = int(input())
for a in range(1, 10):
for b in range(1, 10):
for c in range(1, 10):
for d in range(1, 10):
for e in range(1, 10):
for f in range(1, 10):
if a*b*c*d*e*f % 4 == 0:
g += 1
print (g)

Ответы

Автор ответа: 65biso2
1

Нет, как минимум потому, что все цифры кроме первой могут находится не только в диапазоне [1,10), но также могут равняться нулю.


tkd186: Нет, спасибо. А если от нуля 5 из них поставить, то норм?
tkd186: Да ну?
tkd186: Понял
EliseyIvanov02: Привет можешь помочь с информатикой?
Автор ответа: ksmsergei29
0

Программа выполнится правильно. Человек выше (или ниже, не знаю как получится) написал что значения могут быть от нуля. Если любое значение заменить на ноль, то произведение в любом случае станет равно 0. А 0 на 4 не делится.

Плюс я лично проверил на языке Python.

Единственный нюанс, не понимаю, зачем ты читаешь "g", ведь она должна прибавляться сама. В начале её лучше приравнять к нулю: g = 0

---------------------------------------------

Добавлено: Если вам нужны и нули, то стоит просто заменить все 1 на 0 в диапазоне после "а":

g = 0

for a in range(1, 10):

for b in range(0, 10):

 for c in range(0, 10):

  for d in range(0, 10):

   for e in range(0, 10):

    for f in range(0, 10):

     if a*b*c*d*e*f % 4 == 0:

      g += 1

print (g)

input()


ksmsergei29: Если по вашему: 846875
tkd186: Согласен
tkd186: Всем спасибо большое! (хоть я и так правильно решил)))
EliseyIvanov02: Привет можешь помочь с информатикой?
ksmsergei29: Привет, могу попробывать.
EliseyIvanov02: вы еще тут?
ksmsergei29: да, слушаю вас
EliseyIvanov02: давай я задание тогда сощдам
ksmsergei29: Давай, буду ждать
EliseyIvanov02: https://znanija.com/task/34160015
Похожие вопросы
Предмет: Математика, автор: Didiididididi