Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
готовая шпора.docx
Скачиваний:
6
Добавлен:
26.04.2019
Размер:
356.44 Кб
Скачать

8. Как запустить программу? Как работать с программой? Как остановить про­грамму для её редактирования?

Запустить программу можно выбрав в главном меню пункт Run – Run, или нажав клавишу F9, или щелкнув мышью по пиктограмме . При нажатии кнопки <F9> выполняются три этапа: компиляция, компоновка, исполнение программы. Т.е, происходит компиляция и, если нет ошибок, компоновка программы и создание единого загружаемого файла с расширением exe. На экране появляется активная форма программы.

Работа с программой происходит следующим образом(как пример). Нажмите (щелкните мышью) кнопку “Выполнить”. В окне Memo1 появляется результат. Измените исходные значения x, y, z в окнах Edit и снова нажмите кнопку ”Выполнить” - появится новые результаты.

Программист не должен изменять те фрагменты проекта, которые создаются автоматически. Ими являются файл проекта и та часть модуля формы, которая лежит выше слова implementation, например заголовки Обработчиков.

Удаление компонентов, ставших ненужными, выполняется просто, если для связанных с ними событий не были построены Обработчики. В ненужном Обработчике нужно удалить описания и операторы, оставив заголовок begin и end (такой вид имела заготовка). При очередной компиляции исчезнет и Обработчик, и другие следы выбора события. Если это Обработчик нажатия кнопки, ставшей ненужной, теперь можно удалить и кнопку, выбрав ее и нажав Delete.

Имя проекта Project1, предлагаемое по умолчанию, лучше сразу же заменить именем, как-то связанным с назначением проекта.

Так же необходимо заменять именами шаблонные имена модулей Unit1, Unit2 и т.д. При наполнении формы компонентами и расширении текста модуля рекомендуется сохранение проект с помощью команды File/Save. Размещайте все файлы проекта в одной папке.

Завершить работу программы можно: 1)или нажав кнопку на форме 2)или перейти во вкладку гл.меню- Run – ProgramReset. Этот способ выхода из программы обычно используют в случае ее зацикливания. 3)Создать кнопку(BitBtn)->в Object Inspector Kind -bkClose;

9. Какие файлы содержит программа, их структура? Как организовать запись программы в отдельный каталог? Как создать новый каталог?

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

Создаваемое в Delphi приложение состоит из набора файлов:

-программный модуль формы – это отдельный файл, который имеет расширение .pas. Число этих файлов равны числу форм проекта. В этом файле хранится программа: объявление переменных, типов, а также код обработчиков. ~pas -хранится резервная копия файлов с образом исходного текста программы;

-файла формы .dfm- автоматически создается описание формы(список свойств), по мере наполнения ее компонентами. Число этих файлов равны числу форм проекта. ~.dfm- хранится резервная копия файлов с образом формы.

-чтобы среда Delphi знала, какие файлы относятся к данному приложению, автоматически создается еще один единственный файл, содержащий операторы создания формы и запуска проекта на выполнение, называемый файлом проекта с расширением .dpr. Связывает вместе все файлы проекта, из которых состоит приложение. ~.dpr -хранится резервная копия файлов с образом проекта.

-файл ресурсов с расширением имени .res. Cодержит все необходимые для проекта ресурсы, такие как: графические изображения, курсоры мыши или строки;

-файл опций расширением имени .dof, где сохраняются заданные программистом параметры компиляции и компоновки проекта;

-файл настроек расширением имени .dsk, где размещены настройки визуальной среды, используемые с данным проектом.

-.dsk-файл содержит Desktop-настройки проекта. В этом текстовом файле хранится информация о том какие окна открыты и в каких позициях они расположены. Этот файл позволяет восстановить внешний вид рабочей среды проекта.

-.cfg-файл содержит установки конфигурации проекта. Этот файл используется компилятором при трансляции и имеет такое же имя, как и файл проекта.

-.exe- исполняемый файл, это автономный исполняемый файл, для которого больше ничего не требуется.

Закрытие главной формы автоматически прекращает сеанс работы проекта.

Перенос проекта в другую папку или на другую ЭВМ осуществляется двумя способами. Первый способ. Вне среды Delphi копируются в другую папку или на внешний носитель все файлы с расширениями имен .pas, .dfm, .dpr, .res. Второй способ. Применяется в среде Delphi с помощью команды меню View/Units в Редактор вызывают файл проекта и те .pas-файлы, которые не были вызваны раньше. В окне Редактора появятся закладки с именами всех .pas-файлов. Поочередно используя закладки, файлы один за другим переводят на передний план и для каждого выполняют команду меню File/SaveAs. В последнюю очередь вызывают и копируют файл проекта (.dpr-файл).

Функция CreateDir создаёт папку в текущей директории.

10. Общая характеристика языка Pascal. Что такое данные и их типы? Характе­ристика основных базовых типов и допустимые операции с ними. Оператор присваивания и когда возникает ошибка при его использовании?

Язык Паскаль относится к процедурно-ориентированным языкам высокого уровня. Разработан американским ученым Никласом Виртом в 1971г. в качестве языка для обучения программированию.

ObjectPascal унаследовал от базового языка BorlandPascal все его особенности и достоинства. Достоинства языка Паскаль:1) относительная простота (т.к. разрабатывался с целью обучения программированию);2) идеология языка Паскаль близка к современным методикам и технологиям программирования, в частности, к структурному программированию и нисходящему проектированию (метод пошаговой детализации) программ. Паскаль может использоваться для записи программы на различных уровнях ее детализации, не прибегая к помощи схем алгоритмов;3) гибкие возможности в отношении используемых структур данных;4) высокая эффективность программ;5) наличие средств повышения надежности программ, включающих контроль правильности использования данных различных типов и программных элементов на этапах трансляции, редактирования и выполнения.

В связи с этим язык Паскаль в настоящее время находит самое широкое распространение для решения большого круга разнообразных практических и научных задач.

Грамматическое описание любого языка программирования включает в себя: -алфавит – набор основных символов языка, используемых при записи текста программы; -синтаксис – правила построения фраз языка;- семантику – смысловое значение фраз языка.

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

Так же, как и в BorlandPascal, в Delphi все используемые типы данных можно разделить на две основные группы: 1)Простые: *Порядковые; *Вещественные; *Дата-время.

К простым порядковым типам относятся стандартные: * Целые типы: Byte, ShortInt, SmallInt, Word, Integer, Cardinal, LongInt, В переменных целых типов информация представляется в виде целых чисел, т.е. чисел не имеющих дробной части.; *Логические типы(булевы): Boolean, ByteBool, WordBool и LongBool. Задают объем переменных в зависимости от типа микропроцессора и операционной среды таким образом, чтобы достигалась максимальная эффективность; *Символьные типы: Char, AnsiChar(Однобайтовые символы, упорядоченные в соответствии с расширенным набором символов ANSI), WideChar(Символы объемом в слово, упорядоченные в соответствии с международным набором символов UNICODE. Первые 256 символов совпадают с символами ANSI);*Типы с плавающей точкой(действительные типы): Real/Double, Real48, Single, Extended, Comp, Currency. В переменных действительных типов содержатся числа, состоящие из целой и дробной частей;*Строковый тип: ShortString, LongString, WideString. Логический строковый тип именуется просто String. Переменные типов AnsiString и WideString - это динамически распределяемые массивы символов, максимальная длина которых ограничивается только наличием памяти. Разница между ними состоит в том, что в AnsiString знаки записываются в формате char, а в WideString- в формате WideChar. Обычно вполне достаточно одного типа AnsiString, однако при работе с международными наборами символов, такими как UNICODE, удобнее использовать WideString.Для процесса обучения достаточно использования Integer для хранения целочисленных значений и Real для вещественных значений. Для символьных данных базовым является тип Char. На его основе созданы два дополнительных типа - AnsiChar и WideChar для использования двух кодировок символов ANSI и Unicode.

К простым порядковым типам относятся пользовательские: *Перечисляемые- это один из типов, определяемых программистом, который задается перечислением тех значений, которые он может получать. Каждое значение именуется идентификатором и располагается в списке, в круглых скобках; *Тип-диапазон (или интервальный тип). Это один из типов данных, определяемых программистом.

Тип дата-время определяется идентификатором TDateTime и предназначен для хранения даты и времени. Тип "дата-время" занимает 8 байт и представляет собой вещественное число с фиксированной дробной частью: в целой части числа хранится дата, в дробной - время. Над данными этого типа определены те же операции, что и над вещественными числами, а в выражениях этого типа могут участвовать константы и переменные целого и вещественного типов. Существуют стандартные процедуры и функции по работе с данными дата-время. Вот некоторые из них:

Date - возвращает текущую дату; DateToStr (d:TDateTime) - преобразует дату в строку символов;

DateTimeToStr(d:TDateTime) - преобразует дату и время в строку символов; Time - возвращает текущее время; TimeToStr(T:TDateTime) - преобразует время в строку.

2)Структурированные: *Строки, переменная строкового типа должна быть объявлена в разделе описания переменных. В тексте программы последовательность символов, являющаяся строкой, заключается в кавычки; *Массив- упорядоченная индексированная совокупность однотипных элементов, имеющих общее имя. Таким образом, каждый элемент массива однозначно определяется именем массива и индексом (номером этого элемента в массиве); *Файл представляет собой именованную последовательность однотипных элементов, размещенных на внешнем устройстве; *Записи; *Указатели; *Классы.

11. Понятие составного оператора. Операторы перехода if, case. Как они запи­сываются и показываются на схеме? Булевские выражения и их использова­ние в операторе if. Компонент TradioGroup, его использование.

Составной оператор — конструкция языка программирования, состоящая из нескольких команд (операторов) языка программирования, но участвующая в программе в качестве единого оператора. Понятие составного оператора появилось в языке программирования Алгол(58-60гг). Введённые в этом языке структурные операторы (ветвление, цикл) были организованы т.о, что в них могла использоваться только одна команда языка. Чтобы не ограничивать программиста, в язык было введено понятие составного оператора- любой набор операторов, размещённый между ключевыми словами begin и end, становился одной командой (оператором) и мог использоваться в любом месте программы, где следует использовать один оператор.

Понятие составного оператора было унаследовано языком Паскаль и множеством других языков программирования, основанных на Алголе. В Паскале условный оператор if, циклы while и for требуют в качестве ветвей и тела один оператор, поэтому при необходимости разместить в ветвях условного оператора или теле цикла несколько команд используются составные операторы

Условные операторы обеспечивают выполнение или невыполнение некоторого оператора, группы операторов или блока в зависимости от заданных условий. Pascal допускает использование двух условных операторов: if и case.

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

1) if< условие >then< оператор1>else< оператор2 >; 2) if< условие >then< оператор >;

Здесь ключевые слова if, then, else означают соответственно "если", "то", "иначе".

Например, если bl : boolean, x, y, u : integer, то фрагмент программы с оператором if может быть таким:

bl:=x>y;

if bl then u:=y-x

else u:=x-y;

Условие(if) - это выражение булевского типа. Оно может быть: простым или сложным. Сложные условия образуются с помощью логических операций and, or, not. При записи условий могут использоваться все возможные операции отношения. Результат выражения всегда имеет булевский тип. Простое условие, если значение выражения истинно, выполняется:

< оператор1>, если ложно - < оператор2 >.

Один оператор if может входить в состав другого оператора if. В таком случае говорят о вложенности операторов:

if< условие >then;

if< условие >then< оператор >

else< оператор >;

При вложенности операторов каждое else соответствует тому then, которое непосредственно ему предшествует. Конструкций со степенью вложенности более 2-3 лучше избегать из-за сложности их анализа при отладке программ.

Оператор выбора case является обобщением оператора if и позволяет сделать выбор из произвольного числа имеющихся вариантов. Он состоит из выражения, называемого селектором, и списка параметров, каждому из которых предшествует список констант выбора (список может состоять и из одной константы). Как и в операторе if, здесь может присутствовать слово else, имеющее тот же смысл.

Оператор case работает следующим образом. Сначала вычисляется значение выражения-селектора, затем обеспечивается реализация того оператора, константа выбора которого равна текущему значению селектора. Если ни одна из констант не равна текущему значению селектора, выполняется оператор, стоящий за словом else. Если слово else отсутствует, активизируется оператор, находящийся за словом end, т.е. первый оператор за границей case.

Формат:

case< выражение-селектор >of

< список1>: < оператор1; >

< список2>: < оператор2; >

< список n >: < оператор n >

else< оператор >

end;

Например, если in: integer, то после выполнения:

case in of

0: u:=x+y;

1, 5: u:=x-y;

2, 4, 6: u:=x*y;

else u=0;

end;

в соответствии со значением in вычисляется u. Если in=0, то u=x+y, если in=1 или 5, то u=x-y и тд.

При создании программ в Delphi для организации разветвлений часто используются компоненты в виде кнопок-переключателей. TradioGroup один из них. Состояние такой кнопки (включено - выключено) визуально отражается на форме. Данный компонент организует группу кнопок - зависимых переключателей. При нажатии одной из кнопок группы все остальные кнопки отключаются. В программу передается номер включенной кнопки (0,1,2,..), который анализируется с помощью оператора case.

TradioGroup располагается на странице Standard палитры компонентов.