Реклама
 


  •  

    ЛЕКЦИЯ 2. КАК CОСТАВЛЯЮТСЯ И СЧИТАЮТСЯ ПРОГРАММЫ В СИСТЕМЕ DELPHI

     

    b:=0; c:=1; f:=5;

    a:=b+f;

    b:=0; c:=1; f:=5;

    a:=b+f;

    a:=a+b;

    Здесь := означает присвоить, a, b, c, f – имена ячеек (переменных), каждый оператор в Я. Паскаль заканчивается точкой с запятой.

    Во всех языках программирования имеется набор операторов, реализующих следующие основные действия

    Ввод данных с внешнего носителя

    Линейный вычислительный процесс

    Разветвление алгоритма в зависимости от условия

    Циклы, т. е. организация повторений некоторой последовательности операторов

    Вывод результатов на внешний носитель

    Обмен информацией между подпрограммами (описание формальных параметров)

    2.2. Общая характеристика языка Паскаль

    Паскаль – язык программирования высокого уровня, позволяющий значительно облегчить подготовку программ. Его синтаксис максимально приближен к обычному математическому языку.

    В концепции Паскаля заложены следующие основные понятия:

    а) принцип структурирования, который позволяет автоматизировать проверку правильности программ. Грубо говоря, это значит, что возможности языка позволяют записать алгоритм любой сложности без использования меток и операторов GOTO. Оператор GOTO в Паскале оставлен для программистов низкого уровня;

    б) принцип надежности. В отличие от всех других языков, в Паскале все переменные, которые используются, должны быть описаны в заголовке программы, т. е. указаны их типы, границы изменения;

    в) простота реализации транслятора, обеспечивает его адаптацию практически на любом типе компьютера и высокую скорость компиляции.

    г) развитая структура данных делает этот язык универсальным языком многоцелевого назначения, позволяющим реализовать как обычные программы, так и современные технологии объектно-ориентированного программирования.

    В процессе совершенствования вычислительной техники Я. Паскаль прошел ряд этапов в своем развитии. Начиная с простейшего языка обучения, имелось очень большое число версий наиболее известные из которых: Microsof Pascal Compiler, Quick Pascal, Pascal-2, Professional Pascal, USCD Pascal, одна из самых популярных версия - Pascal-5.5, Pascal-7, Object Pascal.

    В 1996 году появилась современная высокопроизводительная система визуального программирования Delphi, на основе языка Object Pascal. По своим возможностям она не уступает системе VisualSi++ (которая появилась немного позже Delphi), а по удобству языка и простоте обучения Delphi значительно привлекательнее.

    2.3. Основы программирования в системе Delphi

    Среда DELPHI визуально реализуется в виде нескольких одновременно раскрытых на экране монитора окон. Количество, расположение, размер и вид окон может меняться программистом в зависимости от его текущих нужд, что значительно повышает производительность работы. При запуске DELPHI вы можете увидеть на экране картинку, подобную представленной на рис. 1.1.

    Главное окно всегда присутствует на экране и предназначено для управления процессом создания программы. Основное меню содержит все необходимые средства для управления проектом. Пиктограммы облегчают доступ к наиболее часто применяемым командам основного меню. Через меню компонентов осуществляется доступ к набору стандартных сервисных программ среды DELPHI, которые описывают некоторый визуальный элемент (компонент), помещенный программистом в окно формы. Каждый компонент имеет определенный набор свойств (параметров), которые программист может задавать. Например, цвет, заголовок окна, надпись на кнопке, размер и тип шрифта и др.

    Окно инспекторов объектов (вызывается c помощью клавиши F11) предназначено для изменения свойств выбранных компонентов и состоит из двух страниц. Страница Properties (Свойства) предназначена для изменения необходимых свойств компонента. Страница Events (События) – для определения реакции компонента на то или иное событие (например, нажатие определенной клавиши или щелчок “мышью ” по кнопке).

    Окно формы представляет собой проект Windows-окна программы. В это окно в процессе написания программы помещаются необходимые компоненты. Причем при выполнении программы помещенные компоненты будут иметь тот же вид, что и на этапе проектирования.

    Окно текста программы предназначено для просмотра, написания и редактирования текста программы. В системе DELPHI используется язык программирования Object Pascal. При первоначальной загрузке в окне текста программы находится исходный текст программного модуля (Unit), содержащий минимальный набор операторов для нормального функционирования пустой формы в качестве Windows-окна. При помещении некоторого компонента в окно формы текст модуля автоматически дополняется описанием необходимых для его работы библиотек стандартных программ (раздел uses) и типов переменных (раздел type).

    Переключение между окном формы и окном текста программы осуществляется с помощью клавиши F12.

    Программа в DELPHI состоит из файла проекта (файл с расширением. dpr), одного или нескольких файлов исходного текста (с расширением. pas), файлов с описанием окон формы (с расширением. dfm).

    В файле проекта находится информация о модулях, составляющих

    данный проект. Файл проекта автоматически создается и редактируется средой DELPHI и не предназначен для редактирования.

    Файл исходного текста – программный модуль (Unit) предназначен для размещения текстов программ. Mодуль имеет следующую структуру:

    unit Unit1;

    interface

    // Раздел объявлений

    procedure …

    implementation

    procedure …

    begin

    end.

    // Раздел реализации

    begin

    // Раздел инициализации

    end.

    В этом файле программист размещает текст программы, написанный на языке PASCAL.

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

    Программа в среде DELPHI составляется как описание алгоритмов, которые необходимо выполнить, если возникает определенное событие связанное с формой (например щелчок “мыши” – событие называемое OnClick, создание объекта – OnCreate). Для каждого обрабатываемого в форме события, с помощью страницы Events инспектора объектов (или двойного щелчка мыши), в разделе реализации организуется процедура (Procedure), между ключевыми словами begin и end которой, программист записывает на языке Object Pascal требуемый алгоритм.

    Детальное описание действий при создании Windows - окно программы, написании и отладке текстов процедур, а также ее выполнении содержится в лабораторном практикуме [1].

    При компиляции программы DELPHI создает файл с расширением. dcu, содержащий в себе результат перевода в машинные коды содержимого файлов с расширением. pas и. dfm. Компоновщик преобразует файлы с расширением. dcu в единый загружаемый файл с расширением. exe. В файлах, имеющих расширение .

    df.

    dp.

    pa хранятся резервные копии файлов с образом формы, проекта, и исходного текста соответственно.

    2.4. Наша первая программа реализует линейный алгоритм

    Наиболее часто в практике программирования требуется организовать расчет некоторого арифметического выражения при различных исходных данных. Например, такого

    , при x>0 - действительное, m - целое.

    Разработка алгоритма обычно начинается с написания схемы. Продумывается оптимальная стратегия вычислений, при которой, например, отсутствуют повторения. При написании алгоритма рекомендуется также переменным присваивать по возможности те же имена, которые фигурируют в заданном арифметическом выражении. Для того, чтобы не было "длинных" операторов исходное выражение полезно разбить на ряд более простых. В нашем случае предлагается схема вычислений, представленная на рис. 2.2. Она содержит ввод и вывод исходных данных, линейный вычислительный процесс, вывод полученного результата. Заметим, что выражение вычисляется только один раз. Введя переменные a, b, c мы разбили сложное выражение на ряд простых.

    При разработке программы, реализующей этот алгоритм, кроме уже известного нам оператора присваивания необходимо знать, как записать операторы ввода и вывода данных. В языке Паскаль эти операторы выглядят таким образом:

    Read(Lr, X, );

    Writeln(LW')'X=',X:6:2', m='m':y: )

    Writeln(LW'Z=',Z:8:3);

    Здесь Lr - логическое имя файла, на котором помещены исходные значения x, y, LW - логическое имя файла, на котором помещается результат. Набор символов, заключенных в кавычки (например, ' y='), называется строковой константой. При выводе строковая константа записывается в файл без изменений. Запись Z:8:3 означает, что, например, действительное число - 0.254 102, содержащееся в ячейке Z будет преобразовано и выведено в формате - 25.400, т. е. 8 позиций будет отведено под все числа, а 4 позиции под его дробную часть. Таким образом, результат выполнения последнего оператора будет Z= - 25.400. Заметим, что при такой организации ввода, исходные данные обычно предварительно помещают в некоторый текстовый файл, представляющий последовательность из строк и символов. Результат также выводят в текстовый файл. Такие файлы можно готовить, обрабатывать и печатать с помощью различных текстовых

    редакторов, в частности в окне текста Delphi, используя меню File.

    В Delphi чаще всего ввод (вывод) небольшого количества данных производят из так называемых окон однострочных редакторов (Tedit) или табличных строчных редакторов (TstringGrid).

    Вывод большого числа данных обычно осуществляется в окно многострочного редактора (TMemo). Окна этих редакторов и пояснения к ним размещаются на Window - окно программы по усмотрению программиста. В окна строчных редакторов во время активизации программы может помещаться любой набор, в частности запись чисел, которые необходимо ввести. Каждому окну редакторов Tedit и TstringGrid, помещенному на форму в программе в разделе type вводится ячейка памяти типа string, в которой содержится строка символов, отражаемая в окне.

    Для того, чтобы, например, в окне редактора Edit1 было помещено число 28.64 в программе достаточно написать Edit1.Text:='28.64'. И обратно, если во время активности программы в окно Edit1 с помощью клавиатуры, будет помещено число 3.14, то оно окажется в ячейке Edit1.Text (вместо предыдущего 28.64).

    Для реализации нашей программы на форму поместим два окна Edit1 (под X), Edit2 (под m). Ввиду того, что ввод данных происходит в виде строки, а переменные х, m представляют числа необходимо воспользоваться функциями перевода строковой записи числа в действительное или целое его представление:

    X:=StrToFloat(Edit1.Text);

    M:=StrToInt(Edit2.Text);

    Для вывода результатов поместим на форму окно многострочного редактора memo1. Окно многострочного редактора (компонент ТMEMO) предназначено только для вывода и представляет собой отображение в окне естественной последовательности строк. Для того, чтобы отобразить новую строку, ее необходимо добавить в окно с помощью оператора Memo1.Lines. Add(' строка'). Если нужно вывести содержимое действительных или целых переменных их необходимо предварительно преобразовать в строковое представление. Для этого используются функции

    FloatToStrF(X, fffixed,6,2);

    IntToStr(m);

    Теперь мы готовы написать нашу первую программу. Для этого поместим на форму "кнопку", описываемую компонентом Button1 и сделаем на ней двойной щелчок мышью. После этого в открывшемся окне текстов наберем следующую программу:

    ProcedureTForm1.Button1Click(Sender:Tobject);//Вставляется автоматически

    Var

    X, z, a, b, c:extended;//описание типов и всех используемых переменных

    M:integer;

    Begin Memo1.Lines. Add('результаты Иванова И. И.');

    X:=StrToFloat(Edit1.Text);

    ' m='+IntTostr(m));

    a:=sgrt(sgr(x)

    b:=sgr(sin(x)/cos(x));

    c:=exp((m+1)*ln(x));

    z:=b/a+c a

    Memo1.Lines. Add('полученный результат')

    Memo1.Lines. Add('z='+FloatTostrF(z, fffixed,8,3))

    End:

    После набора программы ее необходимо записать в свой каталог. Для организации нового каталога можно воспользоваться одной из программ для работы с файлами. Например, войдем в программу Far, нажмем клавишу F7 и в появившемся окне наберем имя каталога "LAB1N05" (Лаб.№1 вариант 5). В меню File Delphi выберем "SaveProjectAs". После открытия своего каталога нажмем "сохранить" предлагаемые файлы (Project и Unit1).

    После сохранения сделаем запуск программы, для чего в меню "Run" выберем команду "Run".

    Если все сделано верно, после компиляции на экране высветится Window - окно вашей первой программы, готовой к выполнению расчетов. В окнах X и m наберите исходные данные после чего щелкните мышью на кнопке. В окне Memo появятся результаты расчета вашей программы.

    При обнаружении ошибок, в процессе счета, переведите программу из режима в режим редактирования, для чего наберите "Run Reset" в меню "Run". Исправьте ошибки, запишите исправленный вариант нажав "Save" в меню "File" и запустите программу снова.

     



  • На главную