Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Лабораторный практикум по программированию на языке Delphi Win32 Language

Методические указания к выполнению лабораторных работ
Покупка
Новинка
Артикул: 851476.01.99
Доступ онлайн
161 ₽
В корзину
Приведены краткие теоретические сведения, примеры компьютерных приложений по изучаемому материалу, а также задания для выполнения лабораторных работ по каждой из рассматриваемых в курсе тем. Издание ориентировано на студентов, изучающих среду программирования Turbo Delphi. Материал методических указаний используют при проведении практических занятий в МГТУ им. Н.Э. Баумана. Для студентов 1-го курса машино- и приборостроительных специальностей. Возможно использование преподавателями в качестве сборника заданий при проведении лабораторных работ.
Лабораторный практикум по программированию на языке Delphi Win32 Language : методические указания к выполнению лабораторных работ / С. В. Борисов, О. Б. Пащенко, И. Л. Серебрякова, В. П. Степанов. - Москва : Издательство МГТУ им. Баумана, 2017. - 92 с. - ISBN 978-5-7038-4541-7. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2192133 (дата обращения: 21.01.2025). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
Московский государственный технический университет
имени Н.Э. Баумана
Лабораторный практикум по программированию 
на языке Delphi Win32 Language 
Методические указания
к выполнению лабораторных работ


УДК 681.3.06
ББК 32.973
          Л12
Издание доступно в электронном виде на портале ebooks.bmstu.ru 
по адресу: http://ebooks.bmstu.ru/catalog/199/book1546.html
Факультет «Информатика и системы управления»
Кафедра «Программное обеспечение ЭВМ и информационные 
технологии»
Рекомендовано Редакционно-издательским советом 
МГТУ им. Н.Э. Баумана в качестве учебно-методического пособия
Авторы:
С.В. Борисов, О.Б. Пащенко, И.Л. Серебрякова, В.П. Степанов
Лабораторный практикум по программированию на языке 
   Л12
Delphi Win32 Language : методические указания к выполнению 
лабораторных работ / С. В. Борисов, О. Б. Пащенко, И. Л. Серебрякова, В. П. Степанов. — Москва : Издательство МГТУ 
им. Н. Э. Баумана, 2017. — 88, [4] с. : ил.
ISBN 978-5-7038-4541-7 
Приведены краткие теоретические сведения, примеры компьютерных приложений по изучаемому материалу, а также задания для выполнения лабораторных работ  по каждой из рассматриваемых в курсе тем. 
Издание ориентировано на студентов, изучающих среду программирования Turbo Delphi. Материал методических указаний используют при 
проведении практических занятий в МГТУ им. Н.Э. Баумана.
Для студентов 1-го курса машино- и приборостроительных специальностей. Возможно использование преподавателями в качестве сборника заданий при проведении лабораторных работ.
	
УДК 681.3.06
ББК 32.973
	
© МГТУ им. Н. Э. Баумана, 2017
© Оформление. Издательство 
ISBN 978-5-7038-4541-7	
	
	
   МГТУ им. Н. Э. Баумана, 2017


ПРЕДИСЛОВИЕ
Издание содержит краткое изложение основ программирования на 
языке  Delphi Win32 Language с примерами и задания для выполнения 
лабораторных работ, проводимых в первом семестре изучения дисциплины «Информатика».  В методических указаниях рассмотрены следующие 
темы: приложения  линейной,  разветвляющейся и циклической структур; 
подпрограммы и способы передачи параметров; одномерные и двумерные 
массивы; сортировка массивов; обработка  символьных данных  и строк; 
комбинированные структуры; текстовые и типизированные файлы. Вся 
изложенная информация и приведенные примеры ориентированы на 
использование студентами консольного  приложения визуальной среды 
программирования Turbo Delphi. В завершение каждого раздела представлены комплекты заданий (25 вариантов),  имеющие одинаковый уровень 
сложности. Методические указания предназначены для изучения  фундаментальных основ программирования, не затрагивая вопросов создания 
интерфейса. 
Задания представлены в виде указаний на то, что студенты должны 
выполнить и какие результаты продемонстрировать. Сформулированы вопросы для самоконтроля усвоения проработанного материала и 
требования  к оформлению отчета по выполненной работе.  
Цели и задачи лабораторного практикума соответствуют программе 
дисциплины «Информатика» и отражают вклад в формирование соответствующих компетенций основной образовательной программы.
После практического освоения дисциплины студент должен приобрести определенные знания, умения и навыки. Студент должен
знать:
• методы представления информации в ЭВМ и выполнения арифметических и логических операций над двоичными числами;
• принципы работы технических и программных средств в информационных системах;
• типовые алгоритмы решения задач;
• язык программирования Delphi Win32 Language;
• среду программирования Turbo Delphi;
3


уметь:
• разрабатывать алгоритмы и кодировать их на языке программирования;
• использовать современные информационные технологии и инструментальные средства для решения различных задач;
обладать навыками:
• самостоятельной работы с учебной и справочной литературой;
• использования программных комплексов и прикладных программ вычисления на компьютере;
• разработки алгоритмов и кодирования приложений для решения 
профессиональных задач;
• тестирования и отладки приложений;
• представления результатов в удобном для пользователя виде, 
создания диалоговых и графических приложений;
• оформления документации в соответствии с требованиями 
ЕСПД.
Для студентов первого курса, изучающих в первом семестре дисциплину «Информатика».


ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ 
ЛИНЕЙНОЙ СТРУКТУРЫ
Цель работы: изучение стандартных типов данных; разработка алгоритмов и кодирование приложений линейной структуры.
В языке Delphi Win32 Language применяют перечисленные ниже 
стандартные типы данных.
Действительные типы данных имеют приведенные в табл. 1 диапазоны  и форматы (в байтах) представления числовых значений.
Таблица 1 
Действительные типы данных
Тип 
Диапазон
Формат
Real48
–2,9 · 1039 ... 1,7 · 1038 
6
Single 
–1,5 · 1045  
... 3,4 · 1038
4
Double 
–5,0 · 10324 ... 1,7 · 10308
8
Extended 
–3,6 · 104951 ... 1,1 · 104932
10
Целочисленные типы данных имеют приведенные в табл. 2 диапазоны  и форматы (в битах) представления числовых значений.
Таблица 2 
Целочисленные типы данных
Тип 
Диапазон
 Формат
Shortint 
–128 ... 127
8
Smallint 
–32768 ... 32767
16
Longint 
–2147483648 … 2147483647
32
Int64 
      –263 ... 263–1
64
Byte 
        0 ... 255
8
Word 
            0 ... 65535
16
Longword 
                       0 ... 4294967295
32
5


Символьный тип данных (стандартное имя Char) представлен однобайтовым форматом и  одиночным символом, заключенным в апострофы.
Логический тип данных (стандартное имя Boolean) представлен 
однобайтовым форматом и характеризуется двумя значениями: False 
(ложь) и True (истина).
Типы целочисленный, символьный и логический являются порядковыми, так как для каждого из них определены последующее и предыдущее значения.
Все величины, с которыми работает приложение, должны быть 
объявлены в разделе констант  (служебное слово Const), если их значения не меняются во время выполнения работы, или в разделе переменных (служебное слово Var) с указанием их типов, если их значения 
вычисляют в процессе работы. 
Основные операции для формирования арифметических и логических выражений и  приоритеты их выполнения представлены в табл. 3.
 
Таблица 3
Основные арифметические и логические операции
Приоритет выполнения 
операции
Операция
Выполняемое действие
+, –
Присваивание знака
1
not
Логическое отрицание
*, /
Умножение, деление
2
div,  mod
Целочисленное деление
and
Логическое умножение
+, -
Сложение, вычитание
3
or,  xor
Логическое суммирование
4
=, <> , <, >, <=, >=
Отношения (сравнения)
Операции выполняют с учетом их приоритетов. Для изменения 
естественного порядка выполнения операций используют круглые 
скобки.
Результатом операции  div является частное от деления двух чисел, а  mod — остаток от деления, например:
(9 - 2)   div 2 = 3;        7 mod 2 = 1
Стандартные  функции и процедуры (табл. 4, 5) описаны в файлах 
SysUtils и  Math, которые должны быть включены в предложение uses.
6


Таблица 4 
Стандартные функции
Стандартная 
функция
Тип аргумента
Тип результата
Математическая запись, 
комментарий
abs(x)
integer, real
integer, real
│x│
arctan(x)
integer, real
real
arctg(x)
cos(x)
integer, real
real
cos(x)
sin(x)
integer, real
real
sin(x)
exp(x)
integer, real
real
ex
ln(x)
real, real
real 
ln(x)
sqrt(x)
integer, real
real
x
sqr(x)
integer, real
integer, real
x2
ord(x)
порядковый
integer
ASCCI-код символа
succ(x)
порядковый
порядковый
Возвращает 
следующее 
значение х
pred(x)
порядковый
порядковый
Возвращает предыдущее 
значение х
round(x)
real
integer
Округляет х до целого
trunс(x)
real
integer
Отсекает дробную часть х
int(x)
real
real
Выделяет целую  часть х
frac(x)
real
real
Выделяет дробную 
часть х
odd(x)
integer
boolean
True (х-нечетное), False 
(х-четное)
Г
енерирует 
случайное 
random(range)
integer
integer
число x в диапазоне  
0<= х<range
Г
енерирует 
случайное 
random
-
real
число x в диапазоне от 
0<= x<1
uppercase(x)
char
char
Заменяет строчную букву 
латиницы на прописную
Заменяет 
прописную 
lowercase(x)
char
char
букву латиницы 
на строчную
7


Таблица 5
Стандартные процедуры
Стандартная 
процедура
Тип аргумента
Тип результата
Математическая запись, 
комментарий
inc(x,n)
integer
integer
Увеличивает х на n
inc(x)
integer
integer
Увеличивает х на 1
dec(x,n)
integer
integer
Уменьшает х на n
dec(x)
integer
integer
Уменьшает х на 1
randomize
–
–
Устанавливает генератор 
случайного числа на  следующее 
значение. Используется 
совместно с random
Приложение линейной структуры содержит операторы присваивания, вызова процедур (будут рассмотрены ниже), команды ввода и 
вывода данных.
Оператор присваивания записывают следующим образом: 
<имя переменной> := <выражение>
Он вычисляет выражение (арифметическое или логическое)  и 
присваивает полученное значение имени переменной. Например, в 
результате выполнения операторов присваивания 
s := sqrt(p*(p-a)*(p-b)*(p-c)) и f := (a>c) and (a<b),
переменная s  получит числовое значение, а переменная  f – логическое.
Ввод данных с клавиатуры осуществляется двумя стандартными командами (процедурами):
read (<список ввода>) и  readln (<список ввода>),
где <список ввода> — последовательность имен переменных, разделенных запятыми, значения которых необходимо ввести.  
При выполнении этих команд происходит приостановка выполнения приложения, после чего необходимо набрать на клавиатуре 
значения перечисленных в списке переменных (числа через пробел, 
символы без пробела). Вводимые данные должны соответствовать по 
типу и порядку следования перечисленным в списке переменным. По 
окончании ввода следует нажать клавишу <Enter>. Команда readln 
8


отличается от read только тем, что после считывания последнего в 
списке значения для одного оператора readln данные для следующего оператора будут считываться с начала новой строки. Вводить можно 
только переменные числового, символьного и строкового типов (строковый тип  изложен в разделе «Программирование алгоритмов  с использованием строк»). 
Вывод на экран сообщений и результатов работы приложения осуществляется двумя стандартными командами (процедурами):
write (<список вывода>) и  writeln (<список вывода>),
где <список вывода> — последовательность имен переменных, разделенных запятыми, значения которых необходимо вывести.  
Список вывода может содержать константы, переменные или выражения. При использовании команды write после вывода последней переменной из списка курсор остается в той же строке экрана, 
и следующий вывод будет начинаться с этой же позиции курсора. 
Действие команды writeln отличается тем, что после вывода последнего в списке значения происходит перевод курсора к началу 
следующей  строки. При выводе нескольких данных в строку они 
не отделяются друг от друга пробелами. Поэтому следует применять 
форматированный  вывод данных, т. е. представлять результаты в нужном и удобном виде. Для этого в скобках команды вывода после идентификатора переменной или выражения размещаются символ «:» и 
число, обозначающее количество позиций в строке экрана, которое 
необходимо выделить для вывода значения переменной или выражения. Такое выделение применяют для вывода целого и строкового типов. При выводе действительного типа указывают общее количество 
позиций для вывода значения и количество позиций для дробной части. Например, для вывода целых a= 2, b= –13 и действительного 
с= –75,123456 можно записать 
writeln (‘ ‘:3,‘a=’,a:2,’  b=’,b:5,’  c=’c:10:5).
В результате на экране появится следующая строка:
a= 2  b=  -13  c= -75.12346. 
Как видно из примера, форматировать можно не только данные, 
но и комментарии к ним. 
9


Пример 1. Вычислить и вывести в таблицу длины  сторон треугольника по заданным целочисленным координатам его вершин. Алгоритм 
представляет собой линейную структуру, поскольку предполагает задание исходных данных, последовательный расчет длин сторон и вывод 
полученных результатов.
Код приложения Пример 1 (Example 1):
program Example_1;
{$APPTYPE CONSOLE}
uses SysUtils;
Var x1,y1,x2,y2,x3,y3:longint; // координаты вершин
             a12,a23,a31:real;  // длины сторон
// для преобразования в действительный тип
   	
	
          r1,r2:real48;   
Begin
writeln(‘Вычисление длин сторон треугольника’, 
        ‘по координатам вершин’);
writeln(‘Введите координаты 1 вершины’);
readln(x1,y1);
writeln(‘Введите координаты 2 вершины’);
readln(x2,y2);
writeln(‘Введите координаты 3 вершины’);
readln(x3,y3);
{Вычисление длин сторон треугольника}
r1:=abs(x1-x2);r2:=abs(y1-y2);
a12:=sqrt(sqr(r1)+sqr(r2));
r1:=abs(x2-x3);r2:=abs(y2-y3);
a23:=sqrt(sqr(r1)+sqr(r2));
r1:=abs(x1-x3);r2:=abs(y1-y3);
a31:=sqrt(sqr(r1)+sqr(r2));
(*Вывод таблицы с исходными данными и результатами*)
writeln(‘========================================’);
writeln(‘ Координаты вершин      Длины сторон’);
writeln(‘ x1 y1 x2 y2 x3 y3   1 - 2   2 - 3   3 - 1’);
writeln(‘_________________________________________’);
writeln;
writeln(x1:5,y1:5,x2:5,y2:5,x3:5,y3:5,a12:8:2,
        a23:8:2,a31:8:2);
writeln(‘_________________________________________’);
writeln(‘=========================================’);
readln;
End.
10


Похожие

Доступ онлайн
161 ₽
В корзину