МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
имени
ФАКУЛЬТЕТ ПЕДАГОГИЧЕСКОГО ОБРАЗОВАНИЯ
ПРОГРАММА КУРСА
«Введение в программирование»
в рамках УМК «Информатика» дистанционного обучения школьников
Программа составлена аспирантом факультета Педагогического Образования, м. н. с. кафедры математики и ассистент кафедры информатики факультета СУНЦ МГУ Скоробогатовым Ярославом Олеговичем
Москва, 2017
Программа разработана в соответствии с Федеральным законом Об образовании в Российской Федерации и ФГОС.
Информационно-коммуникационные компетенции входят в систему обязательной подготовки как база при алгоритмическом и логическом подходе при изучении ряда предметов в рамках среднего образования, а так же для дальнейшего обучения, профессиональной деятельности и социализации выпускников образовательных учреждений.
1. ОБЩАЯ ХАРАКТЕРИСТИКА КУРСА
1.1. Цель реализации курса – сформировать у обучающихся представления о компьютерно-математических моделях и необходимости анализа соответствия модели и моделируемого объекта, о способах хранения и простейшей обработке данных, выработать навыки алгоритмического мышления и понимание необходимости формального описания алгоритмов.
1.2. Основные задачи курса:
1.2.1. сформировать у обучающихся представление о связи математической и компьютерной модели объекта;
1.2.2. обучить слушателей построению базовых моделей;
1.2.3. выработать умения построения алгоритмов по базовым моделям;
1.2.4. познакомить с основными способами формальной записи алгоритмов средствами языка программирования;
1.2.5. сформировать навыки работы с основными конструкциями программирования при решении базовых учебных задач;
1.2.6. выработать умения использования комбинаций базовых конструкций при решении задач повышенного уровня сложности;
1.2.7. обучить владению стандартными приемами чтения компьютерных программ, их написания и отладки;
1.2.8. формировать основы саморазвития, самообразования, самоконтроля и планирования деятельности.
1.3. Начальные требования к обучающимся:
1.3.1. обучающиеся должны обладать начальными навыками работы с компьютером;
1.3.2. должны быть сформированы базовые умения и навыки по соблюдению гигиены и техники безопасности при работе с ПК;
1.3.3. школьники должны быть ознакомлены с правовыми и социально-этическими нормами при использовании средств среды Интернет.
1.4. Место дисциплины в структуре ООП.
В соответствии с федеральными стандартами данный курс является частью изучения предметной области «Информатика» (базовый уровень).
1.5. Объем дисциплины.
Курс рассчитан на 120 академических часов, в том числе 28 часов на изучение теоретического материала, 85 часов практических занятий, 7 часов консультаций. Трудоемкость данного курса обусловлена особенностями дистанционного обучения и может варьироваться в зависимости от возраста и начального уровня подготовки обучающихся.
2. Нормативные документы
Курс составлен в соответствии с требованиями следующих документов:
1) Федеральным законом от 29 декабря 2012 г. «Об образовании в Российской Федерации»;
2) Приказ Минобрнауки России от 01.01.2001 г. № 000 "Об утверждении ФГОС среднего (полного) общего образования;
3) Уставом МГУ имени (в действующей редакции);
4) Локальными нормативными актами МГУ имени ;
5) Приказом Минобрнауки России от 9 января 2014 г. № 2 «Об утверждении Порядка применения организациями, осуществляющими образовательную деятельность, электронного обучения, дистанционных образовательных технологий при реализации образовательных программ».
3. Планируемые результаты обучения
Результатами освоения данного курса являются:
1) сформированность представлений о способах хранения информации, моделировании и связи математических и компьютерных моделей;
2) навыки алгоритмического мышления, формального описания алгоритма;
3) умение реализации алгоритмического представления задачи с помощью языка программирования;
4) владение приёмами написания программы на языке Python для решения стандартных задач, комбинированных задач, задач повышенного уровня сложности и отладки таких программ;
5) навыки использования операторов присваивания, операторов цикла, условных операторов, строк и списков;
6) владение способами передачи информации при помощи сети Интернет.
4. СОДЕРЖАНИЕ КУРСА
4.1. Учебно-тематический план курса
Образовательные модули | Всего часов | Изучение теоретического материала | Практические занятия | Консультации с педагогом |
Основы компьютерного моделирования Введение. Модель, связь математического и компьютерного моделирования, свойства и виды моделей. Алгоритмы, способы записи. Язык программирования Python | 10 | 4 | 5 | 1 |
Оператор присваивания, целочисленная арифметика Способы хранения и обработки информации. Язык программирования Python, синтаксис и семантика, оператор присваивания, типы переменных, порядок арифметических операций. | 10 | 4 | 5 | 1 |
Условная инструкция, логические выражения Логический тип данных, логические операции, оператор ветвления, вложенные условные операторы. | 20 | 4 | 15 | 1 |
Оператор цикла for Алгоритмы перебора, оператор for, использование логических выражений в цикле for, вложенные циклы for. | 20 | 4 | 15 | 1 |
Строки Понятие строки, операции над строками, длина строки, сравнение строк, понятие среза строки, работа со строками в цикле for. | 20 | 4 | 15 | 1 |
Цикл while Оператор цикла while, счётчики, зацикливание, работа со строками в цикле while. | 20 | 4 | 15 | 1 |
Списки Создание списков, длина списка, преобразование списка, вложенные списки, работа со списками в циклах for и while. | 20 | 4 | 15 | 1 |
Всего за семестр | 120 | 28 | 85 | 7 |
4.2. Содержание курса
Данный курс содержит понятия: модель, моделирование, свойства и виды моделей. Учит создавать математические модели, переводить их в компьютерные модели. Знакомит с алгоритмом как способом компьютерного моделирования. Позволяет изучить основные виды алгоритмов, сформировать умения формального описания алгоритма.
Знакомит со способами хранения и обработки информации, с основами синтаксиса и семантики языка программирования Python, с понятиями переменных и их типов, оператора присваивания, порядка операций.
В рамках курса изучаются логический тип данных, логические операторы and, or, not, вложенные условные операторы. Изучаются арифметические операции над числами. Осуществляется знакомство с циклами: на примере цикла for – цикл for, вложенные циклы for и использование логических выражений в цикле for; на примере цикла while – цикл while, счётчики, зацикливание, работа со строками в цикле while. Курс знакомит с понятием типа данных «строка», с операциями над строками конкатенация и умножение, длиной строки, сравнением строк, сравнение срезов, работой со строками в цикле for и while. Вводится понятие списка как упорядоченного множества значений, определяемых индексом, длины списка, преобразования списка, вложенных списков и работы со списками в циклах for и while, срезы списков.
5. КРИТЕРИИ И ПРОЦЕДУРЫ ОЦЕНИВАНИЯ РЕЗУЛЬТАТОВ ОБУЧЕНИЯ
Аттестация производится по каждому модулю, начиная со второго, в процессе обучения.
После изучения теоретического материала модулей со второго по седьмой слушателям предлагается выполнить типовые учебные и контрольные задания и отправить их на проверку преподавателю.
Критерии оценивания:
· каждое задание должно пройти автоматическую проверку;к
· при успешном прохождение автоматической проверки происходит проверка преподавателем;
· за каждое выполненное задание обучающийся получает от 0 до 10 баллов;
· время выполнения каждого модуля ограничено определённой датой.
· по итогам курса баллы суммируются.
Примеры типовых контрольных заданий приведены в приложении 1.
6. УСЛОВИЯ РЕАЛИЗАЦИИ КУРСА
6.1. Длительность курса
Курс рассчитан на дистанционное обучение школьников в течение 6 месяцев и состоит из семи последовательных модулей, продолжительность изучения первых двух – по половине календарного месяца, оставшихся – по одному календарному месяцу.
6.2. Материально-технические условия реализации курса
Для реализации курса каждому обучающемуся необходим доступ к персональному компьютеру с возможностью установки «Wing IDE 101», интерпритатора Python и использованием сети Интернет.
6.3. Учебно-методическое обеспечение курса
Теоретические модули находятся на сайте СУНЦ МГУ [1] и практические задания находятся на учебном портале informatics [2]. Консультации с преподавателем проводятся по электронной почте.
Литература, рекомендуемая для дополнительного самостоятельного изучения:
· «Учимся программировать вместе с Питоном». Rev. 226.
· Swaroop C. H. «A Byte of Python» (Перевод: Владимир Смоляр). 2013.
Ссылки
1. http://internat. msu. ru/distantsionnoe-obuchenie/distance-courses/informatika-8-9-klass-1-j-god-obucheniya/
2. http://informatics. mccme. ru/
Приложение 1
Типовые задачи из 1-ого модуля:
Задача «Следующее и предыдущее»
Напишите программу, которая считывает целое число и выводит текст, аналогичный приведенному в примере (пробелы важны!):
Входные данные
Вводится целое число (гарантируется, что число находится в диапазоне от -1000 до +1000).
Выходные данные
Выведите две строки, согласно образцу.
Примеры
Входные данные
179
Выходные данные
The next number for the number 179 is 180.
The previous number for the number 179 is 178.
Задача «Дележ яблок – 1»
n школьников делят k яблок поровну, неделяющийся остаток остается в корзинке. Сколько яблок достанется каждому школьнику?
Входные данные
Программа получает на вход числа n и k - целые, положительные, не превышают 10000.
Выходные данные
Выведите ответ на задачу.
Примеры
Входные данные
3
14
Выходные данные
4
Задача «МКАД»
Длина Московской кольцевой автомобильной дороги —109 километров. Байкер Вася стартует с нулевого километра МКАД и едет со скоростью v километров в час. На какой отметке он остановится через t часов?
Входные данные
Программа получает на вход значение v и t. Если v
0, то Вася движется в положительном направлении по МКАД, если же значение v
0, то в отрицательном. (Гарантируется, что исходные числа - целые и находятся в промежутке от -1000 до +1000).
Выходные данные
Программа должна вывести целое число от 0 до 108 — номер отметки, на которой остановится Вася.
Примеры
Входные данные
60
2
Выходные данные
11
Входные данные
-1
1
Выходные данные
108
Задача «Следующее четное»
Дано целое число n. Выведите следующее за ним четное число.
Входные данные
Вводится целое положительное число, не превышающее 1000.
Выходные данные
Выведите ответ на задачу.
Примеры
Входные данные
7
Выходные данные
8
Задача «Электронные часы – 1»
Дано число n. С начала суток прошло n минут. Определите, сколько часов и минут будут показывать электронные часы в этот момент.
Входные данные
Вводится число n - целое, положительное, не превышает 107.
Выходные данные
Программа должна вывести два числа: количество часов (от 0 до 23) и количество минут (от 0 до 59).
Учтите, что число n может быть больше, чем количество минут в сутках.
Примеры
Входные данные
150
Выходные данные
2 30
Входные данные
1441
Выходные данные
0 1
Задача «Стоимость покупки»
Пирожок в столовой стоит a рублей и b копеек. Определите, сколько рублей и копеек нужно заплатить за n пирожков.
Входные данные
Программа получает на вход три числа: a, b, n - целые, положительные, не превышают 10000.
Выходные данные
Программа должна вывести два числа: стоимость покупки в рублях и копейках.
Примеры
Входные данные
10
15
2
Выходные данные
20 30
Входные данные
2
50
4
Выходные данные
10 0
Задача «Разность времен»
Даны значения двух моментов времени, принадлежащих одним и тем же суткам: часы, минуты и секунды для каждого из моментов времени. Известно, что второй момент времени наступил не раньше первого. Определите, сколько секунд прошло между двумя моментами времени.
Входные данные
Программа на вход получает три целых числа: часы, минуты, секунды, задающие первый момент времени и три целых числа, задающих второй момент времени.
Выходные данные
Выведите число секунд между этими моментами времени.
Примеры
Входные данные
1
1
1
2
2
2
Выходные данные
3661
Входные данные
1
2
30
1
3
20
Выходные данные
50
Задача «Обмен значений – 1»
Напишите программу, которая считывает значения двух переменных a и b, затем меняет их значения местами (то есть в переменной a должно быть записано то, что раньше хранилось в b, а в переменной b записано то, что раньше хранилось в a). Затем выведите значения переменных.
Входные данные
Вводятся два целых числа (гарантируется, что числа находятся в промежутке от -1000 до +1000).
Выходные данные
Выведите ответ на задачу.
Примечание
Решением задачи не является такой код:
ввод (a)
ввод (b)
вывод (b, a)
Примеры
Входные данные
8
5
Выходные данные
5 8
Задача «Автопробег»
За день машина проезжает n километров. Сколько дней нужно, чтобы проехать маршрут длиной m километров?
Входные данные
Программа получает на вход числа n и m (целые, положительные).
Выходные данные
Выведите ответ на задачу.
Примеры
Входные данные
700
750
Выходные данные
2
Входные данные
700
2100
Выходные данные
3
Задача «Улитка»
Улитка ползет по вертикальному шесту высотой h метров, поднимаясь за день на a метров, а за ночь спускаясь на b метров. На какой день улитка доползет до вершины шеста?
Входные данные
Программа получает на вход натуральные числа h, a, b.
Выходные данные
Программа должна вывести одно натуральное число. Гарантируется, что a
b.
Примеры
Входные данные
10
3
2
Выходные данные
8


