Вспомним тему “Работа со списками” и решим следующее задание на программирование:
Дан целочисленный массив из 50 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Необходимо найти и вывести количество пар элементов массива, в которых оба числа двузначные. В данной задаче под парой подразумевается два подряд идущих элемента массива
a = []
n = 50
for i in range(0, n):
a.append(int(input()))
…
Какая идея?
Нам необходимо найти кол-во пар, в которых оба числа -2х значные! Легкий способ проверить на 2х значность: проверить, чтобы число было больше 9, но меньше 100
Как проверять пары? Сказано, что пара — это два подряд идущих элемента массива, поэтому мы можем проверять, например, a[i] и предыдущий — a[i-1] ИЛИ a[i] и последующий — a[i+1], но здесь внимательно с границами цикла(МОЖЕТ СЛУЧИТЬСЯ ВЫХОД ЗА ГРАНИЦУ МАССИВА)
Не забываем про инициализацию используемых переменных!
Напишем код:
1ый способ:
k=0 #будем считать кол-во пар
for i in range(1,n):
if (a[i]>9) and (a[i]<100) and (a[i-1]>9) and (a[i-1]<100):
k=k+1
print(k)
В этом случае мы брали a[i] и a[i-1] элементы, поэтому границы нашего цикла необходимо сделать от 1 до n! Так как индексы списка начинаются с 0, то при i=1 мы проверим пару a[0] c a[1]!
2ой способ:
k=0 #будем считать кол-во пар
for i in range(n-1):
if (a[i]>9) and (a[i]<100) and (a[i+1]>9) and (a[i+1]<100):
k=k+1
print(k)
Здесь же брали a[i] и a[i+1] элементы, поэтому границы нашего цикла необходимо сделать от 0 до n-1!при i=n-1, мы проверим пару a[n] c a[n-1]!
Авторизуйтесь, чтобы оставить комментарий.