Программирование - это написание программ. Программа для компьютера представляет собой алгоритм (последовательность) выполнения каких-либо действий, написанный на том или ином языке программирования. На сегодняшний день многие программы большие и сложные, над такими работают целые штаты сотрудников, при этом код не всегда пишется, а собирается из отдельных блоков. Поэтому правильнее говорить о их разработке (создании) программ, а не их написании.
Будучи пользователями вычислительной техники, мы используем самые разнообразные приложения, созданные программистами. Однако программирование - это не только профессиональная деятельность, но и особый образ мышления, связанный с логикой и алгоритмикой, это часть культуры. Поэтому его азы изучаются в школьном курсе информатики.
Обучение обычно начинают с изучения структурного программирования . При этом в алгоритмах используются ветвления, циклы, подпрограммы. Особое внимание уделяется типам данных. По-сути изучаются две разные, но взаимосвязанные, области знаний - алгоритмика и особенности выбранного языка.
На более продвинутом уровне переходят к изучению динамических типов данных (что предполагает более глубокое знание информатики) или объектно-ориентированного программирования (большинство современных программ создаются с использованием этой парадигмы).
Профессиональная подготовка программиста обычно включает изучение конкретных языков, сред, инструментов, библиотек и др., применяющихся для написания программ в тех или иных областях деятельности (веб-разработка, написание системного программного обеспечение, создание пользовательских программ, разработка баз данных и др.).
О языке Pascal
Язык Pascal (Паскаль) почти не имеет практического значения, но часто используется для обучения программированию (для этого он и был разработан). В настоящее время существует ряд его диалектов и сред разработки, имеющих незначительные различия между собой.
Практическое значение имеет среда разработки Lazarus, в которой используется диалект Object Pascal. В ней можно создавать объектно-ориентированные программы с графическим интерфейсом пользователя.
О сайте
Это сайт для начинающих изучать программирование. В качестве языка используется Pascal (Паскаль). Нами используется FreePascal, однако, поскольку синтаксис Pascal везде почти одинаков, большинство программ должны компилироваться и в других средах.
Также предусмотрен вариант сортировки задач по уровням сложности.
Алгоритмизация и программирование являются одной из трудных для понимания учащимися тем в предмете информатика, а при наличии дефицита часов, выделяемых на изучение предмета, перед учителем встает довольно сложная задача «Как познакомить хотя бы с основами программирования всех учащихся, в том числе и непрофильных классов?». Между тем, как мы видим и в новых стандартах и в демо-версии ЕГЭ по информатике эта тема занимает существенное место. Предлагаемые ниже материалы помогают познакомить ребят с основными алгоритмическими конструкциями и реализацией их на языке программирования Паскаль и дать начальное представление о языке. Заинтересовавшиеся учащиеся могут в дальнейшем продолжить изучение языка программирования на спецкурсе.
Предлагаю задания к трем урокам: по линейному алгоритму, ветвлению и циклам. Типы переменных и структура программы на Паскале рассматриваются на предыдущих уроках.
Начальная подготовка учащихся.
- Знание основных алгоритмических конструкций: линейный алгоритм, ветвление, цикл.
- Знание основных типов переменных.
- Знание структуры программы на Паскале.
Ход урока.
Перед каждым уроком учитель раскладывает на столах «Папки ученика», в которых находятся листы с заданиями, таблица «Реализация элементов блок – схемы алгоритма на языке Паскаль», «Алгоритм создания программы по шаблону» и другой справочный материал. Если предполагается создание программы по шаблону, т.е. ученики редактируют уже имеющуюся программу, то соответствующий файл *.pas с текстом программы должен находится на жестком диске в соответствующем каталоге.
Для знакомства с реализацией алгоритмической конструкции средствами языка используется сайт (см. Приложение1)
Обсуждается задание, проговаривается сценарий, составляется блок-схема алгоритма.
В качестве заданий на ветвление и циклы взяты задачи по физике, так как программирование изучается на уроках интегрированного с физикой курса «Компьютерное моделирование физических процессов и явлений» в 9 классе.
Описание приложений.
- Адрес сайта «Паскаль для начинающих» - http://schools.keldysh.ru/gym1522/inform/pascal/ Немного сокращенный вариант находится в архиве (Приложение1.zip). Сайт выполнен с использованием флэш-технологии, позволяет в анимационной форме дать начальное представление о языке Паскаль 7.0 Для демонстрации надо разархивировать в каталог на жестком диске. Главная страница сайта – index.html
- Тексты программ для создания программ по шаблону – файлы Приложение2.pas и Приложение3.pas. Их надо переименовать в Shablon1.pas и Shablon2.pas и поместить в соответствующий каталог на диске.
Использованная литература дана в Приложении 1 на сайте в разделе «ссылки».
Реализация элементов блок – схемы алгоритма на языке Паскаль.
Элемент блок схемы |
В программе |
Действия |
Начало работы
программы |
||
Конец работы
программы |
||
На экране появляется надпись:
введите A, B
(оператор вывода данных) |
||
На экране появляется значение
переменной
C. (оператор вывода данных) |
||
WRITE (‘результат=’,S) |
На экране появляется текст
результат=
и значение переменной
S. (оператор вывода данных) |
|
Надо вводить два числа с
клавиатуры (оператор ввода данных) |
||
C:=4*T ; D:=A+B; I:=I+1; |
После выполнения операторов, переменным присваиваются следующие значения: C=4T, D=A+B, I=I+1 (операторы присваивания) | |
IF
A>B THEN
|
Если условие A>B верно, то выполняется группа операторов ОП.1 , в противном случае – группа операторов ОП.2 (условный оператор) | |
WHILE I<=N DO
|
Пока будет выполнено
I? N
, выполняется
группа операторов
ОП.1 (оператор цикла с предусловием, ОП.1 – тело цикла) |
|
REPEAT ОП.1 UNTIL I>N |
Выполняется группа опера-торов
ОП.1
до тех пор, пока не будет выполнено
условие
I>N. (оператор цикла с постусловием, ОП.1 – тело цикла) |
|
FOR
I:=1 TO
N DO
|
Для каждого
I
от
1
до
N
выполняется группа операторов
ОП.1
(оператор цикла с параметром, I – параметр цикла) |
Линейный алгоритм. Простейшая программа (ввод/вывод данных, вычисление суммы, разности, произведения и частного двух чисел).
Для выполнения задания можно использовать приведенный ниже текст программы или заранее подготовленный учителем файл Shablon1.pas (файл Приложение2.pas) с текстом программы, который находится в каталоге CLASS (там же находятся личные папки учащихся). Ученик проставляет вместо вопросительных знаков необходимые операторы и служебные слова. Комментарии в фигурных скобках поясняют, что необходимо сделать. Программа состоит из двух частей. В первой части программы демонстрируется использование операторов ввода и вывода, во второй, после комментария {ЗАДАНИЯ}, ученику надо самому записать необходимые операторы, используя приведенную выше блок-схему и комментарии в программе. Алгоритм создания программы по шаблону дан ниже.
Текст программы по линейному алгоритму
{Объявление переменной S для ввода имени, надо указать тип переменной - строковый}
{Объявление переменных A и B для ввода чисел, надо указать тип переменных - целые числа со знаком}
{Объявление переменной C для вывода результата, надо указать тип переменной - все действительные числа}
{Начало раздела инструкций}
{Оператор вывода на экран сообщения (просьба ввести имя)}
WRITE ("Введите свое имя");
{Оператор ввода данных (значение переменной S = имя пользователя)}
{Вывод на экран сообщения (приглашения к работе) – слово "Привет" и значение переменной S (введенное пользователем имя)}
WRITELN ("Привет, ", S);
{ЗАДАНИЯ:}
{1)Запишите оператор вывода на экран приглашения к вводу 2 чисел (переменные A и В)}
{2) Запишите оператор ввода для переменных A и В}
{3) Запишите оператор присваивания для вычисления значения переменной С (сумма, разность, произведение, частное двух чисел)}
{4) Запишите оператор вывода на экран результата вычислений (сумма (разность, произведение, частное) = <значение переменной>}
Ветвление. Моделирование равномерного прямолинейного движения двух тел.
Построить компьютерную модель движения двух тел. I. Найти скорость сближения (удаления) 2-х тел. Рассмотреть случаи: 1. Тела двигаются в одном направлении. 2. Тела двигаются в противоположных направлениях.
|
|||
Введите скорость 1
тела 10 Введите скорость 2 тела 5 Введите направление 1 тела L Введите направление 2 тела R Скорость равна 15 |
|||
II.
Добавить ввод начальных
координат тел и определить сближаются или
отдаляются тела. III. Определить расстояние между телами через время t (ввести с клавиатуры). IV. Выводить на экран текущие координаты тел. V. Выводить на экран картину движения тел. |
|||
Примечания:
|
Текст программы на ветвление
{Объявление переменных V1, V2 и V для значений скоростей, тип переменных - целые числа со знаком }
VAR V1, V2, V: ??? ;
{Объявление переменных A1 и A2 для значений направлений, значения переменных - символы}
VAR A1, A2: ??? ;
{Начало раздела инструкций}
{Оператор вывода на экран сообщения (просьба ввести скорость первого тела)}
WRITE ("Введите скорость 1 тела");
{Оператор ввода данных (значение переменной V1)}
{Тоже для второго тела}
{Аналогично осуществить ввод направлений движения}
WRITE ("Введите направление 1 тела");
{Условный оператор: проверка условия равенства значений переменных A1 и A2}
IF A1 = A2 THEN V:= V1 - V2 ELSE V:= V1 + V2;
{Определение модуля вектора ABS – функция вычисление абсолютной величины}
{Оператор вывода на экран результата вычислений }
{Конец программы, конец раздела инструкций}
Текст программы находится в файле Приложение3.pas ( в кодировке MS DOS). Его надо переименовать в Shablon2.pas и можно использовать при создании программы по шаблону (см. алгоритм ниже).
Алгоритм создания программы по шаблону.
1. Войти в систему программирования Turbo Pascal 7.0.
2. Открыть файл ShablonK.pas (K - номер шаблона):
2.1. File -> Open
2.2. Перейти в каталог CLASS (в списке Files выбрать ..\)
2.3. Выбрать файл ShablonK.pas (K - номер шаблона)
2.4. Подтвердить выбор (Open )
3. Выполнить задание, заменяя ???? .
4.1. (File -> Save as)
4.2. Убедится, что находитесь в своем каталоге (нижняя строчка)
4.3. Ввести имя файла
4.4. Подтвердить сохранение (Ok )
5. Запустить программу (Run -> Run или Ctrl+F9 )
6. При наличии ошибок, внести изменения в программу и повторить пункт 5.
7. Просмотреть результат выполнения программы (Debug User Screen или Alt+F5 )
9. Выйти из системы программирования (File -> Exit или Alt+X )
Для циклического алгоритма уже текст программы не дается. Учащиеся должны сами составить программу по блок – схеме.
Циклы. Моделирование равноускоренного движения.
Построить модель равноускоренного движения тела (X=X 0 +V 0 t+At 2 /2). I.. Тело двигается по прямой. Выводить на экран координату тела через каждые 10 секунд движения. Исходные данные (задаются с клавиатуры): 1. Начальная скорость тела (V0, м/с ). 2. Ускорение тела со знаком (A, м/с 2 ). 3. Начальное положение тела (X0 , м ). 4. Время движения (TK, с ). Расчетные данные (выводятся на экран):
Примерный вид экрана при работе |
|||||||
Введите
скорость тела 10 Введите ускорение тела 2 Введите нач. положение тела 0 Введите время движения тела 200 T = 0 X = 0Writeln (‘T = ‘,T,’ X = ‘,X) ; T:=T+10; end; |
X:=X0;
X:=X0+V0*T+A*T*T/2; Writeln (‘T = ‘,T,’ X = ‘,X) ; Until T>=TK; |
X:=X0; T:=0; N:=Trunc(TK/10);
For i:=0 to N do X:=X0+V0*T+A*T*T/2; Writeln (‘T = ‘,T,’ X = ‘,X) ; Министерство образования и науки Российской Федерации Государственное образовательное учреждение высшего профессионального образования «Омский государственный технический университет» Ю. П. Чернов, О. П. Шафеева Программирование в системе Pascal abcУчебное пособие Издательство ОмГТУ УДК 004.4 (075) ББК 32.973-018я73 Рецензенты : В. И. Стариков, канд. техн. наук, доцент ОГИС; С. С. Ефимов, канд. техн. наук, доцент ОмГУ им. Ф.М. Достоевского Чернов, Ю. П. Ч 49 Программирование в системе Pascal ABC : учеб. пособие / Ю. П. Чернов, О. П. Шафеева. – Омск: Изд-во ОмГТУ, 2010. – 100 с. ISBN 978-5-8149-0897-1 Пособие включает теоретический материал с описанием элементов языка и системы программирования Pascal ABC, а также примеры разработки алгоритмов и программ на языке Паскаль для задач разного уровня сложности. Рассмотренные схемы проектируемых алгоритмов позволяют облегчить усвоение материала студентами. Учебное пособие предназначено для изучения языка программирования высокого уровня Паскаль в дисциплинах «Информатика», «Основы алгоритмизации и программирования», «Алгоритмические языки и программирование», «Программирование на языке высокого уровня». Печатается по решению редакционно-издательского совета Омского государственного технического университета УДК 004.4 (075) ББК 32.973-018я73 ISBN 978-5-8149-0897-1 © ГОУ ВПО «Омский государственный технический университет», 2010 ВведениеНаиболее распространенным в настоящее время языком программирования для компьютеров серии IBM PC является Паскаль. Это язык высокого уровня, отличающийся простотой синтаксиса, структурированный и удобный для начального обучения программированию. Учебная система программирования Pascal ABC (автор С.С. Михалкович ) представляет собой диалект стандартного языка Паскаль. Система Pascal ABCпредназначена для обучения программированию на языке Паскаль и ориентирована на студентов младших курсов. По мнению разработчиков этой системы, первоначальное обучение программированию должно проходить в достаточно простых и дружественных средах, в то же время эти среды должны быть близки к стандартным и иметь богатые и современные библиотеки подпрограмм. К достоинствам системы Pascal ABC следует отнести то, что она позволяет: программировать на языке Паскаль, подобном Delphi Pascal, включая объектно-ориентированные расширения; работать с графикой; создавать событийные приложения. Система Pascal ABCоснована на языке Delphi Pascal и призвана осуществить постепенный переход от простейших программ к модульному, объектно-ориентированному, событийному и компонентному программированию. Некоторые языковые конструкции допускают, наряду с основным, упрощенное использование, что позволяет использовать их на ранних этапах обучения. К важнейшим достоинствам пакета Pascal ABC относится соответствие стандартному Паскалю, быстрая компиляция программ, объединение компилятора с текстовым редактором, предупреждение об ошибках на уровне исходной программы, обширная библиотека подпрограмм и полезные расширения, упрощающие программирование. Начинающему программисту целесообразно начинать изучение языка и среды именно с этого пакета. Компилятор Pascal ABCявляется компилятором переднего плана (front- end). Это означает, что он не генерирует исполняемый код в виде.exe -файла, а создает в результате компиляции дерево программы в памяти, которое затем выполняется с помощью встроенного интерпретатора. В итоге скорость работы программы оказывается медленнее скорости работы этой же программы, откомпилированной в среде Borland Pascal или в среде Borland Delphi. Однако на современных компьютерах это практически не ощущается. Название "Pascal ABC" относится к интерактивной системе программирования, состоящей из компилятора языка и объединенного с ним экранного редактора. Интерактивность системы проявляется в основном в удобстве редактирования и обработки ошибок, обнаруженных в исходных текстах программ. Запуск программ в этой системе происходит на уровне исходных текстов. Высокая скорость компиляции приводит к тому, что переход от исходного текста к исполняемой программе происходит очень быстро. Это значительно сокращает цикл трансформации программ от редактирования к компиляции и исполнению программ. Система Pascal ABC включает в себя как язык программирования, так и инструментальную среду, предназначенную для написания, отладки и исполнения программ. Язык характеризуется расширенными возможностями по сравнению со стандартом языка Паскаль и хорошо развитой библиотекой модулей, позволяющих использовать возможности операционной системы, формировать графическое изображение и т.д. Инструментальная среда программирования позволяет создавать тексты программ, компилировать их, находить ошибки и оперативно их исправлять, тестировать и выполнять отлаженную программу. Среда включает также большой объем справочной информации. В настоящем учебном пособии описаны синтаксические правила и основные возможности языка, работа в интегрированной среде. Практические приемы программирования продемонстрированы на примерах решения конкретных задач. Пособие подготовлено с учетом опыта чтения лекций и проведения авторами лабораторных занятий в компьютерном учебном центре ОмГТУ. В первую очередь пособие предназначено для студентов университета и представляет теоретическое руководство по программированию как в среде Pascal ABC, так и в средах Free Pascal и Turbo Pascal. Профессиональная среда разработки для создания программ и приложений любого уровня сложности. Сочетает в себе классическую простоту Паскаля и все возможности современной среды разработки.NET, которую используют профессиональные разработчики по всему миру. Кроме того, язык программирования Паскаль изучают на школьном курсе информатики, давая учащимся базовые знания об операторах и переменных. Таким образом, обучение Паскаль абс даётся новичкам лучше, чем освоение других языков программирования. Курс из семи практических видеоуроков идеально подходит для тех, кто хочет узнать, как сделать программу в Pascal ABC, вне зависимости от уровня подготовки. Каждый урок имеет свою тему, поэтому их можно смотреть как по порядку, так и выборочно, чтобы углубить и расширить свои познания в конкретной области. Уроки Pascal ABCПредставленные в видеокурсе уроки Паскаль АБС основаны на разработке прикладных программ и дают практические знания. Все программы, которые вы напишите в процессе прохождения видеокурса, полностью рабочие и их можно использовать в повседневной жизни – «воды» и пустой теории в курсе нет.Осваиваем интерфейс редактора и пишем свои первые строчки кода. Изучаем логику работы с числами и конструируем таймер. Изучаем, как язык программирования компилирует исходный код. Используем Паскаль для нахождения решения задачи про школьницу Анну. Программируем настоящий виртуальный музыкальный синтезатор. Осваиваем сложные математические функции и создаём полноценный инженерный калькулятор. Создаём «правильную» телефонную книгу на основе базы данных. Урок 1 - Первая программа Профессиональная среда разработки для создания программ и приложений любого уровня сложности. Сочетает в себе классическую простоту Паскаля и все возможности современной среды разработки.NET, которую используют профессиональные разработчики по всему миру. Кроме того, язык программирования Паскаль изучают на школьном курсе информатики, давая учащимся базовые знания об операторах и переменных. Таким образом, обучение Паскаль абс даётся новичкам лучше, чем освоение других языков программирования. Курс из семи практических видеоуроков идеально подходит для тех, кто хочет узнать, как сделать программу в Pascal ABC, вне зависимости от уровня подготовки. Каждый урок имеет свою тему, поэтому их можно смотреть как по порядку, так и выборочно, чтобы углубить и расширить свои познания в конкретной области. Уроки Pascal ABCПредставленные в видеокурсе уроки Паскаль АБС основаны на разработке прикладных программ и дают практические знания. Все программы, которые вы напишите в процессе прохождения видеокурса, полностью рабочие и их можно использовать в повседневной жизни – «воды» и пустой теории в курсе нет.Осваиваем интерфейс редактора и пишем свои первые строчки кода. Изучаем логику работы с числами и конструируем таймер. Изучаем, как язык программирования компилирует исходный код. Используем Паскаль для нахождения решения задачи про школьницу Анну. Программируем настоящий виртуальный музыкальный синтезатор. Осваиваем сложные математические функции и создаём полноценный инженерный калькулятор. Создаём «правильную» телефонную книгу на основе базы данных. Урок 1 - Первая программа |