- •Примерные ответы на профильные билеты е.А. Еремин, а.П. Шестаков
- •Билет № 1
- •Литература
- •2. С помощью электронной таблицы смоделировать 100 исходов бросания игрального кубика. Сравнить результаты опыта с теоретическими значениями.
- •3. Построить таблицу истинности для заданного логического выражения (логическое выражение должно содержать не менее четырех логических операций, в том числе импликацию).
- •Билет № 2
- •Литература
- •2. В векторном графическом редакторе построить чертеж, иллюстрирующий условие планиметрической задачи.
- •Билет № 3
- •3. Построить логическую схему для заданной таблицы истинности (таблица задана для трех переменных).
- •Вероятностный подход к измерению информации
- •Алфавитный (объемный) подход к измерению информации
- •Литература
- •2. С использованием электронной таблицы произвести обработку данных с помощью статистических функций
- •Варианты заданий
- •3. Решить текстовую логическую задачу (необходимо использовать не менее четырех переменных)
- •Варианты заданий
- •Билет № 4
- •2. Средствами почтовой программы обеспечить автоматическое уведомление отправителя о получении от него письма
- •Билет № 5
- •1. Язык программирования. Типы данных. Реализация основных алгоритмических структур на языке программирования. Основные этапы разработки программ
- •2. Сформировать и выполнить запрос к готовой базе данных для поиска группы записей по заданным критериям
- •3. Подсчитать размер текстового файла при заданной кодовой таблице, формате страницы и количестве страниц. Оценить размеры того же текста в других изученных форматах текстовых редакторов
- •Билет № 6
- •1. Технология программирования. Структурное и объектно-ориентированное программирование. Процедуры и функции. Локальные и глобальные переменные
- •2. Средствами почтовой программы создать фильтр для автоматического распределения входящих писем по почтовым папкам в зависимости от темы письма
- •Служба mail.Ru
- •3. Задание на подсчет полного набора символов (мощности алфавита), используемого при кодировании информации
- •Билет № 7
- •1. Типы данных. Структуры данных. Обработка массивов. Итеративные и рекурсивные алгоритмы обработки массивов. Многомерные массивы
- •3. Определить информационный объем переданного сообщения за определенный период времени при заданной пропускной способности канала.
- •Билет № 8
- •1. Основные понятия и операции формальной логики. Законы логики. Логические переменные. Логические выражения и их преобразования. Построение таблиц истинности логических выражений
- •2. С помощью электронной таблицы вычислить значение функции, заданной рекуррентным соотношением
- •.3. Представить на языке программирования вычислительный алгоритм, записанный в виде блок-схемы. (Получить результат в виде значения переменной.)
- •Билет № 9
- •1. Логические элементы и схемы. Типовые логические устройства компьютера: полусумматор, сумматор, триггеры, регистры. Описание архитектуры компьютера с опорой на составляющие ее логические устройства
- •2. С помощью электронной таблицы построить график функции
- •3. Записать на языке программирования алгоритм для вычисления значения функции при заданных значениях аргументов. Произвести вычисления
- •Билет № 10
- •2. Найти на компьютере все файлы, удовлетворяющие заданному критерию, и объединить их в архив, защищенный паролем. Распаковать архив в заданный каталог
- •1. Поиск файлов
- •2. Архивирование файлов с защитой паролем
- •3. Разархивирование файлов
- •3. Написать программу, вычисляющую значение n-го члена последовательности, заданной по алгоритму. Произвести ввод и отладку программы, проанализировать полученный результат
- •Билет № 11
- •2. Найти на указанном диске все файлы, удовлетворяющие заданному критерию, объединить в самораспаковывающийся архив и записать на компакт-диск.
- •3. Написать программу на поиск элементов массива по заданному условию. Произвести ввод и отладку программы. Проанализировать полученный результат
- •Билет № 12
- •Билет № 13
- •1. Компьютерные сети. Аппаратные средства компьютерных сетей. Топология локальных сетей. Характеристики каналов (линий) связи. Профессии, связанные с обеспечением эксплуатации сетей
- •2. С помощью электронной таблицы решить уравнение с заданной точностью и представить решение графически
- •3. Написать программу для вычисления количества сочетаний (формулируется как комбинаторная задача, решаемая в общем случае). Произвести ввод и отладку программы. Проанализировать полученный результат
- •Билет № 14
- •2. В готовом текстовом документе отформатировать заголовки различного уровня соответствующими стилями. Выполнить автоматическое формирование оглавления.
- •3. Вычислить информационный объем сообщения исходя из вероятностного подхода.
- •Билет № 15
- •Взаимосвязь аппаратного и программного обеспечения компьютера
- •Многообразие операционных систем
- •Понятие о системном администрировании
- •Программные и аппаратные средства для решения различных профессиональных задач
- •2. С помощью электронной таблицы решить задачу табулирования заданной функции. Результат представить в табличной и графической форме.
- •3. Построить модель заданного физического процесса и реализовать ее на компьютере. Проанализировать полученный результат.
- •Билет № 16
- •Специализированное программное обеспечение для защиты программ и данных
- •Технологии и средства защиты информации в глобальной и локальной компьютерных сетях от разрушения, несанкционированного доступа
- •2. Отсканировать страницу текста, выполнить его распознавание и (при необходимости) корректировку. Результат сохранить в текстовом документе.
- •3. Построить имитационную модель заданной системы и реализовать ее на компьютере. Проанализировать полученный результат.
- •Билет № 17
- •Файловый принцип организации данных
- •Понятие файла
- •Файлы прямого и последовательного доступа
- •Типы файлов
- •Операции с файлами
- •Аппаратное обеспечение хранения данных и функционирования файловой системы
- •2. С помощью системы проверки орфографии исправить ошибки в готовом текстовом документе.
- •3. Написать и отладить программу обработки массива (суммирование элементов, сортировка и пр.). Проанализировать полученный результат.
- •Варианты заданий
- •Билет № 18
- •2. Создать компьютерную презентацию из 3–5 слайдов на заданную тему, содержащую текст, графику и элементы анимации.
- •3. Определить скорость работы модема исходя из времени передачи сообщения и его информационного объема (желательно преобразование единиц измерения).
- •1. Могилев а.В., Пак н.И., Хеннер е.К. Информатика: Учебное пособие для педагогических вузов / Под ред. Е.К. Хеннера. М.: Академия, 2004, 848 с. Билет № 19
- •2. Создать две взаимосвязанные web-страницы на заданную тему, содержащие текст, графику, гиперссылки и простые элементы управления (кнопки, переключатели, списки).
- •3. Рассчитать, какое количество страниц текста можно сохранить на дискете в виде архива при заданных размерах страницы, кодовой таблице и коэффициенте сжатия.
- •Билет № 20
- •Билет № 21
- •2. С помощью электронной таблицы вычислить прибыль по вкладу при заданной доходности (сложные проценты).
- •3. Для заданного логического выражения определить множества значений переменных, при которых выражение истинно или ложно. (Выражение содержит не менее трех логических переменных.)
- •Билет № 22
- •2. Написать и отладить программу обработки целочисленных данных.
- •Варианты заданий
- •3. По заданной таблице истинности записать и упростить логическое выражение. (Таблица задается для трех логических переменных.)
- •Билет № 23
- •2. Написать и отладить программу обработки вещественных данных.
- •Задания
- •3. Построить таблицу истинности для заданной логической схемы (логическая схема должна содержать не менее трех входов).
- •Реляционная модель
- •Билет № 24
- •Иерархическая модель
- •Сетевая модель
- •Системы управления базами данных
- •3. Написать и отладить программу обработки символьных данных. Проанализировать полученный результат.
- •Варианты заданий
- •Билет № 25
- •2. По заданному документу создать реляционную базу данных из трех таблиц, исключив при этом дублирование информации.
- •3. Рассчитать объем звукового файла при заданной продолжительности звучания, частоте дискретизации и заданном формате файла.
2. Найти на указанном диске все файлы, удовлетворяющие заданному критерию, объединить в самораспаковывающийся архив и записать на компакт-диск.
Решение
Поиск файлов по заданному критерию описан в билете № 10, вопрос 2. Поэтому перейдем ко второй части задачи.
Итак, пусть есть некоторый набор файлов. Объединим их в самораспаковывающийся архив.
При задании общих параметров сжатия (рассмотрим их на примере WinRar) укажем Создать SFX-архив, что и предполагает создание самораспаковывающегося архива.
Архив в нашем примере был создан в корневой папке диска C:. В общем случае он может быть сохранен на произвольном диске в произвольной папке.
В контекстном меню для архивного файла
выберем Отправить
DVD-RW-дисковод.
Таким образом, файл будет приготовлен
для записи.
Затем перейдем на диск, соответствующий этому приводу, и выберем Файл Записать файлы на компакт-диск.
Очевидно, что задача может быть решена и другими средствами. Например, запись на диск можно осуществить с помощью программы Nero Burning ROM. Учащийся при выполнении задания сам выбирает необходимые средства.
3. Написать программу на поиск элементов массива по заданному условию. Произвести ввод и отладку программы. Проанализировать полученный результат
Пример 1. В произвольном линейном массиве найти первый по порядку элемент, равный заданному числу x.
Решение. Просматриваем массив до тех пор, пока не будет найден указанный элемент или не будет просмотрен весь массив.
QBasic
DECLARE SUB Vvod (N!, A!())
DECLARE SUB Vivod (N!, A!())
DECLARE SUB poisk (N!, A!(), x, p!)
DIM A(20), N, x AS INTEGER
RANDOMIZE TIMER - 32767
PRINT "N? ": INPUT N
CALL Vvod(N, A())
CALL Vivod(N, A())
PRINT "Что ищем? ": INPUT x
CALL poisk(N, A(), x, p)
IF p = 0 THEN
PRINT "No"
ELSE
PRINT "Номер: "; p
END IF
SUB poisk (N, A(), x, p)
i = 1
p = 0
WHILE (i <= N) AND (p = 0)
IF A(i) = x THEN p = i
i = i + 1
WEND
END SUB
SUB Vivod (N, A())
FOR i = 1 TO N
PRINT USING "####"; A(i);
NEXT i
END SUB
SUB Vvod (N, A())
FOR i = 1 TO N
A(i) = -10 + INT(RND(1) * 20)
NEXT i
END SUB
Pascal
Program Find;
Type arr=array[1..20] of integer;
Procedure Vvod(n: byte; var a: arr);
Var i: byte;
Begin
For i := 1 to n do
A[i] := -10 + random(20)
End;
Procedure Vivod(n: byte; const a: arr);
Var i: byte;
Begin
For i := 1 to n do
Write(a[i]:4);
Writeln
End;
Procedure poisk(n: byte; const a: arr; x: integer; var p: byte);
Var i: byte;
Begin
i := 1; p := 0;
while (i <= n) and (p = 0) do begin
if a[i] = x then p := i;
i := i + 1
end;
End;
Var a: arr; x: integer; n, p: byte;
Begin
Randomize;
Write('n?'); readln(n);
Vvod(n, a);
Vivod(n, a);
Write('Что ищем?'); readln(x);
Poisk(n, a, x, p);
If p = 0 then writeln('Элемент не найден')
else writeln('номер элемента: ', p)
End.
C++
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
void Vvod(int n, int a[20]);
void Vivod(int n, int a[20]);
void Poisk(int n, int a[20], int x, int &p);
void main()
{int n, a[20], x, p;
cout << "Сколько элементов в массиве? ";
cin >> n;
randomize();
Vvod(n, a);
Vivod(n, a);
cout << "Что ищем?";
cin >> x;
Poisk(n, a, x, p);
if (!p) cout << "Элемент не найден";
else cout << "номер элемента: " << p;
}
void Vvod(int n, int a[20])
{ int i;
for (i = 1; i <= n; i++)
a[i] = -10 + random(20);
}
void Vivod(int n, int a[20])
{ int i;
for (i = 1; i <= n; i++)
{cout.width(4); cout << a[i];}
}
void Poisk(int n, int a[20], int x, int &p)
{ int i;
p = 0;
for (i = 1; i <= n && !p; i++)
if (a[i] == x) p = i;
}
Пример 2. В отсортированном линейном массиве найти элемент, равный заданному числу x.
Решение. Воспользуемся алгоритмом бинарного поиска. Для этого выделим средний элемент массива. По сравнению с x средний элемент может быть: больше x (в этом случае поиск продолжается в левой части массива); меньше x (в этом случае поиск продолжается в правой части массива); равен x (в этом случае поиск завершается). В первом и втором случае поиск продолжаем по той же схеме.
Кроме совпадения некоторого элемента массива с заданным x поиск прекращается, если левая граница участка поиска станет больше, чем правая, что означает, что элемент в массиве отсутствует.
QBasic
DECLARE SUB Vvod (N!,A() AS INTEGER)
DECLARE SUB Vivod (N!,A() AS INTEGER)
DECLARE SUB Bpoisk (N!,A() AS INTEGER,x,p!)
DIM A(20) AS INTEGER
RANDOMIZE TIMER - 32767
PRINT "N? ": INPUT N
CALL Vvod(N, A())
CALL Vivod(N, A())
PRINT "Что ищем? ": INPUT x
CALL Bpoisk(N, A(), x, p)
IF p = 0 THEN
PRINT "No"
ELSE
PRINT "Номер: "; p
END IF
SUB Bpoisk (N, A() AS INTEGER, x, c)
L = 1: R = N
DO
c = INT((L + R) / 2)
IF A(c) > x THEN R = c - 1
IF A(c) < x THEN L = c + 1
LOOP WHILE (L <= R) AND (A(c) <> x)
IF A(c) <> x THEN c = 0
END SUB
SUB Vivod (N, A() AS INTEGER)
FOR i = 1 TO N
PRINT USING "####"; A(i);
NEXT i
END SUB
SUB Vvod (N, A() AS INTEGER)
A(1) = -20 + INT(RND(1) * 20)
FOR i = 2 TO N
A(i) = A(i - 1) + INT(RND(1) * 6)
NEXT i
END SUB
Pascal
Program Find;
Type arr = array[1..20] of integer;
Procedure Vvod(n: byte; var a: arr);
Var i: byte;
Begin
A[1] := -20 + random(20);
For i := 2 to n do
A[i] := A[i - 1] + random(6)
End;
Procedure Vivod(n: byte; const a: arr);
Var i: byte;
Begin
For i := 1 to n do
Write(a[i]:4);
Writeln
End;
Procedure bpoisk(n: byte; const a: arr;
x: integer; var C: byte);
Var L,R: byte;
Begin
L := 1; R := n;
Repeat
C := (L + R) div 2;
If A[C] > x then R := c - 1;
If A[C] < x then L := c + 1
Until (L > R) or (A[c] = x)
If A[C] <> x then C := 0
End;
Var a: arr; x: integer; n, p: byte;
Begin
Randomize;
Write('n? '); readln(n);
Vvod(n, a);
Vivod(n, a);
Write('Что ищем? '); readln(x);
BPoisk(n, a, x, p);
If p = 0 then
writeln('Элемент не найден') else
writeln('номер элемента: ', p)
End.
C++
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
void Vvod(int n, int a[20]);
void Vivod(int n, int a[20]);
void BPoisk(int n, int a[20], int x, int &c);
void main()
{int n, a[20], x, p;
cout << "Сколько элементов в массиве? ";
cin >> n;
randomize();
Vvod(n, a);
Vivod(n, a);
cout << " Что ищем?";
cin >> x;
BPoisk(n, a, x, p);
if (!p) cout << "Элемент не найден";
else cout << "номер элемента: " << p;
}
void Vvod(int n, int a[20])
{ int i;
a[1] = -20 + random(20);
for (i = 2; i <= n; i++)
a[i] = a[i - 1] + 1 + random(6);
}
void Vivod(int n, int a[20])
{ int i;
for (i = 1; i <= n; i++)
{cout.width(4); cout << a[i];}
cout << endl;
}
void BPoisk(int n, int a[20], int x, int &c)
{ int L, R;
L = 1; R = n;
do
{c = (L + R)/2;
if (a[c] > x) R = c - 1;
if (a[c] < x) L = c + 1;}
while (L <= R && a[c] != x);
if (a[c] != x) c = 0;
}
Варианты заданий
Написать программу на поиск элементов массива по заданному условию. Произвести ввод и отладку программы. Проанализировать полученный результат.
1. Даны действительные числа a1, a2, ..., an. Поменять местами наибольший и наименьший элементы.
2. Задана последовательность из N вещественных чисел. Определить, сколько чисел меньше K, равно K и больше K.
3. Определить количество элементов последовательности натуральных чисел, кратных числу M и заключенных в промежутке от L до N.
4. Определить, сколько процентов от всего количества элементов последовательности целых чисел составляют нечетные элементы.
5. В массиве целых чисел с количеством элементов n найти наиболее часто встречающееся число. Если таких чисел несколько, то определить наименьшее из них.
