Объяснение
ИнформатикаЗадание 8. Запросы для поисковых системПоиск неизвестного значения
Бесплатно

Разбор задания 8. Запросы к поисковым системам: поиск неизвестного значения — теория и разбор

Формула включений-исключений для двух запросов И/ИЛИ: как найти неизвестное число страниц — разбор примера и проверка в Python.

Сохранить и продолжить:

Задание 8. Запросы к поисковым системам: поиск неизвестного значения — теория и разбор

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

Что нужно знать

В запросах к поисковику используются два оператора:

  • | (ИЛИ) — находит страницы, где встречается хотя бы одно из слов;
  • & (И) — находит страницы, где встречаются оба слова сразу.

Если изобразить страницы с первым словом кругом A, а страницы со вторым словом — кругом B, то A | B — это вся закрашенная область (объединение кругов), а A & B — только пересечение. Диаграмма Эйлера: объединение и пересечение двух запросов

Страницы из пересечения A & B посчитаны в A | B только один раз, хотя формально относятся и к A, и к B — поэтому при сложении |A| + |B| их приходится вычитать, чтобы не посчитать дважды.

Ключевая формула: |A ИЛИ B| = |A| + |B| − |A И B|. Отсюда, зная любые три величины из четырёх (|A|, |B|, |A&B|, |A|B|), всегда можно найти четвёртую.

Разбор примера

Ниже приведены запросы к поисковому серверу и число найденных страниц (в тысячах):

ЗапросНайдено страниц (тыс.)
Компьютер | Ноутбук940
Компьютер520
Компьютер & Ноутбук130

Сколько страниц (в тысячах) будет найдено по запросу Ноутбук?

Как думать. Известны объединение, одно из слагаемых и пересечение — неизвестное слагаемое находится из той же формулы, только переставленной. Таблица с тремя известными и одним неизвестным значением

Показать решение и ответ

Берём формулу |A ИЛИ B| = |A| + |B| − |A И B| и выражаем |B|:

|B| = |A ИЛИ B| − |A| + |A И B|

Подставляем числа: |Ноутбук| = 940 − 520 + 130 = 550.

Ответ: 550

Как решить в Python

Формулу удобно проверить кодом — заодно это защита от арифметической ошибки при вычитании:

a_or_b = 940
a = 520
a_and_b = 130

b = a_or_b - a + a_and_b
print(b)  # 550
Разбор задания 8. Запросы к поисковым системам: поиск неизвестного значения — теория и разбор

По этой теме

Шпаргалка для задания 8. Информационный поиск (запросы)
Бесплатно

Шпаргалка для задания 8. Информационный поиск (запросы)

Компактная шпаргалка на 2 страницы по заданию 8 ОГЭ информатики «Информационный поиск (запросы)»: формулы, алгоритм решения и разбор примера — держите под рукой при подготовке.

Разбор задания 8. Запросы к поисковым системам: три пересекающихся запроса — теория и разбор
Бесплатно

Разбор задания 8. Запросы к поисковым системам: три пересекающихся запроса — теория и разбор

Три пересекающихся запроса

Формула включений-исключений для трёх слов с вложенными скобками — разбор примера и проверка в Python.

Разбор задания 8. Запросы к поисковым системам: сравнение результатов — теория и разбор
Бесплатно

Разбор задания 8. Запросы к поисковым системам: сравнение результатов — теория и разбор

Сравнение результатов запросов

Как без чисел расставить символьные запросы И/ИЛИ по убыванию числа страниц — разбор примера и проверка в Python.

Запросы для поисковых систем: тренажёр
Бесплатно

Запросы для поисковых систем: тренажёр

Шесть листов с задачами на подсчёт количества страниц по запросам поисковых систем (операции И/ИЛИ) для задания 8 ОГЭ по информатике. Материалы: ФИПИ, открытый банк заданий.

PNG+5Файл