- •А.В. Кравцов, н.В. Чеканцев, е.С. Шарова, м.С. Гынгазова, ю.А. Смышляева, э.Д. Иванчина Проблемно-ориентированная информатика химико-технологических процессов
- •Введение
- •1. Общая характеристика языков программирования
- •2. Основы программирования на языке turbo pascal
- •2.1. Оператор присваивания
- •2.2. Программирование линейных алгоритмов
- •2.3. Программирование разветвляющихся алгоритмов. Условный оператор
- •2.4. Оператор варианта
- •2.5. Программирование циклических алгоритмов
- •2.6. Одномерные массивы
- •2.7. Матрицы
- •2.8. Файлы
- •3. Технология программирования и модули
- •3.1. Подпрограммы
- •3.2. Использование стандартных модулей
- •3.2.1. Модуль Сrt. Работа с экраном в текстовом режиме
- •3.2.2. Модуль Graph . Работа с экраном в графическом режиме
- •3.2.3. Закрашенные области
- •3.2.4. Вывод текстовой информации
- •4. Решение функциональных и вычислительных задач химической технологии
- •4.1. Обработка экспериментальных данных
- •4.1.1 Интерполяционный многочлен Лагранжа
- •4.1.2. Интерполяционный многочлен Ньютона
- •4.2. Итерационные методы решения нелинейных уравнений
- •4.2.1. Метод деления отрезка пополам
- •4.2.2. Метод простых итераций
- •4.2.3. Метод Ньютона (метод касательных)
- •4.2.4. Примеры составления программ
- •4.3. Приближенное решение обыкновенных дифференциальных уравнений первого порядка
- •4.3.1. Метод Эйлера
- •4.3.2. Метод Рунге-Кутта
- •5. Основы работы с windows
- •Управление манипулятором мышь
- •Курсор ввода
- •Рабочий стол
- •Окно программы мой компьютер
- •Корзина
- •Панель задач
- •Файловая система и структура
- •5.1. Основы работы с Microsoft Word
- •5.1.1. Запуск программы Word
- •5.1.2. Элементы окна редактора Word
- •5.1.3. Набор текста
- •5.1.4. Сохранение и загрузка документов
- •5.1.5 Основы форматирования текста
- •5.1.6. Создание таблиц
- •5.1.7. Формульный редактор
- •5.2. Построение графиков с использованием Microsoft Excel
- •Формулы для вычисления линий тренда
- •6. Основы работы в среде delphi
- •6.1. Знакомство со средой Delphi
- •6.1.1. Главное окно
- •Пиктографические кнопки
- •6.1.2. Окно формы
- •6.1.3. Окно Инспектора Объектов
- •6.1.4. Окно кода программы
- •6.2. Основы визуального программирования в среде Delphi
- •6.2.1. Пустая форма и ее модификация
- •6.2.1.1. Настройка Delphi
- •6.2.1.2. Имена в Delphi
- •6.2.1.3. Изменение свойств формы
- •6.2.1.4. Размещение нового компонента
- •6.2.2. Реакция на события
- •6.2.2.1. Обработчик события OnClick
- •6.2.2.2. Динамическое изменение свойств компонента
- •6.3. Использование компонентов общего назначения
- •6.3.1. TFrame – рама и шаблоны компонентов
- •6.3.2. TMainMenu - главное меню формы (программы)
- •6.3.3. TPopupMenu - вспомогательное (локальное) меню
- •6.3.4. TLabel - метка для отображения текста
- •6.3.5. TEdit - ввод и отображение строки
- •6.3.6. TMemo - ввод и отображение текста
- •6.3.7. TButton – кнопка
- •6.3.8. TCheckBox - независимый переключатель
- •6.3.9. TRadioButton - зависимые переключатели
- •6.3.10. TListBox - список выбора
- •6.3.11. TComboBox – раскрывающийся список выбора
- •6.3.12. TScrollBar - управление значением величины
- •6.3.13. TGroupBox - панель группирования
- •6.3.14. TRadioGroup - группа зависимых переключателей
- •6.3.15. TPanel – панель
- •6.3.16. TActionList - механизм действий
- •7. Базы данных и базы знаний. Сеть интернет.
- •7.1. Системы сбора, хранения и обработки информации о протекании промышленного процесса
- •7.1.1 Общая характеристика систем управления базами данных
- •7.1.2 Иерархические субд
- •7.1.3 Сетевые базы данных
- •7.1.4 Реляционные базы данных
- •7.1.5 Среда быстрой разработки приложений Delphi
- •7.1.6 Язык sql как стандартный язык реляционных бд
- •7.1.7 Базы данных на нефтеперерабатывающих заводах. Единая тематическая витрина данных на ооо «по «Киришинефтеоргсинтез»
- •7.1.8 Базы знаний
- •7.2. Сеть интернет
- •7.2.1. Что такое Интернет
- •7.2.2. История возникновения Интернет
- •7.2.3 Интернет - компьютерные сети и сетевые протоколы. Семейство протоколов tcp/ip
- •7.2.4 Службы (сервисы) Интернет и архитектура клиент-сервер
- •7.2.5 Интернет в цифрах
- •8.1. Анализ и задание требований к безопасности
- •8. Средства защиты информации
- •8.2. Безопасность в прикладных системах
- •8.3 Проверка достоверности входных данных.
- •8.4. Проверка достоверности внутренней обработки данных
- •8.5. Аутентификация сообщений
- •8.6. Защита файлов прикладных систем
- •8.7. Контроль рабочего программного обеспечения
- •8.8. Защита системных тестовых данных
- •8.9. Безопасность в среде разработки и рабочей среде
- •8.10. Процедуры управления процессом внесения изменений
- •8.11. Технический анализ изменений, вносимых в операционную систему
- •8.12. Ограничения на внесение изменений в пакеты программ
- •Литература
- •Оглавление
- •Учебное издание
- •Проблемно-ориентированная информатика химико-технологических процессов
3.2. Использование стандартных модулей
3.2.1. Модуль Сrt. Работа с экраном в текстовом режиме
Практически любая программа использует дисплей для отображения вводимой и выводимой информации. Всю выводимую на экран дисплея информацию подразделяют на текстовую и графическую. Соответственно выделяют текстовый и графический режимы.
Для инициализации (установки) текстового режима используется процедура TextMode(Mode:word). Выполнение этой процедуры приводит к очистке экрана и активации указанного режима.
TextColor(Color:byte) - устанавливает цвет выводимых на экран символов.
TextBackGround(Color:byte) - устанавливает цвет фона, т.е. цвет области, которая окружает отображаемый на экране символ.
ClrScr - очищает активное окно и устанавливает курсор в верхний левый угол.
GotoXY(x,y:byte) - перемещает курсор в позицию с координатами X,Y в рамках активного окна.
WhereX - возвращает X-координату текущей позиции курсора.
WhereY - возвращает Y-координату текущей позиции курсора.
Для работы с клавиатурой в Crt предусмотрены следующие функции:
KeyPressed:boolean - возвращает значение True, если на клавиатуре была нажата какая-либо клавиша. В противном случае эта функция возвращает значение False.
ReadKey:char - считывает символ с клавиатуры. Считываемый символ на экране не отображается.
Практически любая программа, разработанная для ПЭВМ, использует дисплей для отображения вводимой и выводимой информации. В зависимости от типа используемого в ПЭВМ адаптера (ПЭВМ комплектуется одноцветным и цветным графическим адаптером) всю выводимую на экран дисплея информацию подразделяют на текстовую и графическую. Соответственно выделяют текстовый и графический режимы.
3.2.2. Модуль Graph . Работа с экраном в графическом режиме
Модуль Graph поддерживает графический режим работы дисплея. В этом режиме любое изображение на экране дисплея синтезируется из множества мельчайших элементов, называемых пикселями. Каждый пиксель представляет собой светящуюся точку таких размеров, при которых промежутки между отдельными пикселями отсутствуют. Если группа смежных пикселей светится, то они воспринимаются не как совокупность отдельных точек, а как сплошной участок. Таким образом, на экране дисплея может быть синтезировано любое графическое изображение.
В графическом режиме экран дисплея разделяется прямоугольной сеткой, каждый элемент которой имеет свои координаты. Левый верхний угол экрана имеет координаты (0,0). Значение левой координаты (X) увеличивается в горизонтальном направлении слева направо. Значение правой координаты (Y) увеличивается в вертикальном направлении сверху вниз. Количество точек по горизонтали и вертикали называется разрешающей способностью.
Координаты правой нижней границы экрана можно определить, используя функции GetMaxX и GetMaxY.
Реализация графического режима в ПЭВМ обеспечивается благодаря наличию специальной схемы, называемой графическим адаптером. ПЭВМ может комплектоваться следующими типами графических адаптеров: CGA, VCGA, EGA, VGA, Hercules, AT&T, PC-3270, IBM-8514. Работу графического адаптера поддерживает специальная программа, называемая драйвером. Загрузочный модуль драйвера хранится в специальном файле с расширением bgi. Используемый адаптер может функционировать в различных режимах.
Рассмотрим пример инициализации (установки) графического режима:
USES Graph;
VAR Gd,Gm:integer;
BEGIN
Gd:=Detect;
InitGraph(Gd,Gm,'');
IF GraphResult< >grOk THEN Halt(1);
...CloseGraph
END.
Графический режим инициализируется с помощью стандартной процедуры InitGraph. При этом переменным Gd и Gm необходимо указать номер адаптера и номер графического режима. Если переменной Gd предварительно присвоить значение константы Detect, описанной в модуле Graph (ее значение 0), то при загрузке драйвера программа выполнит автоматическое распознавание типа адаптера. При этом если есть выбор графических режимов, то устанавливается тот из них, который обеспечивает более высокое качество изображения. Третий параметр процедуры InitGraph - путь до файла с загрузочным модулем драйвера. Если путь отсутствует, то поиск этого файла будет осуществляться в текущем каталоге. Ошибки, которые могут возникать при инициализации графического режима, анализируют с помощью функции GraphResult. Для выхода из графического режима используется стандартная процедура CloseGraph. Эта процедура восстанавливает режим, существовавший до инициализации графики.
Для создания графических изображений модуль Graph предоставляет широкий набор процедур и функций. Рассмотрим точки и линии.
1. PutPixel(X,Y:integer;Color:word) - ставит на экране точку с координатами (X,Y) цвета Color.
2. Line(X1,Y1,X2,Y2:integer) - выводит на экран линию, соединяющую точки с координатами (X1,Y1) и (X2,Y2).
3. Rectangle(X1,Y1,X2,Y2:integer) - выводит на экран изображение прямоугольника с координатами диагонали (X1,Y1) и (X2,Y2).
4. Circle(X,Y:integer;Radius:word) - выводит на экран изображение окружности с координатами центра (X,Y) и радиусом (Radius).
5. Ellipse(X,Y :integer; StAngle, EndAngle, XRadius, YRadius: word) - выводит на экран изображение эллиптической дуги с центром в точке (X,Y) от начального угла StAngle до конечного угла EndAngle с горизонтальной полуосью XRadius и вертикальной YRadius. Отсчет углов осуществляется относительно горизонтальной оси в направлении против часовой стрелки (3 часа - 0, 12 часов - 90 и т.д.) Если StAngle=0, а EndAngle=360, то будет выведено изображение полного эллипса.
Установка цвета линий осуществляется процедурой SetColor(Color:integer). Цвет фона SetBkColor(Color:word).
Рассмотрим пример:
USES Graph;
VAR Gd,Gm:integer;
BEGIN
Gd:=Detect;
InitGraph(Gd,Gm,'d:\bp\bgi');
rectangle(100,50,200,100);
line(100,50,200,100);
line(100,100,200,50);
ellipse(150,75,0,360,50,25);
readln;
CloseGraph
END.
