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

У Васи в кружке n учеников. На каждом занятии они пишут свои имена в столбик. Вечером Вася переносит их в свой журнал. Имён много, переносить скучно. Чтобы скрасить это занятие, Вася считает буквы в каждом имени и загадывает: дойду до первого имени, количество букв в котором делится на 3, и съем шоколадку. Дано число n и n имён. Выведи номер первого имени, длина которого делится на 3, или "НЕТ", если такого имени нет. Нумерация начинается с единицы.


Alpixx: какой язык программирования?
verasysovskaya: Pyton
verasysovskaya: Помогите пожалуйста. СРОЧНО!!!
YKR4: дается список из имен и надо вывести первое имя, длинна которого делится на 3?
verasysovskaya: нужно выводить номер первого имени, а не само имя!
YKR4: тогда просто надо написать print(len(name))
YKR4: а нет стоп
YKR4: for name in enumerate(names):

if len(name[1]) % 3 == 0:

print(name[0])

break

else:
print('НЕТ')

Ответы

Автор ответа: YKR4
3

Ответ:

# names - произвольный список имен

names = [

   'Александр',

   'Сергей',

   'Владимир',

   'Елена',

   'Татьяна',

   'Андрей',

   'Алексей'

]

for name in names:

   if len(name) % 3 == 0:

       print(name)

       break

else:

   print('НЕТ')

Объяснение:

Прохожусь по каждому значению списка names и если кол-во символов в строке значения(кол-во букв в имени) без остатка делится на 3, то вывожу это на экран и завершаю цикл, если такого нет вывожу "НЕТ".


verasysovskaya: Мне очень помогло ваше решение, но правильным решением является следующее: n=int(input())
k=0
i=1
while i if len(input()) % 3 == 0:
k=i
break
i+=1
if k==0:print("НЕТ")
else:print(k)
YKR4: ну перебирать массив используя while и i+=1 такое себе. Я написал как вывести номер, но если нужно именно ваш метод, не имею права возражать
ivanov610: лучше так:
ivanov610: n=int(input())
lst=[]
for _ in range(n):
lst.append(input())
def div3(l):
for i, x in enumerate(l):
if len(x) % 3 == 0:
return i+1
return "НЕТ"


print(div3(lst))
YKR4: я не намеренно не использовал функции, но и вправду с функциями лучше.
Похожие вопросы
Предмет: Русский язык, автор: Аноним
Предмет: Русский язык, автор: Daler0804