ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.11.2023
Просмотров: 153
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Решение.
Выполняя задание, обратите внимание на общие требования к оформлению текстовых документов и презентаций: памятка для учащихся.
Задание 14
В электронную таблицу занесли результаты тестирования учащихся по математике и физике. На рисунке приведены первые строки получившейся таблицы.
| A | B | C | D |
11 | Ученик | Район | Математика | Физика |
22 | Шамшин Владислав | Майский | 65 | 79 |
33 | Гришин Борис | Заречный | 52 | 30 |
44 | Огородников Николай | Подгорный | 60 | 27 |
55 | Богданов Виктор | Центральный | 98 | 86 |
В столбце A указаны фамилия и имя учащегося; в столбце B — район города, в котором расположена школа учащегося; в столбцах C, D — баллы, полученные по математике и физике. По каждому предмету можно было набрать от 0 до 100 баллов. Всего в электронную таблицу были занесены данные по 1000 учащимся. Порядок записей в таблице произвольный.
task14.xls
Выполните задание
Откройте файл с данной электронной таблицей. На основании данных, содержащихся в этой таблице, ответьте на два вопроса:
1. Чему равна наибольшая сумма баллов по двум предметам среди учащихся Майского района? Ответ на этот вопрос запишите в ячейку G1 таблицы.
2. Сколько процентов от общего числа участников составили ученики Майского района? Ответ с точностью до одного знака после запятой запишите в ячейку G2 таблицы.
3. Постройте круговую диаграмму, отображающую соотношение количества участников из Майского, Кировского и Центрального районов. Левый верхний угол диаграммы разместите вблизи ячейки G6.
Решение.
1. В столбце Е для каждого учащегося вычислим сумму баллов по двум предметам, если это ученик Майского района. Для ученика другого района ячейка будет содержать пустую строку. В ячейку E2 запишем формулу
=ЕСЛИ(B2="Майский";C2+D2;"") Скопируем формулу во все ячейки диапазона Е3:Е1001. Для того чтобы найти наибольшую сумму, в ячейку G1 внесём формулу =MАКС(E2:E1001). Получаем: 194.
2. Для ответа на второй вопрос в ячейке H3, найдём количество учеников Майского района, принимавших участие
в тестировании, с помощью формулы: =СЧЁТЕСЛИ(B2:B1001;"Майский"). Выразим полученное значение в процентах от общего числа участников тестирования. Результат запишем в ячейку G2: =H3/1000*100. Получаем: 39,1.
3. В ячейку G2 вставим формулу =СЧЁТЕСЛИ(B2:B1001; "Майский"), в ячейку G3 вставим формулу =СЧЁТЕСЛИ(B2:B1001; "Кировский"), в ячейку G4 вставим формулу =СЧЁТЕСЛИ(B2:B1001; "Центральный"). Теперь построим по полученным значениям круговую диаграмму, подпишем сектора.
Ответ: 1. 194; 2. 39,1.
Задание 15
Выберите ОДНО из предложенных ниже заданий: 15.1 или 15.2.
Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними (по сторонам) клетками может стоять стена, через которую Робот пройти не может. У Робота есть девять команд. Четыре команды — это команды-приказы:
вверх вниз влево вправо
При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑ вниз ↓, влево ← , вправо →. Если Робот получит команду передвижения сквозь стену, то он разрушится. Также у Робота есть команда закрасить, при которой закрашивается клетка, в которой Робот находится в настоящий момент.
Ещё четыре команды — это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:
сверху свободно снизу свободно слева свободно справа свободно
Эти команды можно использовать вместе с условием «если», имеющим следующий вид:
если условие то
последовательность команд
все
Здесь условие — одна из команд проверки условия. Последовательность команд — это одна или несколько любых команд-приказов. Например, для передвижения на одну клетку вправо, если справа нет стенки, и закрашивания клетки можно использовать такой алгоритм:
если справа свободно то
вправо
закрасить
все
В одном условии можно использовать несколько команд проверки условий, применяя логические связки и, или, не, например:
если (справа свободно) и (не снизу свободно) то
вправо
все
Для повторения последовательности команд можно использовать цикл «пока», имеющий следующий вид:
нц пока условие
последовательность команд
кц
Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:
нц пока справа свободно
вправо
кц
Выполните задание.
На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с верхним концом вертикальной стены. Длины стен неизвестны. В горизонтальной стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной рядом с вертикальной стеной слева от её нижнего конца. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные непосредственно выше и ниже горизонтальной стены. Проход должен остаться незакрашенным. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок).
При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера проходов внутри стен. Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе. Сохраните алгоритм в текстовом файле.
15.2 Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — сумму чисел, оканчивающихся на 4.
Пример работы программы:
Входные данные | Выходные данные |
3 14 25 24 | 38 |
Решение.
15.1 Следующий алгоритм выполнит требуемую задачу.
нц
пока сверху свободно
вверх
кц
нц
пока не сверху свободно
закрасить
влево
кц
нц
пока сверху свободно
влево
кц
нц
пока не сверху свободно
закрасить
влево
кц
вверх
вправо
нц
пока не снизу свободно
закрасить
вправо
кц
нц
пока снизу свободно
вправо
кц
нц
пока не снизу свободно
закрасить
вправо
кц
15.2 Решение
var n, s, k, g: integer;
begin
s:=0;
readln(n);
for k:=1 to n do
begin
readln(g);
if (g mod 10 = 4) then
s:=s+g;
end;
writeln(s);
end.