- •Язык pascal программирование для начинающих Содержание
- •1.Начала программирования
- •2.Процедуры и функции
- •1.Начала программирования Понятия программирования
- •История и особенности языка программирования Паскаль (Pascal)
- •Словарь языка Pascal
- •Компиляция
- •Структура программы на языке Паскаль
- •Пунктуация в программах на Паскале
- •Операторы
- •Оператор присваивания
- •Составной оператор
- •Выражения
- •Ввод и вывод данных
- •Переменные и константы
- •Длина переменных
- •Типы данных
- •Целые типы
- •Вещественные типы
- •Использование константы pi
- •Символьный тип (Char)
- •Перечисляемый тип
- •Ограниченный тип (интервал)
- •Булевы типы. Логические выражения и логические операции
- •Битовая арифметика и операции над битами
- •Условные операторы
- •Оператор case
- •Вложенные конструкции if-else
- •Циклы в Паскале
- •Операторы goto, break и continue Оператор безусловного перехода goto
- •Операторы break и continue
- •Генератор псевдослучайных чисел
- •Эквивалентность и совместимость типов
- •Совместимость типов
- •Функция sizeof
- •2.Процедуры и функции Структурное программирование
- •Стандартные функции языка Pascal
- •Арифметические функции
- •Тригонометрические функции
- •Функции преобразования из вещественного в целый тип
- •Логические функции
- •Функции над дискретными типами Функция ord
- •Функция chr
- •Функции succ и pred
- •Процедуры и функции
- •Формальные параметры
- •Параметры-значения
- •Параметры-переменные
- •Побочные эффекты
- •Процедуры и функции в качестве параметров
- •Локальные и глобальные переменные
- •Рекурсивные функции
- •3.Массивы в Pascal Общее представление о массивах
- •Одномерные массивы
- •Двумерные массивы
- •Открытые массивы
- •4.Графика и псевдографика Модуль Crt
- •Модуль Graph
- •Процедура Line. “Звезды на экране”
- •Процедура Circle. “Разноцветные окружности”
- •Прямоугольники. Процедуры Rectangle, Bar и Setfillstyle
- •5.Строки Строковый тип данных в Паскале
- •Процедуры и функции для работы со строками
- •Строки и массивы символов
- •6.Работа с файлами Работа с файлами в Паскале. Общие сведения
- •Создание файла и запись данных в него
- •Чтение данных
- •Функция ioResult
- •Редактирование файла
- •7.Записи в Pascal Записи (Record)
- •Сравнение записей с массивами
- •Оператор With
- •Запись с вариантами
- •8.Множества Множества (Set)
- •Данные типа set
- •Операции над множествами
- •9.Динамические структуры данных Указатели, или ссылки (Pointer)
- •Ссылочные и динамические переменные
- •Процедура New
- •Операции над указателями
- •Процедура Dispose
- •Стек ("магазин")
- •Очередь
- •Запись новых компонент
- •Нелинейные структуры
- •Решение Задач Содержание
- •1.Линейные алгоритмы
- •2.Условные операторы
- •3.Циклы
- •4.Графика и псевдографика
- •5.Процедуры, функции, рекурсии
- •6.Массивы
- •7.Строки
- •1.Линейные алгоритмы Вычисление площади поверхности цилиндра
- •"Заем". Арифметические выражения, возведение в степень
- •2.Условные операторы Извлечение цифр числа
- •Поразрядное сравнение чисел
- •Перевод шестнадцатеричного числа в десятичное число
- •Перевод десятичного числа в шестнадцатеричное
- •Определение принадлежности даты диапазону времени
- •Программа, определяющая количество дней в месяце
- •Фильтрация данных
- •Поиск максимального элемента среди минимальных элементов столбцов
- •Удаление элементов одномерного массива
- •Выбор элементов массива
- •Процедура вычисления корней квадратного уравнения
- •Программа "Угадай число"
- •Перевод римских чисел в арабские. Пример автоматного распознавателя
- •Определить возможность существования треугольника по сторонам
- •Определение четверти на координатной плоскости
- •Оператор case в задаче выбора
- •Найти максимальное число из трех
- •Вычисление площадей геометрических фигур
- •Вычисление значения функции
- •3.Циклы Определить количество элементов массива, значение которых больше соседних элементов
- •Определить количество простых чисел
- •Сумма элементов различных рядов
- •Поменять слова местами
- •Определение различных цифр, входящих в число
- •Извлечение цифр числа
- •Поразрядное сравнение чисел
- •Использование повторяющихся изображений для создания орнаментов
- •Перенос и анимация геометрических фигур
- •Сумма и произведение цифр числа
- •Окна в crt. Программа для угадывания числа
- •Вычисление средних арифметических массивов
- •Удаление последнего слова в строке
- •Как избавиться от goto
- •Вывод квадратов натуральных чисел
- •Числа Фибоначчи
- •Запись табличных данных в файл и их чтение оттуда
- •Фильтрация данных
- •Поиск максимального элемента среди минимальных элементов столбцов
- •Умножение матриц
- •Удаление элементов одномерного массива
- •Выбор элементов массива
- •Сумма элементов двумерного массива
- •Поиск максимального элемента в массиве
- •Функция, вычисляющая наибольший общий делитель
- •Фильтр строки
- •Заполнение массива и вычисление суммы элементов
- •Возведение числа в степень
- •Вывод на экран таблицы ascii
- •Вычисление суммы ряда чисел
- •Программа "Угадай число"
- •Перевод римских чисел в арабские. Пример автоматного распознавателя Задача:
- •4.Графика и псевдографика Масштабирование фигуры
- •Использование повторяющихся изображений для создания орнаментов
- •Перенос и анимация геометрических фигур
- •Окна в crt. Программа для угадывания числа
- •Вывод строки по диагонали
- •5.Процедуры, функции, рекурсии Вычисление средних арифметических массивов
- •Перевод шестнадцатеричного числа в десятичное число
- •Перевод десятичного числа в шестнадцатеричное
- •Перевод десятичного числа в двоичную или восьмеричную систему счисления.
- •Перевод двоичного числа в десятичное
- •Пример, иллюстрирующий использование интервального типа и манипуляции над множествами
- •Псевдослучайные числа. Функция, возвращающая значение и меняющая параметр
- •Программа решения задачи о ханойской башне
- •Заполнение массива и его вывод на экран
- •Рекурсия. Процедура перевода чисел из десятичной системы счисления в другие
- •Процедура вычисления корней квадратного уравнения
- •Нахождение нод (наибольшего общего делителя) с помощью рекурсивной функции
- •Функция, вычисляющая наибольший общий делитель
- •Функция, вычисляющая наибольший общий делитель
- •Обмен значений переменных
- •Функции вычисления площади геометрических фигур
- •Вычисление площади поверхности цилиндра
- •"Заем". Арифметические выражения, возведение в степень
- •6.Массивы Определить количество элементов массива, значение которых больше соседних элементов
- •Определение различных цифр, входящих в число
- •Поразрядное сравнение чисел
- •Вычисление средних арифметических массивов
- •Использование динамических массивов
- •Копирование данных в обратном порядке
- •Поиск самой длинной заданной последовательности в массиве
- •Поиск максимального элемента среди минимальных элементов столбцов
- •Умножение матриц
- •Алгоритм шифрования данных
- •Выделение слов из строки
- •Сортировка выбором
- •Длина последовательности
- •Слияние двух упорядоченных массивов
- •Удаление элементов одномерного массива
- •Сортировка методом пузырька
- •Исключение одинаковых элементов массива
- •Выбор элементов массива
- •Вставка элемента в массив
- •Сумма элементов двумерного массива
- •Поиск максимального элемента в массиве
- •Сумма и произведение элементов одномерного массива
- •Заполнение массива и его вывод на экран
- •Фильтр строки
- •Заполнение массива и вычисление суммы элементов
- •7.Строки Поменять слова местами
- •Сортировка данных строки
- •Удаление из строки слов заданной длины
- •Удаление последнего слова в строке
- •Добавление пробелов в строку
- •Удаление одинаковых символов
- •Удаление лишних пробелов
- •Вывод строки по диагонали
- •Частота встречаемости символа в строке
- •Палиндром
- •Переворот строки
- •Замена подстроки в строке
- •Вставка подстроки
- •Удаление подстроки
- •Копирование части строки
- •Определение длины строки
- •Замена последовательности символов в строке
- •Перевод двоичного числа в десятичное
- •Выделение слов из строки
- •Фильтр строки
- •8.Файлы Запись данных в бестиповой файл
- •Проверка файла с данными на наличие записи
- •Замена последовательности символов в строке
- •Запись табличных данных в файл и их чтение оттуда
- •Копирование нетипизированного файла
- •Копирование данных в обратном порядке
- •Копирование текстовых файлов
- •Фильтрация данных
- •Запись в типизированный и текстовый файлы
- •9.Записи Пример использования записи с вариантами
- •Фильтрация записей по значению поля
- •Проверка файла с данными на наличие записи
- •Преобразование даты в числовой формат
- •Определение принадлежности даты диапазону времени
- •Программа, определяющая количество дней в месяце
- •10. Множества и интервалы Пример, иллюстрирующий использование интервального типа и манипуляции над множествами
- •11. Динамические структуры Использование динамических массивов
- •Процедуры для работы с динамической структурой спискового типа
- •Процедуры, обслуживающие стек
- •Вставка динамической переменной
- •Примечания:
Язык pascal программирование для начинающих Содержание
1.Начала программирования
-
Понятия программирования
-
История Pascal
-
Словарь Pascal
-
Компиляция
-
Структура программы
-
Пунктуация в Паскале
-
Операторы
-
Выражения
-
Ввод и вывод данных
-
Переменные и константы
-
Длина переменных
-
Типы данных
-
Целые типы
-
Вещественные типы
-
Булевский тип (Boolean)
-
Символьный тип (Char)
-
Перечисляемый тип
-
Ограниченный тип (интервал)
-
Булевы типы. Логические выражения
-
Битовая арифметика
-
Условные операторы
-
Вложенные if-else
-
Циклы
-
Goto, break и continue
-
Генератор псевдослучайных чисел
-
Эквивалентность и совместимость типов
-
Функция sizeof
2.Процедуры и функции
-
Структурное программирование
-
Стандартные функции
-
Арифметические функции
-
Тригонометрические функции
-
Функции преобразования
-
Логические функции
-
Функции над дискретными типами
-
Процедуры и функции
-
Формальные параметры
-
Параметры-значения
-
Параметры-переменные
-
Побочные эффекты
-
Процедуры и функции в качестве параметров
-
Локальные и глобальные переменные
-
Рекурсия
3.Массивы в Pascal
-
Представление о массивах
-
Одномерные массивы
-
Двумерные массивы
-
Открытые массивы
4. Графика и псевдографика
-
Модуль Crt
-
Модуль Graph
-
Процедура Line
-
Процедура Circle
-
Прямоугольники
5. Строки
-
Строковый тип данных
-
Процедуры и функции
-
Строки и массивы символов
6. Работа с файлами
-
Общие сведения
-
Создание файла
-
Чтение данных
-
Функция IOResult
-
Редактирование файла
7. Записи в Pascal
-
Записи (Record)
-
Сравнение записей с массивами
-
Оператор With
-
Запись с вариантами
8. Множества
-
Множества (Set)
-
Данные типа set
-
Операции над множествами
9. Динамические структуры данных
-
Указатели
-
Ссылочные переменные
-
Процедура New
-
Операции над указателями
-
Процедура Dispose
-
Стек ("магазин")
-
Очередь
-
Запись новых компонент
-
Нелинейные структуры
1.Начала программирования Понятия программирования
Часто людям приходится делать что-то, а потом повторять те же действия через промежуток времени. Когда человек первый раз сталкивается с задачей, то обдумывает последовательность действий (алгоритм) для ее решения. Придумав удачный алгоритм, человек его запоминает, и последующее выполнение похожих задач происходит уже «на автомате». Когда мы действуем согласно какой-либо инструкции, то являемся просто исполнителями.
Но компьютер может быть лучшим исполнителем, чем человек, хотя бы за счет высокой скорости выполнения действий. У компьютера тоже есть память, куда можно записать последовательность действий (алгоритм) для решения той или иной задачи? Машина будет следовать хранящимся в нем инструкциям раз за разом и быстро выполнять их.
При этом надо понимать, что запрограммировать компьютер (т.е. записать в него алгоритм) все равно надо. И делает это человек. Человек разрабатывает последовательность действий для решения задачи и записывает их в память машины. Сам по себе компьютер ничего не знает, он просто железо и делает лишь то, что записано в его памяти. Придумывание алгоритма для решения задачи достаточно трудоемкий процесс. Однако выгоды, получаемые от его реализации с помощью компьютера, перекрывают эти затраты.
Определение компьютерной программы
Предположим, что поместить в память компьютера инструкции для решения задач не проблема. Но поймет ли их компьютер? Он не «говорит» на естественных для нас языках. Для него нужны инструкции на понятном ему языке. Комплекс инструкций для решения определенной группы задач, записанный на понятном компьютеру языке является ничем иным как компьютерной программой.
Определение и история языков программирования
Так какой же язык понятен компьютеру, как следует выражаться в его память, чтобы он потом делал то, что мы хотим. Компьютер – это электронное вычислительное устройство. Вычислительное! Он работает с числами, складывает, вычитает, сравнивает. Больше ни с чем. Но как же? Ведь мы привыкли обрабатывать на компьютере не только числовую информацию, но также текстовую и графическую. Поэтому может сложиться впечатление, что компьютер работает не только с числами. Фокус заключается в том, что любую информацию, в том числе текстовую и графическую можно закодировать числами. А чтобы запрограммировать какие-то действия с нечисловой информацией можно манипулировать именно числами, в которых она представлена в закодированном виде.
Первые программы для ЭВМ писались именно в числах. Это сложно для человека. Представьте, что все, что вы хотите сказать, нужно сказать исключительно числами. Тут дело усложнялось еще тем, что компьютеры проще создавать таким образом, чтобы они считали в двоичной системе счисления. Записи программ получались слишком длинными. Для их сокращения пользовались восьмеричной и шестнадцатеричной системами счисления. Запись программы числами называется машинным языком программирования.
Программировать работу компьютера в машинных кодах трудно, т.к. думать числами неестественно для человека. Мы привыкли думать словами. А что если сопоставить часто используемым группам чисел слова, а затем написать программу перевода слов на числа. Т.е. теперь программист может описать алгоритм в словах, затем передать его специальной программе-переводчику (транслятору), который преобразует словесный алгоритм в машинный код, понятный компьютеру. И человеку хорошо и компьютеру понятно. От человека требовалось только создать этот самый транслятор. Человечество регулярно придумывает различные языки программирования и пишет под них трансляторы. Но сначала появились ассемблеры.
Чуть позже программисты стали замечать, что в принципе программирование сводится к вводу и выводу данных, выбору той или иной ветки выполнения программы и повторения одних и тех же действий определенное количество раз. Но самое главное, некоторые части кода программы много раз используются в ней в разных местах. Так пришли к выводу о том, что программа должна представлять собой структуру из обособленных частей. Появилось структурное программирование. Программистская мысль не спала и структурным программированием не ограничилась. Начали появляться объектно-ориентированные, логические, функциональные и другие способы программирования. Так в объектно-ориентированном программировании основной идеей стала аналогия с реальным миром, где есть объекты, имеющие свойства, умеющие что-то делать сами и подвергающиеся изменениям извне. Решение поставленной задачи при этом происходит путем взаимодействия описанных объектов.
Следует понимать, что конкретный язык программирования может содержать в себе несколько концепций (парадигм) программирования. Например, быть структурным и объектно-ориентированным одновременно. Языков множество, парадигм (принципов программирования) единицы.