Школьная олимпиада по информатике с ответами

Школьная олимпиада по информатике с ответами

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

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

Чтобы ученикам было легче добиться высоких результатов на олимпиаде, мы предлагаем им подготовиться, используя материалы из этого раздела. У нас собраны примеры олимпиадных заданий по информатике для 5 — 11 классов. К представленным заданиям указаны правильные ответы и решения, а значит, их можно использовать не только на уроке с учителем, но и самостоятельно. Сверяясь с ответами, ученик сможет выполнить работу над ошибками и восполнить пробелы в знаниях.

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

(Безкомпьютерный вариант, продолжительность 2 урока по 40 минут.)

1. По какому правилу числа следуют друг за другом? Заполни пустые клетки.

2. Расставь числа 6, 5, 4, 3, 2, 1 в кружках так, чтобы сумма чисел вдоль каждой прямой равнялась 12.

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

а) 1 кубик; б) 2 кубика; в) 3 кубика; г) 4 кубика

4. Расставь двух (трех, четырех) охранников у стен банка так, чтобы у каждой стены было по 1 охраннику.

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

Нарисуй схему, запиши ответ.

6. На рисунке изображены кубик и его развертка. Какой цвет находится на нижней грани кубика?

7. Митя, Сережа, Толя, Костя и Юра пришли в музей до открытия и встали в очередь в кассу. Митя пришел позже Сережи, Толя раньше Кости, Митя раньше Толи, Юра позже Кости. В каком порядке ребята стояли в очереди? (Напишите первые буквы имен в нужном порядке в прямоугольниках.)

8. У стиральной машинки есть две кнопки: красная и синяя:

Читайте также:  Пушка баллу 2 квт

Если нажать на красную кнопку, то в машину наливается 3 литра воды, а если нажать на синюю – выливается 2 литра.

В машину вмещается 10 литров воды. В какой последовательности надо нажимать кнопки, чтобы налить полную машину воды? Если нажимать кнопки неправильно, то произойдет вот что:

Робот составил такой алгоритм заполнения стиральной машины:

Подумай, что произойдет, если его выполнить?______________________________________

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

Алгоритм “Стиральная машина”

Номер 1 2 3 4 5
Команда

9. С помощью 2 прямых линий разделите подковы на 3 и 4 части.

10. Кто выигрывает?

Прочитай правила игры и рассмотри рисунки.

Запиши секреты, которые нужно знать, чтобы выиграть. Закрась кольца четвертой пирамиды.

Регистрационная карточка участника олимпиады.

Карточка участника олимпиады I тур (впишите ответы)

№ задания Ответ участника Баллы за ответ участника
1 ___, ___, ___
2
3
4
5
6
7
8
9 10 Выбрать ____________ ход

Дополняй каждый ход другого игрока до ________ предметов

(К – красный карандаш, З – зеленый)

Общий балл

Если ответ исправить нельзя, на оборотной стороне напишите номер задания и вариант ответа.

ответы на олимпиадные задания по информатике 9-11 класс

Просмотр содержимого документа
«Ответы. олимпиада. информатика. 9-11 класс.»

Муниципальный этап всероссийской олимпиады школьников по информатике

Задания и решения для 9–11 классов

Ограничение по времени работы программы во всех задачах: 1 секунда. Каждая задача оценивается в 100 баллов. Решение этих задач должно быть представлено в виде программы, которая считывает входные данные из текстового файла input.txt, а результат записывает в текстовый файл output.txt. Если решение проходит все тесты из условия, то оно принимается на проверку; если тест не пройден, решение не принимается на проверку и не будет оценено.

Задача 1. Лотерея в цветочном магазине

В цветочном магазине лотерея. Каждому покупателю выдается еще один цветок в подарок. На круглой вращающейся полке стоят N горшков с цветами. Каждый горшок имеет порядковый номер от 1 до N. Покупатель, участвующий в лотерее, называет номер чека M и продавец считает по кругу горшки, начиная с горшка с номером 1. Тот горшок, на котором достигается число M, выдается покупателю. Определите номер цветочного горшка, который достанется покупателю.

Программа получает на вход два целых положительных числа. Первое число N — количество горшков на полке. Второе число M — номер чека покупателя. Гарантировано, что M≥N (это условие проверять не нужно, в тестах к задаче оно учтено). Все числа не превосходят 2∙10 9 .

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

Пример входных и выходных данных

Читайте также:  Включить брандмауэр доктор веб

Решение задачи должно быть представлено в виде файла программы для среды программирования. Файл необходимо сохранить в папке с решениями и в названии указать номер задачи

Задача оценивается максимально в 100 баллов.

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

Ответом является остаток от деления числа M на число N, за единственным исключением – если остаток равен нулю, то есть M делится на N, то продавец остановит счет на последнем цветочном горшке с номером N и программа должна вывести значение N, а не 0. Это нужно рассмотреть при помощи одного условия if.

Пример решения задачи на языке Free Pascal:

if M mod N = 0 then writeln(output, N) else

writeln(output, M mod N);

Задача 2. Конвейер

На конвейере три лотка с деталями. В левом лотке лежат X деталей, в среднем лежат Y деталей, в правом лежат Z деталей. Робот берет одну деталь из левого лотка, затем одну деталь из среднего лотка, затем из правого, среднего, левого, среднего, правого, среднего и т. д. (слева направо, затем справа налево, опять слева направо и т.д.)

Если в каком-нибудь лотке детали кончились, робот останавливает конвейер и подает сигнал. Определите, сколько всего деталей возьмет робот до остановки конвейера.

Программа получает на вход три целых положительных числа X, Y, Z – количество деталей в левом, среднем, правом лотке. Сумма трёх данных чисел не превосходит 2∙10 9 .

Программа должна вывести число деталей, которые возьмет робот до остановки.

Пример входных и выходных данных

Решение задачи должно быть представлено в виде файла программы для среды программирования. Файл необходимо сохранить в папке с решениями и в названии указать номер задачи

Задача оценивается максимально в 100 баллов.

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

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

Для получения более быстрого решения заметим, что процесс взятия конфет содержит цикл «левый лоток, средний лоток, правый лоток, средний лоток», который затем повторяется.

За один проход такого цикла число X уменьшается на 1, число Y уменьшается на 2, число Z уменьшается на 1. Посчитаем, сколько раз будет выполнен цикл — это минимум из чисел X, [Y / 2] и Z (под записью [Y / 2] подразумевается целая часть от деления Y на 2, то есть операция целочисленного деления). Запишем количество проходов цикла в переменную k и уменьшим значение переменных X и Z на k, а значение переменной Y на 2k. За k исполнений цикла суммарно будет взято 4k деталей.

Читайте также:  Ноутбуки 17 дюймов какой лучше для дома

Следующий проход цикла не будет выполнен полностью. Посмотрим на значение переменных X, Y, Z в том порядке, в котором берутся детали из соответствующих лотков. Если X = 0, то нельзя на следующем шаге взять деталь из первого лотка, и ответом будет 4k. Если Y = 0, то будет взята деталь из первого лотка, но во втором лотке детали кончились, поэтому ответ будет 4k + 1. Если же Z = 0, то, аналогично, можно взять еще две детали из левого и среднего лотка, и ответ будет 4k + 2. Наконец, если все эти условия не выполнены, то ответ будет 4k + 3.

Пример решения задачи на языке Free Pascal:

if X=0 then writeln(output, 4*k) else

if Y=0 then writeln(output, 4*k+1) else

if Z=0 then writeln(output, 4*k+2) else

Задача 3. Счастливая неделя.

В году племени Доджиков N месяцев, ровно по 30 дней каждый, неделя состоит из 7 дней. Если в понедельник выпадает первое число месяца, у племени Доджиков наступает счастливая неделя праздников.

Этот год у племени начался в k-й по счету день недели (1-й день недели — понедельник, 2-й — вторник, 3-й — среда, … , 7-й — воскресенье). Определите, сколько в этом году у племени Доджиков будет счастливых недель.

Программа получает на вход в первой строке целое положительное число N — количество месяцев в календаре племени Доджиков, не превосходящее 10 9 . Во второй строке число k — номер дня недели, на который приходится первое число первого месяца нового года (1≤k≤7).

Программа должна вывести единственное целое число — количество счастливых недель в этом году.

Пример входных и выходных данных

Решение задачи должно быть представлено в виде файла программы для среды программирования. Файл необходимо сохранить в папке с решениями и в названии указать номер задачи

Задача оценивается максимально в 100 баллов.

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

Сначала посчитаем, на какой день недели приходится 1-е число первого месяца, затем будем считать, на какой день недели приходится 1-е число каждого следующего месяца. Если пронумеровать дни недели от 1 до 6, а воскресенье считать днём недели номер 0, то для получения дня недели 1-го числа следующего месяца нужно к текущему номеру дня недели прибавить 30 и взять остаток от деления на 7. Повторяем это в цикле N раз и при получении числа 1 увеличиваем ответ на 1.

Ссылка на основную публикацию
Что такое медиана числового ряда
Среднее арифметическое ряда чисел – это сумма данных чисел, поделенная на количество слагаемых. Среднее арифметическое называют средним значением числового ряда....
Что делать если игры не скачиваются
Play Market — официальный магазин приложений для Андроида и главный источник загрузки новых игр и программ на смартфоны и планшеты...
Что делать если заглючил планшет
Если завис планшет леново, самсунг, асус, престижио, дигма и так далее, да еще и в самое неподходящее время радости конечно...
Что такое номер ssid
Компьютеры и телефоны уже давно прочно вошли в нашу жизнь. Помимо смартфонов и ноутбуков, существуют еще десятки устройств, которые имеют...
Adblock detector