-6A82E~1
.PDFМИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ
Белорусский национальный технический университет Кафедра «Машины и технология обработки металлов давлением»
ЭЛЕКТРОННЫЙ УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС ПО УЧЕБНОЙ ДИСЦИПЛИНЕ
ПРИКЛАДНАЯ ИНФОРМАТИКА И КОМПЬЮТЕРНОЕ ПРОЕКТИРОВАНИЕ
для специальности
6-05-0714-03 «Инженерно-техническое проектирование и производство материалов и изделий из них»
профилизации "Деформационные технологии и оборудование "
Минск ◊ БНТУ ◊ 2025
Составители: А.В. Мазурёнок, В.А. Томило, О.А.Шиманович
Перечень материалов
Электронный учебно-методический комплекс (ЭУМК) по дисциплине «Прикладная информатика и компьютерное проектирование» содержит материалы для самостоятельного теоретического и практического изучения учебной дисциплины, представленные конспектом лекций и лабораторным практикумом, пример выполнения курсовой работы, учебную программу учебной дисциплины, перечень основной и дополнительной литературы, вопросы для самоконтроля и подготовки к экзамену.
Пояснительная записка
Цели УМК – повышение эффективности самостоятельной теоретической и практической подготовки, направленной на изучение обучающимися по очной и заочной формам получения высшего образования основ программирования на языке Паскаль и приобретение студентами элементарных навыков работы на персональных компьютерах с различными графическими пакетами.
Особенности структурирования и подачи учебного материала
Структурно ЭУМК по дисциплине «Прикладная информатика и компьютерное проектирование» состоит из теоретического, практического и вспомогательного разделов и раздела контроля знаний.
Теоретический раздел содержит конспект лекций учебной дисциплины. В лекционном материале рассматриваются вопросы, направленные на изучение основ программирования на языке Паскаль.
Практический раздел состоит из девяти лабораторных работ и направлен на изучение основ программирования на языке Паскаль и способов построения схем алгоритмов решения задач.
Вспомогательный раздел включает учебную программу учебной дисциплины, в которой содержатся учебно-методические карты по очной и заочной формам получения высшего образования, методические рекомендации по организации и выполнению самостоятельной работы, перечень основной литературы. Также в него входят пример курсовой работы.
Раздел контроля знаний, включает в себя вопросы для самоконтроля и подготовки к экзаменам и контрольную работу.
Рекомендации по организации работы с ЭУМК – рекомендуется изучить теоре-
тический раздел по темам, затем выполнить необходимую подготовку для выполнения лабораторных работ, проработать контрольные вопросы.
3
Содержание
Теоретический раздел............................................................................................... |
5 |
|
Конспект лекций.......................................................................................................... |
5 |
|
1. Основы программирования.................................................................................... |
5 |
|
1.1 |
Общие сведения ............................................................................................ |
5 |
1.2 |
Структура языка Turbo Pascal...................................................................... |
6 |
1.3 |
Структура программы................................................................................... |
6 |
1.4 |
Типы переменных ......................................................................................... |
7 |
1.5 |
Методические указания к выполнению схем алгоритмов........................ |
8 |
2 Организация разветвлений................................................................................... |
10 |
|
2.1 |
Составной оператор .................................................................................... |
10 |
2.2 |
Пустой оператор.......................................................................................... |
10 |
2.3 |
Оператор безусловного перехода goto..................................................... |
10 |
2.4 |
Оператор условного перехода if ............................................................... |
11 |
2.5. Оператор выбора case................................................................................ |
13 |
|
3 Циклические вычисления...................................................................................... |
14 |
|
3.1 |
Оператор цикла while.................................................................................. |
14 |
3.2 |
Оператор цикла repeat ................................................................................ |
15 |
3.2 |
Оператор цикла for..................................................................................... |
16 |
4 Организация ввода-вывода данных. Работа с файлами ..................................... |
18 |
|
4.1. Процедуры ввода........................................................................................ |
18 |
|
4.2 |
Процедуры вывода...................................................................................... |
19 |
4.3 |
Форматный вывод переменных ................................................................. |
20 |
4.4 |
Описание файлов......................................................................................... |
20 |
4.5 |
Некоторые стандартные процедуры и функции для работы с файлами21 |
|
5 Программирование алгоритмов с использованием массивов .......................... |
23 |
|
5.1 |
Описание массивов ..................................................................................... |
23 |
5.2 |
Особенности ввода-вывода массивов ....................................................... |
24 |
5.3 |
Упакованные массивы ................................................................................ |
24 |
5.4 |
Классические задачи обработки массивов ............................................... |
25 |
6 ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ С ИСПОЛЬЗОВАНИЕМ СТРОК 28
6.1 |
Строковые константы и переменные ........................................................ |
28 |
6.2 |
Операция присваивания ............................................................................. |
29 |
6.3 |
Операция сцепления ................................................................................... |
29 |
6.4 |
Операции отношения.................................................................................. |
29 |
6.5 |
Некоторые встроенные функции для обработки строк........................... |
29 |
7. Программирование алгоритмов с использованием записей............................. |
31 |
|
7.1 |
Описание записей........................................................................................ |
31 |
7.2 |
Оператор присоединения with ................................................................... |
33 |
8 Организация подпрограмм пользователя ............................................................ |
35 |
|
8.1 |
Общие сведения .......................................................................................... |
35 |
8.2 |
Подпрограммы процедуры......................................................................... |
35 |
8.3 |
Подпрограммы функции ............................................................................ |
37 |
|
|
4 |
|
|
8.4 Область действия переменных .................................................................. |
38 |
|
|
8.5 Описание алгоритмов и программ ............................................................ |
39 |
|
9 ИСПОЛЬЗОВАНИЕ МОДУЛЕЙ В ТУРБО-ПАСКАЛЕ. МОДУЛЬ CRT....... |
44 |
||
|
9.1 Общие сведения .......................................................................................... |
44 |
|
|
9.2 Работа с экраном дисплея в текстовом режиме ....................................... |
44 |
|
|
9.3 Работа с экраном дисплея в текстовом режиме ....................................... |
46 |
|
|
9.4 Работа с экраном дисплея в текстовом режиме ....................................... |
47 |
|
10 |
МОДУЛЬ GRAPH ............................................................................................... |
48 |
|
|
10.1 |
Общие сведения ........................................................................................ |
48 |
|
10.2 |
Инициализация графического режима и выход из него ....................... |
49 |
|
10.3 |
Управление экраном и организация окон............................................... |
50 |
|
10.4 |
Вывод текстовой информации................................................................. |
50 |
|
10.5 |
Определение атрибутов графического изображения ............................ |
52 |
|
10.6 |
Вывод графической информации............................................................ |
54 |
Практический раздел ............................................................................................. |
57 |
||
Лабораторные работы ............................................................................................ |
57 |
||
11 |
ИНТЕГРИРОВАННАЯ СРЕДА ПРОГРАММИРОВАНИЯ............................ |
57 |
|
|
11.1 |
Назначение системы программирования................................................ |
57 |
|
11.2 |
Файлы Турбо-Паскаля .............................................................................. |
57 |
|
11.3 |
Главное меню ............................................................................................ |
57 |
|
11.4 |
Команда File............................................................................................... |
58 |
|
11.5 |
Команда Edit .............................................................................................. |
59 |
|
11.6 |
Команда Run .............................................................................................. |
59 |
|
11.7 |
Команда Compile ....................................................................................... |
60 |
|
11.8 |
Команда Debug .......................................................................................... |
61 |
Порядок работы в TURBO_PASCAL ...................................................................... |
62 |
||
12 |
Организация разветвляющихся процессов (лабораторная работа №1).......... |
63 |
|
13 |
Организация циклических процессов (лабораторная работа №2) .................. |
72 |
|
14 |
Организация ввода-вывода. Работа с файлами (лабораторная работа №3)... |
79 |
|
15 |
Программирование алгоритмов с использованием массивов (лабораторная |
||
работа № 4)................................................................................................................. |
88 |
||
14 |
Программирование алгоритмов с использованием строк (лабораторная |
|
|
работа № 5)................................................................................................................. |
97 |
||
17 |
Программирование алгоритмов с использованием записей (лабораторная |
|
|
работа №6).................................................................................................................. |
98 |
||
18 |
Организация подпрограмм пользователя (лабораторная работа № 7) ......... |
102 |
|
19 |
Модуль CRT (лабораторная работа №8).......................................................... |
113 |
|
20 |
Модуль GRAPH (лабораторная работа №9).................................................... |
116 |
|
Вспомогательный раздел..................................................................................... |
121 |
||
|
Учебная программа дисциплины................................................................... |
121 |
|
|
Пример оформления курсовой работы ......................................................... |
148 |
|
Контроль знаний ................................................................................................... |
171 |
||
|
Контрольные вопросы .................................................................................... |
171 |
|
|
Контрольная работа ........................................................................................ |
172 |
|
5
ТЕОРЕТИЧЕСКИЙ РАЗДЕЛ Конспект лекций
1. ОСНОВЫ ПРОГРАММИРОВАНИЯ
1.1 Общие сведения
Алгоритмический язык Pascal разработан профессором Цюрихского технологического института Никлаусом Виртом в 1969-71 годах для обучения студентов структурному программированию. Идеи, заложенные в основу создания языка, позволили фирме Borland International значительно расширить алгоритмические средства языка, а удобный интерфейс (меню команд) и высокая скорость компиляции (процесса перевода текста программы в машинные коды) сделали язык Turbo Pascal одним из самых распространенных среди начинающих и профессиональных программистов. Методическое пособие ориентиро-
ванно на Turbo Pascal Version 7.0 (Copyright (c) 1983, 92 by Borland International, Inc.) и везде далее, где так или иначе встречаются термины Borland Pascal, Pascal, и другие ссылки на язык, нужно иметь в виду, что речь идет именной об этой версии языка.
Процесс программирования начинается, как правило, с составления алгоритма - последовательности операций, описывающих процесс решения задачи. Графическая запись алгоритма представляется в виде блок-схемы. Составление алгоритма заключается в логическом описании процесса решения задачи и требует знания элементов математической логики. Следует отметить, что программированию предшествует важнейший этап - постановка задачи. Постановка задачи может включать широкий спектр вопросов (разработка математических и физических моделей, вывод расчетных формул и т. п.). Программист должен четко представлять явление или формулу, которые он алгоритмизирует.
Программирование заключается в записи алгоритма на языке программирования и отладке программы. Текст программы записывается в текстовом редакторе, затем программа компилируется - переводится транслятором (переводчиком) в машинные коды и запускается на выполнение. Процесс отладки программы начинается с выявления:
-синтаксических ошибок в тексте (неверно записанных операторов),
-ошибок при выполнении программы (недопустимые математические действия, операции с числами, превосходящими предельные значения),
-алгоритмических ошибок (неверно составлен или запрограммирован алгоритм),
изаканчивается, как правило, написанием новой программы, поскольку каждый программист знает, что программу можно усовершенствовать до бесконечности, а отлаженную программу лучше не изменять.
6
1.2 Структура языка Turbo Pascal
Алфавит языка Turbo Pascal (набор используемых символов ) включает буквы латинского алфавита: от a до z и от A до Z, арабские цифры: от 0 до 9, специальные символы: _ + - * / = , . : ; < > ( ) [ ] { } ^ @ $ #, пробел “_” и управляющие символы с кодами от #0 до #31.
Используются также служебные (зарезервированные) слова, например: absolute, and, array, begin, case, const, constructor, destructor, div, do, downto, else, end, external, file, for, forward, function, goto, if, implementation, in, inline, interface, interrupt, label, mod, nil, not, object, of, or, packed, procedure, program, record, repeat, set, shl, shr, string, then, to, type, unit, until, uses, var, vertual, while, with, xor и другие.
При написании программы применяются:
константы - данные, значения которых не изменяются в программе; переменные - данные, могущие изменяться при выполнении программы; выражения - константы, переменные и обращения к функциям, соеди-
ненные знаками операций; операторы - специальные символы и слова, выполняющие действия;
функции, процедуры и модули - отдельные программные блоки, имеющие имена и подключаемые к основной программе.
Для обозначения имен констант, переменных, функций, процедур и модулей используются буквы и цифры, входящие в алфавит языка, и знак подчеркивания " _ ". Имена начинаются с буквы или знака подчеркивания "_"и содержат до 63 значащих символов. Символ пробела в имени не допускается. Эти имена принято называть идентификаторами. Различие прописных и строчных букв в идентификаторах компилятором Turbo Pascal не учитывается.
Идентификаторы отделяются друг от друга пробелами и специальными знаками.
Примеры записи идентификаторов: Alfa, C, X_max, Y_min, Sin, Cos, _10_A.
|
|
1.3 Структура программы |
|
Структура программы на языке Turbo Pascal имеет вид: |
|||
Program NAME; |
|
{ Заголовок программы } |
|
|
|
|
{ NAME - имя программы } |
{ Раздел описания } |
|||
{$N+} |
{ Режим компиляции для расчетов с подключением сопроцессора } |
||
Uses CRT, DOS, GRAPH; |
|
{ Подключение библиотек CRT, DOS, GRAPH } |
|
Label L1, L2, L3; |
|
{ Список используемых в программе меток L1, L2, L3 } |
|
Const C=10; |
|
{ Задание значений констант, используемых в программе } |
|
B=0. 15; Y=True; |
|
{ С- целое число, В- вещественное число } |
|
F='Фамилия'; |
|
|
{ Y- Логическая константа, F- Символьная строка } |
Type M= array[1. . 100] of integer; |
{Описание типов введенных программистом } |
||
|
|
|
7 |
|
Var |
|
|
|
{ Описание переменных } |
m1, m2: M; |
|
{ m1, m2 - массивы целых чисел (типа М) } |
||
a1: array [ 1. . |
100 ] of real; |
|
{ а1 - массив вещественных чисел } |
|
ch: array [ 1. . |
200 ] of char; |
|
{ ch - массив символов } |
|
ch1, |
ch2: char; |
|
{ ch1, ch2 - символьные переменные } |
|
|
s: string[79]; |
|
{ s - строка до 79 символов } |
|
a, d, x: real; |
|
{ a, d, x - вещественные переменные } |
||
yes, |
no: boolean; |
|
{ yes, |
no - переменные логического типа } |
f1, |
f2: text; |
|
{ переменные для описания текстовых файлов } |
|
{ ---------------------------------------------------------------- |
|
|
|
} |
Procedure NAME_1(Parm1:Real; Var Parm2:Real); |
{ Заголовок процедуры } |
|||
{NME_1 - имя процедуры, Parm1, Parm2 - параметры }
{Раздел описания }
BEGIN
{ Раздел выполнения }
END; |
|
|
{ ---------------------------------------------------------------- |
|
} |
Function FUN_1(Parm3, Parm4: Real): Real; |
{ Заголовок функции } |
|
{ Раздел описания } |
{ FUN_1 - имя функции, Parm3, Parm4 - параметры } |
|
|
|
|
BEGIN |
|
|
{ Раздел выполнения } |
|
|
END; |
|
|
{ ---------------------------------------------------------------- |
|
} |
{ $I File_1. pas } |
{ Подключение файла File_1. pas с дополнительными |
|
|
|
функциями и процедурами } |
{ ---------------------------------------------------------------- |
|
} |
BEGIN |
|
{ Начало выполнения программы } |
{ Раздел выполнения } |
|
|
END. |
|
{ Конец выполнения программы } |
При написании наиболее простых программ структура программы сводится к виду:
Program имя;
Объявления данных (var имя переменных : тип переменных);
Begin
тело программы; end.
1.4 Типы переменных
Типы переменных, используемых в Turbo Pascal, приводятся в таблице. Некоторые типы объединены в группы: структурированные, простые типы.
Простые типы |
Структурированные типы |
Порядковые – целые |
Массивы |
|
8 |
|
|
|
|
integer |
|
array |
shortint |
|
Записи |
byte |
|
record |
word |
|
Множества |
Логический |
|
set |
boolean |
|
Файлы |
Символьный |
|
file |
char |
|
Сроки |
|
|
string |
Перечисляемый |
|
|
Диапазон |
|
|
Вещественный |
|
Указатели |
real |
|
pointer |
single |
|
|
double |
|
|
extended |
|
|
comp |
|
|
Используются стандартные имена типов, либо имя типа задается в разделе описания программы, например: TYPE A = array [1..1000] of real;
Тип переменной объявляется после служебного слова VAR, например:
VAR
a1, a2: A; { массивы из 1000 элементов вещественных чисел типа
"A" }
Если не использовать служебное слово TYPE, то можно записать:
VAR
a1, a2: array [1..1000] of real;
и т.д.
1.5 Методические указания к выполнению схем алгоритмов
При выполнении схем алгоритмов необходимо пользоваться следующими правилами.
1)Пояснительные слова или обозначение действий на схеме (например «Начало», «Конец», «Ввод», «Вывод», «Да», «Нет» и т.п.) пишутся с заглавной буквы.
2)Линии потока должны входить (выходить) в (из) середину(ы) символа, быть параллельными краям листа и являться как бы продолжением друг друга.
3)Если линия потока не имеет изломов и имеет стандартное направление (сверху-вниз или слева-направо), то допускается не обозначать ее стрелкой.
4)Изображение основных символов:
-«терминатор», используется для обозначения начала и конца схемы алгоритма;
9
- «процесс», используется для обозначения выполнения определенной операции или группы операций, приводящих
к изменению значений данных (операции присваивания и т.п.);
- «данные», используется для обозначения ввода-вывода данных;
- «решение», используется для отображения решения (оператор условного перехода if, оператор выбора case), имеет один вход и ряд альтернативных выходов;
- «начало цикла», внутри символа пишется условие начала цикла;
- «конец цикла», внутри символа пишется условие окончания цикла.
5)Если необходимо разорвать линию потока, то следует использовать соединитель:
6)Места слияний линий потока:
7)Условия решения проставляются непосредственно на выходе из символа либо сверху, либо справа от линии потока:
8)В символе «Данные» после обозначения вида работы с данными и определения носителя (в случае необходимости) ставить двоеточие:
10
2 ОРГАНИЗАЦИЯ РАЗВЕТВЛЕНИЙ
2.1 Составной оператор
Составной оператор - это объединение нескольких операторов в одну группу.
Общий вид: begin
оператор_1 ; оператор_2 ;
. . .
оператор_n ;
end ;
Составной оператор можно вставлять в любое место программы, где допускается использование одного оператора. В свою очередь любой из операторов составного оператора тоже может быть составным оператором.
Нельзя извне составного оператора передавать управление внутрь его!
2.2 Пустой оператор
Пустой оператор - это оператор, не выполняющий никакого действия. Пустому оператору соответствует символ ; на том месте, где по правилам должен быть какой-либо оператор.
Пример:
. . .
A:=B ;
;
M:=7.2 ;
. . .
Пустой оператор применяется в таких метах программы, в которых необходимо использование оператора, но нежелательны какие-либо действия.
Составной и пустой операторы нередко применяются в операторах перехода.
2.3 Оператор безусловного перехода goto
Общий вид:
goto метка ;
Метка представляет собой идентификатор или любое целое число в пределах от 0 до 9999. Метка должна быть описана в разделе label и записывается перед помечаемым оператором, от которого отделяется двоеточием. Между меткой и помечаемым оператором допускается включать один или несколько пробелов. Пробел между словами go и to недопускается.
