В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
Русик271
Русик271
13.05.2022 06:02 •  Информатика

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

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

Ввод Вывод

1 2

0

0

0

1

1

Ответ:
алгебра171
алгебра171
26.01.2024 12:25
Хорошо, давайте решим эту задачу шаг за шагом.

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 встречается три раза.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?