50878

Создание программного продукта линейной структуры в среде Delphi

Лабораторная работа

Информатика, кибернетика и программирование

Одни типы уже определены в языке другие программисту приходится задавать самому. Типы данных определяемые пользователем обычно задаются в разделе описания типов программы или модуля unit однако тип можно делать и внутри процедур и функций. Внутри же они заменяют все внешние типы с тем же именем. Простые типы данных Порядковые типы Целые типы Символьные типы Булевы типы Перечисляемые типы Поддиапазонные типы Любой реально существующий тип данных каким бы сложным он не казался на первый взгляд представляет собой простые...

Русский

2014-02-01

258.5 KB

5 чел.

Лабораторная работа №2

Основы объектно-ориентированного программирования в визуальной среде программирования Delphi.

Тема: Создание программного продукта линейной структуры в среде Delphi

Цель: Изучить структуру простого проекта на языке Delphi. Усвоить значение типов данных. Рассмотреть стандартные математические операции и функции, доступные для целых и вещественных типов данных. Закрепить применение простых компонентов

Теоретические сведения

При помощи типов данных программист указывает компилятору, как хранить информацию в программе. При объявлении переменной необходимо указать ее тип. Одни типы уже определены в языке, другие программисту приходится задавать самому. Типы данных, определяемые пользователем, обычно задаются в разделе описания типов программы или модуля (unit), однако тип можно делать и внутри процедур и функций. Объявление типов действуют в пределах того блока, в котором они размещены. Вне этого блока ссылаться на такие переменные нельзя. Внутри же они заменяют все внешние типы с тем же именем. Объявление типов Pascal являются для компилятора чем-то вроде схем, которые он должен запомнить на случай, если вдруг встретит в программе ссылки на тот или иной тип. Само по себе объявление типа не вносит в программу никаких изменений. Что же касается объявлений var, то они задают компилятору некоторые действия связанные с раннее объявленными типами. Тип переменной ограничивает как ее значение, так и операции которые можно выполнять с этими значениями. Определения типов и переменных могут размещаться в нескольких местах программы.  

Простые типы данных

  1.  Порядковые типы
  2.  Целые типы
  3.  Символьные типы
  4.  Булевы типы
  5.  Перечисляемые типы
  6.  Поддиапазонные типы

Любой реально существующий тип данных, каким бы сложным он не казался на первый взгляд, представляет собой простые составляющие, которыми процессор может манипулировать. В Object Pascal эти типы данных разбиты на две группы: порядковые, представляющие данные разных объемов, которыми процессор может легко манипулировать, и действительные представляющие приближенно математические действительные числа. Разделение типов на порядковые и действительные несколько условно. Точно так же простые данные можно было разделить на числа и не числа. Однако в языке Object Pascal порядковые и действительные данные трактуются по разному, и такое разделение даже полезно.

Порядковые типы. Из простых типов данных порядковые – самые простые. В этих типах информация представляется в виде отдельных элементов. Все значения любого порядкового типа образуют упорядоченную последовательность, и значение переменной порядкового типа определяется его местом в этой последовательности. За исключением переменных целых типов, значения которых могут быть, как положительными так и отрицательными, первый элемент любого порядкового типа имеет номер – 0, второй – 1 и т.д. Порядковый номер целого значения равен самому значению. Отношение поряка определяет общие для данных всех порядковых типов операций. Некоторые стандартные функции такого вида встроены в Object Pascal. Они представлены в таблице

Операции над порядковыми типами

Операции

Описание

Low (T)

Минимальное значение порядкового типа Т

High (T)

Максимальное значение порядкового типа Т

Ord (X)

Порядковый номер значения выражения. Для целого выражения – просто его значение. Для остальных порядковых типов Ord  возвращает физическое представление результата выражения, трактуемое как целое число. Возвращаемое значение всегда принадлежит одному из целых типов

Pred (X)

Предыдущее по порядку значение. Для целых выражений эквивалентно Х-1

Succ(X)

Следующее по порядку значение. Для целых выражений эквивалентно Х-1

Dec(V)

Уменьшает значение переменной на 1. Эквивалентно V-Pred(V)

Inc(V)

Увеличивает значение переменной на 1. Эквивалентно V-Succ(V)

Целые типы. В переменных целых типов информация представляется в виде целых чисел не имеющих дробной части. В Object Pascal определены следующие целые типы: Integer, Shortint, Smallint, Longint, Byte, Word, Cardinal

Целые типы представляют целые числа т.е числа, дробная часть которых равна 0. разница между двумя неодинаковыми числами не может быть меньше 1

Действительные типы. В переменных действительных типов определяются числа, состоящие из целой и дробной части. В Object Pascal определено шесть действительных типов. Все типы могут представлять число 0, однако они различаются пороговым (минимальным положительным) и максимальным значениями., которые могут представлять, а также точностью (количеством значащих цифр) и объемом.  

Функции действительного типа

Функция

Возвращаемое значение

abs (x)

Абсолютное значение х

ArcTan(x)

Арктангенс х

Cos(x)

Косинус х (х выражение в радианах, а не в градусах)

Sin(x)

Синус х (х выражение в радианах, а не в градусах)

Exp(x)

Экспоненциальная функция от х

Frac (x)

Дробная часть х

Int(x)

Целая част х. Несмотря на название, возвращает действительное число (с плавающей запятой), т.е просто устанавливает ноль в дробной части

Ln(x)

Натуральный логарифм

Pi

Число пи (3.1416…)

Round(x)

Ближайшее к х целое число. Возвращает значение целого типа.

Sqr(x)

Квадрат х т.е х*х

Sqrt(x)

Квадратный корень от х

Trunc(x)

Целая часть х. В отличии от int возвращает действительное значение. Trunc возвращает целое

Структура модуля программного кода

Проект Delphi представляет собой набор программных единиц – модулей. Главный модуль содержит инструкции, с которых начинается выполнение программы. Главный модуль приложения формирует Delphi. Главный модуль хранится в файле с разрешением *.dpr.

Начинается главный модуль словом program, за которым следует имя программы, совпадающее с именем проекта. Имя программы задается программистом в момент сохранения файла проекта и оно определяет имя исполняемого файла программы.

Далее за словом uses следуют имена используемых модулей: библиотечного модуля forms  и модуля формыFuntToKg1.

Выполняемая часть главного модуля находится между инструкциями begin и end

В Delphi каждой форме соответствует свой модуль. Начинается модуль со слова unit за которым следует имя модуля. Состоит модуль из трех разделов: интерфейса, реализации и инициализации.

Раздел интерфейса (начинается со слова interface). Здесь перечислены используемые модулем другие библиотечные модули и находится сформированное Delphi описание формы (типа), которое следует за словом Type.

Раздел реализации (начинается со слова implementation) содержит объявление локальных переменных, процедур и функций.

Раздел инициализации позволяет выполнить инициализацию переменных модуля. Инструкции раздела инициализации располагаются после раздела реализации между begin и end. Если раздел инициализации не содержит инструкций, то слово begin не указывается.

Порядок выполнения работы

  1.  Загружаем среду программирования Delphi. Пуск ПрограммыBorland DelphiDelphi 7.
  2.  Создадим форму вычисления квадрата числа
  3.  На стартовой форме установим следующие свойства стартовой формы

Свойство

Значение

Свойство

Значение

1

Caption

frmФамилия

Width

330

2

Name

Задание1

4

BorderStyle

bsSingle

3

Height

250

5

Font Size

12

  1.  Поместите на форму указанные на рисунке компоненты.

  1.  Установите следующие свойства для этих компонентов

Свойство

Компонент;

MyButton1

MyButton2

MyButton3

MyButton4

Edit1

Edit2

Caption

Нажми меня

Считать

Сброс

Закрыть

Top

16

192

336

80

152

296

Left

200

232

240

528

136

136

Height

49

41

41

41

21

21

Width

177

145

145

145

81

81

Font

Arial жирный размер-14 цвет - черный

Свойство

Компонент;

LblPrim1

LblPrim2

LblPrim3

Caption

Число

Ответ

Top

80

152

296

Left

56

48

64

Height

13

24

24

Width

3

66

59

Font

Arial жирный размер-14 цвет - черный

  1.  После оформления внешнего вида формы приступим к созданию исходного кода. Создайте обработчик события OnClick для кнопки
    •  Выберите кнопку btnMyButton1 в раскрывающемся списке в верхней части окна инспектора объектов
    •  Откройте инспектор объектов вкладку Events (События)
    •  Выделите событие OnClick, введите в поле справа от имени события btnMyButton и нажмите клавишу Enter или дважды щелкните мышкой. При этом становится активным окно редактора кода и Delphi  автоматически создает ОБРАБОТЧИК СОБЫТИЯ – процедуру, выполняющуюся при нажатии кнопки.
    •  Чтобы нажатие кнопки приводило к каким-либо действиям, необходимо изменить содержимое обработчика события. Задайте изменение текста при нажатии кнопки. Для этого в окне редактора кода между Begin и End введите:

lblPrim1.Caption:='Лабораторная 2. Задание1'

  1.  Аналогично программируем остальные кнопки

btnMyButton2 – код

var

a,S:real;

begin

a:= StrToFloat(Edit1.Text);

 S:=sqr(a);

Edit2.Text:=FloatToStr(S);

end;

btnMyButton3 – код

Edit1.Text:= ‘ ’;

Edit2.Text:= ‘ ’;

btnMyButton3 – код

Close

  1.  Еще рез запустить программу на выполнение.
  2.  Сохраните проект под именем Задание1PR1
  3.  Показать работу учителю 
  4.  Создайте форму для вычисления выражения
  5.  Выполните задания своего варианта

Вариант

Задание1

Задание2

1

a≠0

b≠0

2

a≠0

b≠0

3

a≠0

b≠0

4

a≠0

b≠0

5

a≠0

b≠0

6

a≠0

b≠0

7

a≠0

b≠0

8

a≠0

b≠0

9

a≠0

b≠0

10

a≠0

b≠0

11

a≠0

b≠0

12

a≠0

b≠0

13

a≠0

b≠0

  1.  Выполнение задания сохраните в свою сетевую папку по именами Задание2PR2 и Задание3PR3
  2.  Проверьте работу всех объектов
  3.  Покажите работу преподавателю
  4.  Закройте программу и выйдите из визуальной среды
  5.  Оформите отчет о лабораторной работе (в отчете должно быть: тема, цель, блок схема программы, листинг программы)

Контрольные вопросы

  1.  Что такое переменна?
  2.  Какие виды констант вы знаете?
  3.  Чем отличается переменная от константы?
  4.  С какой целью переменным назначают типы?
  5.  Какие операторы используются для объявления переменных?
  6.  Перечислите простые типы данных?
  7.  Что такое оператор присваивания? Приведите пример его использования?
  8.  Объясните различие между данными целого и вещественного типа?


 

А также другие работы, которые могут Вас заинтересовать

82247. Познание и «переживание жизни» - основное содержание художественных произведений 57.65 KB
  Проблема жизни в ее преломлении к существованию человека привлекла внимание и философов гуманитарного склада что выразилось в появлении различного рода философий жизни экзистенциализм ницшеанство Дильтей и др. русский экзистенциализм абсолютизирующих отдельные стороны духовной жизни и психической деятельности человека. Державин в своей поэме Бог весьма образно характеризовал проблему человека: Частица целой я вселенной Поставлен мнится мне в почтенной Средине естества я той Где кончил тварей ты телесных Где начал ты духов...
82248. История как форма проявления жизни. Объективация жизни во времени. Жизнь как незавершаемая целостность.(О.Шпеннглер, Э. Гуссерль) 33.65 KB
  Объективация жизни во времени. Она может трактоваться в естественно-научном это форма движения материи психологическом это одухотворенность бытия историко-культурном это проявление жизни в разных эпохах биографическом жизнь отдельного человека и философском жизнь как благо смыслах. Она может изучаться с разных позиций например со стороны образа жизни людей стиля и манеры жизни повседневного жизненного мира человека со стороны продолжительности уровня качества жизни и т.
82249. Социальные и культурно- историческиеформы жизни:общее строение и иерархия уровней. Научные и вненаучные представления о формах жизни 41.6 KB
  Державин в своей поэме Бог весьма образно характеризовал проблему человека: Частица целой я вселенной Поставлен мнится мне в почтенной Средине естества я той Где кончил тварей ты телесных Где начал ты духов небесных И цепь существ связал всех мной. Во всех этих случаях отчетливо обнаруживаются две основные методологические тенденции в объяснении природы человека: редукционистская сводящая природу человека либо к биологической либо напротив к социальной его стороне и целостная системная понимающая природу человека как единое...
82250. Время как параметр физических событий и время как мера становления человеческого бытия (общее условие осуществления жизни) 34.6 KB
  Социальное время это продолжительность существования определенных общностей людей общественных явлений отдельных личностей а также социальных процессов. Время зависит также от самого отношения людей ко времени. В истории общества образы времени менялись так образ обратимого времени все возвращается на круги свои сменился на образ необратимого линейного времени время течет от прошлого к настоящему и от него к будущему.
82251. Объективное и субъективное время. Социальное и культурно-историческое время 32.58 KB
  Социальное и культурноисторическое время. В наст вр отмечает Микешина происходит концептуальная революция наука вновь открывает для себя время. В текстах проявляются и формируются и проявляются представления о времени социсторическое время.
82252. Переосмысление категорий пространства и времени в гуманитарном контексте (М.М. Бахтин). Введение понятия хронотопа как конкретного единства пространственно-временных характеристик 32.05 KB
  Бахтин. В гуманитарном познании Бахтина П и В проявляются как совершенно новая идея. Зная идеи о П и В Канта и Бергсона Бахтин находит свое видение этих категорий значимое для современного понимания природы темпоральности и пространственности в познании. Бахтин соединяет действующее сознание и все мыслимые пространственные и временные отношения в единый центр архетектоническое целое.
82253. Коммуникативность (общение учёных) как условие создания нового социально-гуманитарного знания и выражение социально –культурной природы научного познания 34.79 KB
  Нормальная фаза. Эта фаза в истории специальности конструируется ретроспективно только в тех случаях когда новая специальность сформировалась. Нормальная фаза часто завершается опубликованием манифеста в котором содержатся в общих чертах программа разработки проблематики и оценки ее перспективности. Фаза формированиям развития сети характеризуется интеллектуальными и организационными сдвигами приводящими к объединению исследователей в единой системе коммуникаций.
82254. Научные конвенции как необходимость и следствие коммуникативной природы познания 308.25 KB
  Проблемы общения в науке Интерес к структуре формальным моделям диалога и их содержательным возможностям возродившийся в семидесятых годах постепенно привел к формированию такого направления логико-методологических исследований которое со временем получает название...
82255. Рождение знания в процессе взаимодействия коммуницирующих индивидов. Распространение и борьба научных идей. Индоктринация 32.16 KB
  Важную роль в развитии социальногуманитарных науках играет коммуникация ученых диалог между ними. Механизмом их преодоления является постоянный диалог ученых представителей разных школ в социальногуманитарных науках. Диалог является важнейшим видом коммуникации и представляет собой попеременный обмен высказываниями репликами между двумя или более ученымигуманитариями. Диалог может представлять собой определенную дискуссию беседу диспут и т.