- •Содержание
- •Пояснительная записка
- •Раздел 1. Основы программирования
- •Тема 1.1 Понятие алгоритма
- •Понятие алгоритма. Свойства алгоритма
- •Алгоритмический язык
- •Понятие алгоритма. Свойства алгоритма
- •Хорезми
- •2. Алгоритмический язык
- •Тема 1.2 Методы описания алгоритма
- •Виды описания алгоритма
- •Тема 1.3 Типы алгоритмов
- •1.Типы алгоритмов
- •Алгоритм линейной структуры
- •3. Разветвляющийся алгоритм
- •4. Циклический алгоритм
- •5.Виды циклов
- •Цикл с предусловием (цикл пока)
- •2. Цикл с постусловием (цикл до)
- •3. Арифметический цикл (цикл для) – цикл с параметром.
- •Тема 1.4. Алгоритмический ряд.
- •Операторы цикла с условием
- •Операторы ограничения и прерывания цикла
- •Раздел 2. Решение задач на пэвм.
- •Тема 2.1. Основные этапы подготовки задачи к решению на пэвм.
- •Этапы решения задач
- •Тема 2.2 Программа на языке высокого уровня.
- •Тема 2.3. Методика Джексона
- •1. Методика Джексона
- •Шаг объект-действие
- •Раздел 3.Разработка программы на языке Турбо Паскаль
- •Тема 3.1 Основные элементы
- •История и классификация языков программирования
- •Элементы языка Турбо Паскаль
- •Тема 3.2. Типы данных
- •1. Типы данных Типы данных
- •Тема3.3 Программа на языке Турбо Паскаль
- •Структура программы на языке Паскаль
- •4. Вывод данных в тр
- •5. Ввод данных в тр
- •Тема 3.4 Массивы и их обработка
- •Строковый тип данных
- •Процедуры и функции для работы со строками
- •1. Определение массива
- •2 Описание массивов
- •3 Действия над массивами
- •4.Двумерный массив
- •6.Строковый тип данных
- •'Текстовая строка'
- •7. Процедуры и функции для работы со строками
- •Тема 3.5 Встроенные процедуры и функции
- •1. Арифметические процедуры и функции:
- •2. Функции преобразования типов:
- •3. Процедуры и функции для работы со строками:
- •Тема 3.6. Процедуры и функции пользователя
- •Отличия функции от процедур
- •3. Описание процедуры
- •4. Описание функций
- •5. Локальные и глобальные переменные.
- •6. Параметры в процедурах.
- •Тема 3.7. Записи
- •1. Структура записи в тр
- •2. Отличия записи от массива.
- •Тема 3.8 Файлы и их обработка
- •1. Понятие файла
- •2. Чтение и запись информации из файл или в файл
- •3.Доступ к файлам
- •4.Имена файлов
- •5. Связь файла с файловой переменной.
- •6. Открытие и переименование файла.
- •7. Типизированные фалы.
- •8. Нетипизированные файлы.
- •9.Текстовые файлы
- •Раздел 4. Объектно – ориентированная модель программирования
- •Тема 4.1. Основные характеристики ооп. Преимущества.
- •1. Основные характеристики ооп. Преимущества
- •Тема 4.2. Инкапсуляция.
- •Тема 4.3. Наследование.
- •Тема 4.4.Виртуальные методы и полиморфизм.
- •Перечень источников литературы для самостоятельного изучения учебной дисциплины «Основы алгоритмизации и программирования»
Операторы ограничения и прерывания цикла
Данные операторы применяются внутри операторов цикла с параметром или условием. Операторы имеют вид:
Continue; - ограничение цикла,
Break; - прерывание цикла.
Операторы Continue и Break позволяют производить действия не для всех операторов внутри цикла. Действие оператора Continue заключается в передаче управления на начало цикла, при этом контролируется условие выхода из цикла. Действие оператора Break заключается в передаче управления оператору, следующему за последним оператором цикла, при этом не контролируется условие выхода из цикла. Во вложенных циклах операторы Continue и Break действуют только на цикл в котором они записаны. Приведем пример использования операторов для блокировки несанкционированного доступа в программу.
For i := 1 to 3 do
begin
Write( 'Введите ПАРОЛЬ:' ); Readln(S); {S и Parol - переменные одного типа}
If S = Parol Then Break { прерывание цикла }
else If i <> 3 Then Continue; { ограничение цикла }
Writeln( 'Доступ к программе ЗАПРЕЩЕН' );
Writeln( 'Нажмите Enter' );
Readln;
Halt { прерывание программы }
end; { продолжение программы }
Перечень источников:
Кинг Д. Создание эффективного программного обеспечения. –М.: мир, 1991 – 284с.
Немнюгин С.А. Turbo Pascal: учебник – СПб «Питер», 2007.- 455с.
Раздел 2. Решение задач на пэвм.
Тема 2.1. Основные этапы подготовки задачи к решению на пэвм.
Тип лекции: текущая
План:
Этапы решения задач
Данные и величины
Этапы решения задач
Работа при решении любой задачи с использованием компьютера делится на следующие этапы:
Постановка задачи
Формализация задачи
Построение алгоритма
Составление программы на языке программирования
Отладка и тестирование программы
Проведение расчетов и анализ полученных результатов.
Часто эту последовательность называют технологической цепочкой решения задач на ЭВМ. Непосредственно к программированию в этом списке относятся пункты 3, 4, 5.
На этапе постановки задачи должно быть четко сформулировано, что дано и что требуется найти. Здесь очень важно определить полный набор исходных данных, необходимых для получения решения. Неудачи в решении задач могут возникнуть из-за неправильно выделенных исходных или требуемых данных, когда полученные результаты не могут нас удовлетворить. Поэтому при постановке задачи, прежде всего, необходимо определить и перечислить все исходные и требуемые данные и затем ответить на вопрос, при каких условиях возможно получение требуемых результатов, а при каких нет. И, наконец, важно определить, какие результаты будут считаться правильными. Таким образом, четко сформулировать задачу – означает извлечь из информации об изучаемом явлении или объекте исходные данные, определить, что будет результатом. Точность и четкость постановки задачи – половина успеха ее решения.
Второй этап – формализация задачи. Здесь чаще всего задача переводиться на язык математических формул, уравнений, отношений. Если решение требует математического описания какого-то реального объекта, явления или процесса, то формализация равносильна соответствующей математической модели.
Третий этап – построение алгоритма. Опытные программисты часто сразу пишут программы на языках, не прибегая к каким-либо специальным способам описания алгоритмов (блок-схемам, псевдокодам). Однако в учебных целях полезно использовать эти средства, а затем переводить полученный алгоритм на язык программирования. Процесс конструирования алгоритма состоит в подборе и упорядочении действий для осуществления ввода–вывода информации и организации вычислений в строгом соответствии с выбранными методами решения задач. Разрабатывается алгоритм методом пошаговой детализации, обязательно необходимо следить за тем, чтобы алгоритм удовлетворял всем свойствам, был рациональным.
4-й этап – перевод алгоритма в программу. Собственно программирование, написание программ, при наличии алгоритмов решения задач – это просто кодирование алгоритмов на выбранном языке программирования
5-й этап решения задачи состоит в проведении компьютерного эксперимента. Меняя начальные данные, можно определять координаты тела для различных начальных условий. Если мы исследуем информационную модель в виде программы в какой-либо среде программирования, то к 5-му этапу относятся:
запуск выбранной среды программирования;
набор текста программы;
сохранение этого текста на диске;
запуск программы на выполнение.
Причем необходимо многократно запускать программу на выполнение при различных значениях начальных условий
6-й этап состоит в анализе получаемых результатов и корректировке исследуемой модели.
Первые три этапа предусматривают работу без компьютера. Дальше следует собственно программирование на определенном языке, в определенной системе программирования. Последний (шестой) этап – это использование уже разработанной программы в практических целях.
Таким образом, программист должен обладать следующими знаниями и навыками:
Уметь строить алгоритмы;
Знать языки программирования;
Уметь работать в соответствующей системе программирования.
Задача. Тело брошено вертикально вверх с начальной скоростью . Определить, через какое время тело достигает наивысшей точки и на каком расстоянии от земли.
Дано: , g=9,8 м/с2
Найти: S, t
2. ,
3. 1. Ввести , g=9,8
2. Если 0 то вывод «Недопустимое значение скорости» и перейти к п.1
3. Вычислить t по формуле
4. Вычислить S по формуле
5. Вывести S, t
4, 5, 6 этапы выполняются на ПК.
Задания на закрепление изученного материала
Выделить три этапа при решении задач.
Дан прямоугольный треугольник с катетами а и в, найти гипотенузу с?
Найти сумму членов бесконечной геометрической прогрессии, если , .
В треугольники ABC известны стороны a, b, c. Вычислить площадь треугольника по формуле Герона.
Боковая сторона трапеции, равна а=40 см, образует с большим основанием угол . Вычислить площадь трапеции, если основания ее равны 24см и 60 см.
Найти сумму 26-ти первых членов арифметической прогрессии -12, -9,5, … используя две формулы.
Основой программистской грамотности является развитое алгоритмическое мышление. Одним из фундаментальным понятием в информатике является понятие алгоритма, с которым мы познакомились на прошлом занятии. Алгоритм – это последовательность команд управления каким-либо исполнителем. В школьном курсе информатики с понятием алгоритма знакомятся на примерах таких исполнителей как Робота, Черепахи, Чертежника и т.п. Эти исполнители нечего не вычисляет. Они создают рисунки на экране, перемещаются в лабиринтах, перетаскивают предметы с места на место. Таких исполнителей принято называть исполнителями, работающими в обстановке.
В разделе информатики под названием «Программирование» изучаются методы программного управления работой ЭВМ. Следовательно, в качестве исполнителя выступает компьютер. компьютер работает с величинами – различными информационными объектами: числами, символами, кодами и т.п. Поэтому алгоритмы, предназначенные для управлением компьютером, принято называть алгоритмами работы с величинами.
Данные и величины
Совокупность величин, с которыми работает компьютер, принято называть данными. По отношению к программе данные делятся на исходные результаты (окончательные данные) и промежуточные, которые получаются в процессе вычислений.
Например, при решении квадратного уравнения ax2+bx+c=0
исходными данными являются коэффициенты a, b, c;
результатами – корни уравнения x1, x2;
промежуточным данным — дискриминант уравнения D = b2 — 4ас.
Для успешного освоения программирования необходимо усвоить следующее правило: всякая величина занимает свое определенное место в памяти ЭВМ (иногда говорят — ячейку памяти). Хотя термин «ячейка» с точки зрения архитектуры современных ЭВМ несколько устарел, однако в учебных целях его удобно использовать.
У всякой величины имеются три основных свойства: имя, значение и тип. В алгоритмах и языках программирования величины делятся на константы и переменные. Константа — неизменная величина, и в алгоритме она представляется собственным значением, например: 15, 34.7, k, true и т.д. Переменные величины могут изменять свои значения в ходе выполнения программы и представляются символическими именами — идентификаторами, например: X, S2, codlS.
Теперь о типах величин — типах данных. С понятием типа данных вы уже, возможно, встречались, изучая в курсе информатики базы данных и электронные таблицы. Это понятие является фундаментальным для программирования. В каждом языке программирования существует своя концепция типов данных, своя система типов. Тем не менее, в любой язык входит минимально необходимый набор основных типов данных, к которому относятся: целый, вещественный, логический и символьный типы. С типом величины связаны три ее характеристики: множество допустимых значений, множество допустимых операций, форма внутреннего представления. В табл. 1.1 представлены эти характеристики основных типов данных.
Тип |
Значения |
Операции |
Внутреннее представление |
Целый |
Целые положительные и отрицательные числа в некотором диапазоне. Примеры: 23, —12, 387 |
Арифметические операции с целыми числами: +, -, •, целое деление и остаток от деления. Операции отношений (<, >, = и др.) |
Формат с фиксированной точкой |
Вещественный |
Любые (целые и дробные) числа и некотором диапа0зоне. Примеры: 2,5,-0,01, 45,0, 3,6-105 |
Арифметические операции: +, —, •, /. Операции отношений |
Формат с плавающей точкой |
Логический |
True (истина), False (ложь) |
Логические операции: И (and), ИЛИ (or), HE (not). Операции отношений |
1 бит: 1 - true; 0 - false |
Символьный |
Любые символы компьютерного алфавита. Примеры: 'а, '5', '+','$ |
Операции отношений |
Коды таблицы символьной кодировки. 1 символ — 1 байт |
Типы констант определяются по контексту (т.е. по форме записи в тексте), а типы переменных устанавливаются в описаниях переменных.
Есть еще один вариант классификации данных — классификация по структуре. Данные делятся на простые и структурированные. Для простых величин (их еще называют скалярными) справедливо утверждение: одна величина — одно значение, для структурированных: одна величина — множество значений. К структурированным величинам относятся массивы, строки, множества и т.д.
ЭВМ — исполнитель алгоритмов. Как известно, всякий алгоритм (программа) составляется для конкретного исполнителя в рамках его системы команд. О каком же исполнителе идет речь при обсуждении вопроса о программировании для ЭВМ? Ответ очевиден: исполнителем является компьютер. Точнее говоря, исполнителем является комплекс ЭВМ + Система программирования (СП). Программист составляет программу на том языке, на который ориентирована СП. Иногда в литературе такой комплекс называют виртуальной ЭВМ.
Входным языком такого исполнителя является язык программирования Паскаль.
Независимо от того, на каком языке программирования будет написана программа, алгоритм решения любой задачи на ЭВМ может быть составлен из команд:
присваивания;
ввода;
вывода;
обращения к вспомогательному алгоритму;
цикла;
ветвления.
Для описания алгоритмов в дальнейшем мы будем использовать блок-схемы и учебный алгоритмический язык, применяемый в школьном курсе информатики.
Перечень источников:
Кинг Д. Создание эффективного программного обеспечения. –М.: мир, 1991 – 284с.
Немнюгин С.А. Turbo Pascal: учебник – СПб «Питер», 2007.- 455с.