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

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

Ответы

Автор ответа: vimmortal2
0

Программа:
Python:

n, arr, position = int(input()), [], 0

for i in range(n):  arr.append(input())

for i in range(n):

  if len(arr[i]) % 3 == 0:

     position = i + 1

     break

print(position)

Объяснение:

В начале с помощью множественного присваивания в одной строке регистрируем переменные n - кол-во имён, arr - массив для хранения будущих имён, position - позиция имени, которое кратно трём.

Далее с помощью цикла повторяем тело n раз: в массив добавляется введённая с клавиатуры строка. С помощью второго цикла повторяем тело также n раз. Так как i принимает значения от 0 до n - 1, в операторе if мы ищем элемент с индексом i, находим его длину с помощью метода len(). Если длина кратна трём, переменной position присваиваем значение текущего i, останавливаем выполнение цикла.

В самом конце - вывод суммы значения переменной position и единицы (добавляем единицу, так как по условию нумерация начинается с единицы, а не с нуля), если значение переменной position не равно нулю, иначе выводим "НЕТ" (значит нет имени, которое делится на 3).

Результат:

5

ваня

мир

вася

вова

кру

2

Похожие вопросы