menu
person


ГДЗ по информатике 11 класс учебник Босова § 8. Структурированные типы данных. Массивы


1. Приведите примеры задач поиска информации в больших массивах данных.

Поиск конкретного слова или фразы в текстовом документе или коллекции документов.
Поиск определенных значений в таблице или базе данных, например, поиск всех продуктов с определенной ценой.
Поиск подходящих кандидатов на вакансию по заданным критериям.
Поиск дубликатов данных в большой коллекции записей.
Поиск похожих изображений в большой базе изображений.
Анализ логов событий для выявления определенных трендов или аномалий.

2. Почему важно уметь решать задачи, связанные с обработкой массивов, путём однократного просмотра массива?

Эффективность: Однократное прохождение массива обычно является наиболее эффективным способом решения задач, так как это позволяет избежать лишних операций и оптимизировать процесс обработки данных.
Временная сложность: Операции, которые выполняются за один проход, обычно имеют линейную временную сложность, что делает решение задачи быстрым и масштабируемым.
Оперативная память: Однократное прохождение массива обычно требует небольшого объема оперативной памяти, так как данные могут быть обработаны по мере их поступления, без необходимости хранения всех данных в памяти.
Сложность кода: Прохождение массива один раз может упростить структуру кода и сделать его более читаемым и понятным.
Производительность: Операции, выполняемые за один проход, обычно имеют меньшую вычислительную нагрузку, что способствует улучшению производительности программы.

3. Программист написал программу суммирования элементов массива, но допустил в ней ошибку.


1) Что получится в результате выполнения этой программы, если в качестве элементов массива ввести числа: 1, -2, 3, -4, 5, -6, 7, -8, 9, -10?
2) Придумайте пример такого массива, обработка которого с помощью этой программы приводила бы к правильному результату.

3) Найдите ошибку, допущенную программистом.

4. Программист написал программу нахождения произведения элементов массива, но допустил в ней ошибку.

1) Что получится в результате выполнения этой программы, если в качестве элементов массива ввести числа: 1, -2, 3, -4, 5, -6, 7, -8, 9, -10?
2) Придумайте пример такого массива, обработка которого с помощью этой программы приводила бы к правильному результату.
3) Найдите ошибку, допущенную программистом.

5. На блок-схеме представлен алгоритм одновременного поиска максимального и минимального значений элементов массива:

Реализуйте этот алгоритм на языке программирования и выполните программу для массива из задания 6.

6. Имеется одномерный целочисленный массив из семи элементов:

Каким будет результат преобразования массива по следующему алгоритму?

Пусть к = 1, тогда

i

2

3

4

5

6

7

A[i]

12

5

8

5

15

20

7. Имеется ли разница между операциями вставки в массив элемента на место с индексом k и замены значения элемента массива с индексом k? Обоснуйте свой ответ.

8. Имеется одномерный целочисленный массив из семи элементов:

Каким будет результат преобразования массива по следующему алгоритму?

i

1

2

3

A[i]

20

15

4

9. Дана программа:

Что получится в результате выполнения этой программы? Какую задачу решает эта программа?

10. Дано натуральное десятичное число n <= 32 000. Напишите программу, в которой:

1) из цифр данного числа формируется одномерный целочисленный массив;
2) определяются наибольшая и наименьшая цифры данного числа;
3) находятся сумма и произведение цифр, образующих данное число.

Program NumberAnalysis;
const
  MaxDigits = 5; // Максимальное количество цифр в числе
var
  n, i, digit, maxDigit, minDigit, sum, product: integer;
  digits: array[1..MaxDigits] of integer;
begin
  writeln('Введите натуральное число (<= 32000): ');
  readln(n);
  
  // Инициализация переменных
  maxDigit := 0;
  minDigit := 9;
  sum := 0;
  product := 1;
  
  // Формирование массива цифр и вычисление нужных параметров
  i := MaxDigits;
  while n > 0 do
  begin
    digit := n mod 10; // Получение последней цифры числа
    digits[i] := digit; // Запись цифры в массив
    if digit > maxDigit then
      maxDigit := digit; // Обновление наибольшей цифры
    if digit < minDigit then
      minDigit := digit; // Обновление наименьшей цифры
    sum := sum + digit; // Добавление цифры к сумме
    product := product * digit; // Умножение цифры на произведение
    n := n div 10; // Удаление последней цифры числа
    i := i - 1;
  end;
  
  writeln('Массив цифр числа:');
  for i := 1 to MaxDigits do
    writeln('Цифра ', i, ': ', digits[i]);
  
  writeln('Наибольшая цифра: ', maxDigit);
  writeln('Наименьшая цифра: ', minDigit);
  writeln('Сумма цифр: ', sum);
  writeln('Произведение цифр: ', product);
end.

11. Требуется упорядочить по весу в порядке неубывания n непрозрачных банок с чаем, имея в своём распоряжении только чашечные весы без гирь. Опишите возможный алгоритм решения этой задачи.

Разделяем банки на две группы примерно равного размера. Если количество банок нечетное, то одна группа будет немного больше.

Помещаем одну группу банок на одну чашку весов, а другую группу на другую чашку.

Сравниваем вес чашек:

Если веса чашек равны, значит, все банки в этих двух группах имеют одинаковый вес.
Если веса чашек разные, то банки на более легкой чашке содержат более легкие банки, и наоборот.
Теперь мы знаем, что более легкие банки находятся в группе с меньшим весом. Разделим эту группу на две подгруппы и повторим процесс сравнения весов для них.

Продолжаем деление групп и сравнение весов до тех пор, пока не останется по одной банке в каждой группе. Тогда мы можем упорядочить банки по весу.


Вы просматриваете решебник по информатике 11 класс учебник Босова § 8. Структурированные типы данных. Массивы

Сообщить о неточной информации или отсутствии ответов
Проверочный код, год рождения Д.И.Менделеева:
В каком задании/вопросе ошибка:
Как должно быть: