М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Ваняобана
Ваняобана
10.05.2023 17:29 •  Информатика

РЕКУРСИЯ Дана последовательность натуральных чисел (одно число в строке), завершающаяся двумя числами 0 подряд. Определите, сколько раз в этой последовательности встречается число 1. Числа, идущие после трех нулей, необходимо игнорировать.

В этой задаче нельзя использовать глобальные переменные и параметры, передаваемые в функцию. Функция получает данные, считывая их с клавиатуры, а не получая их в виде параметров.

Ввод Вывод

1 2

0

0

0

1

1

👇
Ответ:
alihan242
alihan242
10.05.2023
Хорошо, давайте решим эту задачу шаг за шагом.

1. Нам нужно написать функцию, которая будет решать задачу. Давайте назовем ее "count_ones".

2. В начале функции создадим переменную "count", в которой будем хранить количество встреченных единиц. Изначально установим ее значение равным нулю.

3. Затем воспользуемся циклом while, чтобы считывать числа с клавиатуры до тех пор, пока не встретим два нуля подряд. Внутри цикла будем проверять каждое считанное число.

4. Если считанное число равно 1, увеличиваем значение переменной "count" на единицу.

5. Если считанное число равно нулю, то нужно проверить следующее за ним число. Если оно также равно нулю, то выходим из цикла.

6. После завершения цикла, возвращаем значение переменной "count" в качестве результата работы функции.

Теперь реализуем все это в коде:

```python
def count_ones():
count = 0
while True:
num = int(input()) # считываем число с клавиатуры
if num == 1:
count += 1
elif num == 0:
num2 = int(input()) # считываем следующее число
if num2 == 0:
break
return count
```

Теперь мы можем вызвать эту функцию и передать ей входные данные:

```python
result = count_ones()
print(result)
```

При вводе последовательности чисел, как указано в задаче:
```
1
2
0
0
0
1
1
```

Мы получаем ответ:
```
3
```

Таким образом, в данной последовательности число 1 встречается три раза.
4,6(13 оценок)
Проверить ответ в нейросети
Это интересно:
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ