Тема 9. Работа с электронными таблицами

9.02 Количество строк, удовлетворяющих условию

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела работа с электронными таблицами
Решаем задачу:

Ошибка.
Попробуйте повторить позже

Задача 1#74922

Откройте файл 9_1.xlsx электронной таблицы, содержащей в каждой строке шесть натуральных чисел. Определите количество строк таблицы, содержащих числа, для которых выполнены оба условия:

  1. в строке все числа имеют различный остаток при делении на 6;
  2. сумма чисел строки кратна 25 или 7.

В ответе запишите только число — количество подходящих строк.

Вложения к задаче
Показать ответ и решение

Решение Excel:

Откроем файл электронной таблицы. Для начала при помощи функции ОСТАТ определим остаток при делении на 6 для каждого числа в строке. Формула для столбца G будет выглядеть так: =ОСТАТ(A1;6).

Теперь нужно растянуть эту формулу на следующие 5 столбцов, чтобы узнать остаток каждого числа в строке.

Посчитаем при помощи функции СЧЁТЕСЛИ сколько раз определенный остаток при делении на 6 встречается в строке. Формула для столбца M будет выглядеть так: =СЧЁТЕСЛИ($G1:$L1;G1)

Теперь нужно растянуть эту формулу на следующие 5 столбцов чтобы узнать сколько раз встречается определенный остаток при делении на 6 в строке. Если сумма M:R столбцов будет равна 6,значит,в данной строке все остатки различные.

С помощью функции ОСТАТ мы узнаем кратна ли сумма чисел в строке 25 или 7. Полная формула для столбца S будет выглядеть так: =ЕСЛИ(ИЛИ(ОСТАТ(СУММ(A1:F1);25)=0;ОСТАТ(СУММ(A1:F1);7)=0);1;0).

Осталось в столбце T написать условие, проверяющее, что все числа в строке различные и их сумма кратна 25 или 7. Формула будет иметь такой вид: =ЕСЛИ(И(СУММ(M1:R1)=6;S1=1);1;0).

Теперь растянем эту формулу на все строки и посчитаем количество единиц. Ответ:8.

Решение программой:

f = open(’9.txt’, ’r’)
lines = f.readlines()

count = 0

for line in lines:
    nums = list(map(int, line.split()))
    remainders = [num % 6 for num in nums]
    if len(set(remainders)) == 6:
        if sum(nums) % 25 == 0 or sum(nums) % 7 == 0:
            count += 1

print(count)


Ответ: 8

Специальные программы

Все специальные программы

Программа
лояльности v2.0

Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!

Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение

Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты

Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей

Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ

Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!

cyberpunkMouse
cyberpunkMouse
Рулетка
Вы можете получить скидку в рулетке!