Высокоуровневые методы информатики
Создание проекта с заголовком на основе синтаксиса языка Object Pascal, окно исходного кода модуля. Проектирование нового приложения, добавление компонентов. Настройка свойств полей в запросе. Открытие модуля, не связанного с формой, работа с классами.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 12.03.2013 |
Размер файла | 791,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
Размещено на http://www.allbest.ru
Федеральное Агентство по Образованию
Государственное Образовательное учреждение
Высшего профессионального образования
«Тихоокеанский Государственный университет».
КОНТРОЛЬНАЯ РАБОТА №1
по «Высокоуровневым методам информатики»
Хабаровск 2010
Содержание
Задание 1
Задание 2
Задание 3
Задание 4
Задание 5
Задание 1
Создайте пустой проект, задайте заголовок формы «Задание 1»
Откройте окно исходного кода модуля Unit1
С помощью дополнительной литературы и справочной системы изучите структуру модуля, назначение каждой строчки кода.
Через меню “View”, пункт «Units» или сочетание клавиш Ctrl+F12 откройте и изучите модуль Project1
Сохраните проект в отдельную папку «Задание 1»
Всю информацию о назначениях каждой строчки кода в обоих модулях запишите и сохраните в той же папке в файле «задание 1.doc»
Попробуйте запустить проект
С помощью любого файл-менеджера изучите структуру папки «Задание 1», разберитесь, какой файл за что отвечает.
Информацию о назначении файлов сохраните в том же файле «задание 1.doc»
Ход работы
Ознакомившись с описанием среды программирования и с основами синтаксиса языка Object Pascal, и изучив ход работы выполнила следующие действия
1.Создаём пустой проект с заголовком «задание 1»;
2. Открываем окно исходного кода модуля Unit1;
3. С помощью дополнительной литературы и справочной системы изучила структуру модуля, назначение каждой строчки кода;
4. Через меню “View”, пункт «Units открыла и изучила модуль Project1;
5.Сохранила проект в отдельную папку «Задание 1»;
6. Всю информацию о назначениях каждой строчки кода в обоих модулях записала и сохранила в той же папке в файле «задание 1.doc»
Структура модуля (записанная в файле «задание 1. Doc»)
unit ИмяМодуля;
interface // раздел интерфейса
{ Здесь находятся описания процедур и функций модуля, которые могут использоваться другими модулями. }
const // раздел объявления констант
{ Здесь находятся объявления глобальных констант модуля, которые могут использоваться процедурами и функциями модуля.}
type // раздел объявления типов
{ Здесь находятся объявления глобальных типов модуля,
которые могут использоваться процедурами и функциями модуля }
var // раздел объявления переменных
{ Здесь находятся объявления глобальных переменных модуля, которые могут использоваться процедурами и функциями модуля }
implementation // раздел реализации
{ Здесь находятся описания (текст) процедур и функций модуля }
end.
7.Запустила проект;
8. С помощью файл-менеджера изучила структуру папки «Задание 1»,
9.Информацию о назначении файлов сохранила в том же файле «задание 1.doc»
Назначение файлов
файл проекта (.dbr) это текстовый файл используется для хранения информации о формах и модулях. В нем содержатся операторы инициализации и запуска программы на выполнение.
файл модуля (.pas) соответствующий файл модуль для хранения кода.
файл формы (.dfm) - это двоичный файл, который создается для хранения информации о ваших формах и фреймах.
файл опций проекта (.dof) - в нем хранится установки опций проекта.
файл конфигурации проекта (.cfg) в нем хранятся установки проекта.
файл ресурсов (.res) содержит пиктограмму и прочие ресурсы.
файл группы файлов (.bpg) для создания групп файлов.
резервные копии (~dp,~df,~pa).
Задание 2
Создайте новое приложение, задайте заголовок формы «Задание 2»
С помощью панели элементов, добавьте на форму компоненты: Label (метка), Button, и два компонента LabeledEdit (редактируемое поле с меткой).
C помощью инспектора объектов поместите в метку название вашей группы крупным, наклонным красным шрифтом.
Текстом кнопки сделайте «Показать информацию», а подписями к редактируемым полям - «Ф. И.О.» и «Номер зачетки».
Запрограммируйте кнопку, чтобы по ее нажатию одно поле отображало вашу Фамилию И.О., а другое - номер вашей зачетной книжки.
Добавьте еще одну кнопку, назовите ее «Стереть», и сделайте, чтобы она после нажатия стирала содержимое обоих LabeledEdit
Сохраните проект в папке «Задание 2»
Ход работы
1.Создала новое приложение, задала форме заголовок «Задание 2»;
2.С помощью панели элементов добавила на форму компоненты: Label (метка), Button, и два компонента LabeledEdit;
3.C помощью инспектора объектов поместила в метку название группы крупным, наклонным красным шрифтом;
4.Текстом кнопки сделала «Показать информацию», а подписями к редактируемым полям - «Ф. И.О.» и «Номер зачетки».
5. Запрограммировала кнопку, чтобы по ее нажатию одно поле отображало Фамилию И.О., а другое - номер зачетной книжки, программный код выглядит следующим образом;
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text:='Федорова Светлана Евгеньевна';
edit2.Text:='090440680';
end;
6.Добавила еще одну кнопку, назвав ее «Стереть», и сделала, так чтобы она после нажатия стирала содержимое обоих LabeledEdit, следующим образом;
procedure TForm1.Button2Click(Sender: TObject);
begin
edit1.Text:='';
edit2.Text:='';
end;
end.
7.Сохранила проект в папке «Задание 2» в следующем виде;
Задание 3
Для выполнения этого и следующих заданий вам необходимо ознакомиться с типами данных в Delphi, а также глубже изучить Object Inspector
Создайте пустой проект, задайте заголовок формы «Задание 3»
Поместите на форму две полосы прокрутки: горизонтальную и вертикальную, а также редактируемое поле Edit
Задайте диапазоны изменения значений линеек от 0 до 1000 с мелким шагом 10, большим шагом 50
Сделайте так, чтобы во время работы приложения, обе линейки изменялись одновременно - меняете одну, аналогично меняется и вторая.
Сделайте, чтобы текущее значение линеек отображалось в редактируемом поле.
Сделайте так, чтобы значение линеек можно было устанавливать с помощью этого поля.
Добавьте на форму флажок Checkbox, назовите его «Запретить изменения»
Сделайте так, чтобы при включенном флажке изменение значения поля Edit напрямую было невозможно.
Сохраните проект в папке «Задание 3»
Подсказка: в пунктах 5 и 6 необходимо сделать преобразование типов.
Ход работы
Для выполнения этого и следующих заданий я ознакомилась с типами данных в Delphi, а также глубже изучила Object Inspector
Создала пустой проект, задала заголовок формы «Задание 3»
Поместила на форму две полосы прокрутки: горизонтальную и вертикальную, а также редактируемое поле Edit
Задала диапазоны изменения значений линеек от 0 до 1000 с мелким шагом 10, большим шагом 50
Сделала так, чтобы во время работы приложения, обе линейки изменялись одновременно - меняете одну, аналогично меняется и вторая.
Сделала, так чтобы текущее значение линеек отображалось в редактируемом поле.
Сделала так, чтобы значение линеек можно было устанавливать с помощью этого поля.
procedure TForm1.TrackBar2Change(Sender: TObject);
begin
TrackBar1.Position:=TrackBar2.Position;
edit1.Text:=inttostr(TrackBar1.Position);
end;
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
TrackBar2.Position:=TrackBar1.Position;
edit1.Text:=inttostr(TrackBar1.Position);
end;
procedure TForm1.Edit1Change(Sender: TObject);
begin
TrackBar1.Position:=strtoint(edit1.Text)
end;
Добавила на форму флажок Checkbox, назвала его «Запретить изменения»
Сделала так, чтобы при включенном флажке изменение значения поля Edit напрямую было невозможно.
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if checkbox1.Checked then
Edit1.Enabled:=false
else Edit1.Enabled:=true
end;
Сохранила проект в папке «Задание 3» в следующем виде;
Задание 4
Создайте пустой проект, задайте заголовок формы «Задание 4»
Поместите на форму следующие компоненты: поле Memo, два компонента MaskEdit (поле редактирования по маске), кнопку Button, компонент Radiogroup (группа радиокнопок).
Задайте радиогруппе текст «Выберите операцию», создайте внутри него две радиокнопки (Radiobutton) - «Среднее арифметическое» и «Среднее геометрическое». Кнопку назовите «посчитать»
Настройте свойства масок в полях редактирования, чтобы туда можно было вводить только двухзначные числа.
В окне кода запрограммируйте две функции: SrArifm и SrGeom, которые должны считать среднее арифметическое (половину от суммы) и среднее геометрическое (квадратный корень из произведения) двух чисел.
Создайте процедуру «Count», которая выполняет над числами, введенными в поля редактирования ту операцию, которая выбрана в Радиогруппе и помещает результат в поле Memo.
Запрограммируйте кнопку «Посчитать», чтобы она вызывала процедуру «Count» и затем очищала редактируемые поля.
Протестируйте вашу программу несколько раз с разными числами и функциями; отредактируйте программу так, чтобы результат в поле Memo не обновлялся каждый раз после нажатия «вычислить», а добавлялся на следующую строчку.
Сохраните проект в папке «задание 4»
Задание 4
1.Создала пустой проект, задала заголовок формы «Задание 4»
2.Поместила на форму следующие компоненты: поле Memo, два компонента MaskEdit (поле редактирования по маске), кнопку Button, компонент Radiogroup (группа радиокнопок).
3.Задала радиогруппе текст «Выберите операцию», создала внутри него две радиокнопки (Radiobutton) - «Среднее арифметическое» и «Среднее геометрическое». Кнопку назовала «посчитать»
4.Настроила свойства масок в полях редактирования, чтобы туда можно было вводить только двухзначные числа, следующим образом;
5.В окне кода запрограммировала две функции: SrArifm и SrGeom, которые должны считать среднее арифметическое (половину от суммы) и среднее геометрическое (квадратный корень из произведения) двух чисел, следующим образом;
function SRArifm(A,B:integer):real;
begin
SRArifm:=(A+B)/2
end;
function SRGeom(A,B:integer):real;
begin
SRGeom:=sqrt(A+B)
end;
6.Создала процедуру «Count», которая выполняет над числами, введенными в поля редактирования ту операцию, которая выбрана в Радиогруппе и помещает результат в поле Memo.
procedure TForm1.Count();
var
z1,z2:integer;
textt:string;
begin
z1:=strtoint(MaskEdit1.Text);
z2:=strtoint(MaskEdit2.Text);
case radiogroup1.itemindex of
0:textt:=floattostr(SRArifm(z1,z2));
1:textt:=floattostr(SRGeom(z1,z2));
end;
memo1.Lines.Add(textt);
end;
7.Запрограммируйте кнопку «Посчитать», чтобы она вызывала процедуру «Count» и затем очищала редактируемые поля.
procedure TForm1.Button1Click(Sender: TObject);
begin
Count;
end;
8.Протестировала программу несколько раз с разными числами и функциями; отредактировала программу так, чтобы результат в поле Memo не обновлялся каждый раз после нажатия «вычислить», а добавлялся на следующую строчку.
9.Сохранила проект в папке «задание 4», в следующем виде;
Задание 5
Открыть модуль, не связанный с формой и поместить в него три класса:
Класс Animal, который содержит в разделе public объявление конструктора Create и объявление метода-функции: Verse - звук, издаваемый животным. Тип результата возвращаемого функцией - string. Метод Verse объявить виртуальным и абстрактным. В разделе private класса определить переменную Kind: string.
Класс Dog объявить потомком класса Animal. В разделе public этого класса объявить конструктор и методы Verse и Eat. Метод Eat типа string объявить виртуальным (пища животного).
Класс Cat объявить потомком класса Animal. Раздел public класса содержит те же определения, что и соответствующий раздел класса Dog.
В реализациях конструктора каждого класса переменной Kind присваивается имя соответствующего животного, например для класса Animal: Kind := `An Animal'.
В реализациях методов Verse возвращается звук, издаваемый животным, например Verse := «Мяу».
В реализациях методов Eat возвращается название пищи, которой питается соответствующее животное.
Задать имя модуля и имя проекта, в который этот модуль будет включен. Добавить в проект форму, которой присвоить имя Animals, также задать имя модулю, связанному с формой. В форме расположить три кнопки опций (компонент RadioButton) с названиями Animal, Dog, Cat; кнопкой команды (компонент Button) с названием Kind и две крупных надписи (компонент Label) . Нажатию одной из кнопок опций будет соответствовать выбор животного. При нажатии кнопки команды надписи должны отобразить звук, издаваемый животным и его пищу. Определите в классе формы private-переменную MyAnimal. Запишите код для обработчика события OnCreate формы, где создается объект типа Dog, на который ссылается переменная MyAnimal. В обработчике события OnClick кнопки команды записать код, который будет помещать в надписи звук, издаваемый животным и его пищу. Для работы с методом Eat используйте операцию is для приведения типов.
Если вы все сделали правильно, при запуске приложения надписи будут отображать пищу и звук для Dog и Cat и приложение завершит работу по ошибке при выборе Animal.
Сохраните приложение в папке «Задание 5»
Ход работы
Открыла модуль, не связанный с формой и поместила в него три класса:
1.Класс Animal, который содержит в разделе public объявление конструктора Create и объявление метода-функции: Verse - звук, издаваемый животным. Тип результата возвращаемого функцией - string. Метод Verse объявила виртуальным и абстрактным. В разделе private класса определила переменную Kind: string.
type
TAnimal=class
private
kind:string;
public
constructor Create;
function Verse: string; virtual;abstract;
end;
2.Класс Dog объявила потомком класса Animal. В разделе public этого класса объявила конструктор и методы Verse и Eat. Метод Eat типа string объявила виртуальным (пища животного).
TDog=class(TAnimal)
public
constructor Create;
function Verse: string; override;
function Eat: string;virtual;
end;
3.Класс Cat объявила потомком класса Animal. Раздел public класса содержит те же определения, что и соответствующий раздел класса Dog.
TCat=class(TAnimal)
public
constructor Create;
function Verse: string; override;
function Eat: string;virtual;
end;
4.В реализациях конструктора каждого класса переменной Kind присваивается имя соответствующего животного.
constructor TAnimal.Create;
begin
kind:='An Animal';
end;
5.В реализациях методов Verse возвращается звук, издаваемый животным, например Verse := «Мяу».
function TDog.Verse;
begin
result:='гав';
end;
6.В реализациях методов Eat возвращается название пищи, которой питается соответствующее животное.
function TDog.eat;
begin
result:='кость';
end;
7.Задала имя модуля и имя проекта, в который этот модуль будет включен.
8.Добавила в проект форму, которой присвоила имя Animals, также задала имя модулю, связанному с формой.
9.В форме расположила три кнопки опций (компонент RadioButton) с названиями Animal, Dog, Cat; кнопкой команды (компонент Button) с названием Kind и две крупных надписи (компонент Label) . ПО нажатию одной из кнопок опций будет соответствовать выбор животного. При нажатии кнопки команды надписи должны отобразить звук, издаваемый животным и его пищу.
procedure TForm1.RadioGroup1Click(Sender: TObject);
begin
MyAnimal.Free;
Case RadioGroup1.ItemIndex of
0: MyAnimal :=TAnimal.Create;
1: Myanimal :=TDog.Create;
2: MyAnimal :=TCat.Create;
end;
10.Определила в классе формы private-переменную MyAnimal. Записала код для обработчика события OnCreate формы, где создается объект типа Dog, на который ссылается переменная MyAnimal.
procedure TForm1.FormCreate(Sender: TObject);
begin
MyAnimal := TDog.Create;
end
11.В обработчике события OnClick кнопки команды записать код, который будет помещать в надписи звук, издаваемый животным и его пищу. Для работы с методом Eat используйте операцию is для приведения типов.
procedure TForm1.Button1Click(Sender: TObject);
begin
label1.caption := MyAnimal.Verse;
if MyAnimal is TDog then Label2.Caption:=(TDog (MyAnimal)).Eat else
if MyAnimal is TCat then Label2.Caption:=(TCat (MyAnimal)).Eat else
Label2.Caption:='';
end;
12.Сохранила приложение в папке «Задание 5», в следующем виде
модуль приложение класс компонент
unit interface // раздел интерфейса
Размещено на www.allbest.
Подобные документы
Создание модели информационной системы оптовой базы с помощью средства ModelMaker. Диаграммы последовательности, диаграмма классов, создание предварительного модуля проекта на языке Object Pascal. Документирование информационной системы оптовой базы.
курсовая работа [516,4 K], добавлен 01.06.2016Элементы языка Object Pascal: идентификаторы, константы, переменные, выражения. Структура проекта Delphi. Операторы и метки. Типы данных языка OPascal. Статические и динамические массивы. Записи с вариантными полями. Совместимость и преобразование типов.
курс лекций [385,4 K], добавлен 18.02.2012Организация работы в среде визуального программирования Delphi. Настройка, конфигурация и главное окно формы. Модификация формы, свойств и событий. Пиктографические кнопки, палитра компонентов, окно инспектора объектов. Процесс построения приложения.
реферат [40,3 K], добавлен 23.01.2011Проектирование программного модуля в среде программирования Borland Delphi 7.0. Схемы алгоритмов решения задач по темам "Символьные переменные и строки", "Массивы", "Работа с файлами", "Создание анимации". Реализация программного модуля, код программы.
отчет по практике [961,6 K], добавлен 21.04.2012Создание блок-схемы алгоритма и реализующей его программы, снабженных пояснениями, для решения задач. Реализация программы в среде Delphi как проекта консольного приложения. Основные алгоритмические структуры, соответствующие операторы для их реализации.
контрольная работа [447,4 K], добавлен 08.10.2012Создание организационного модуля и группы в Active Directory Users and Computers. Добавление учетных записей пользователей в группу "EVM-82". Методы настройки удаленных соединений: с компьютером; сетевые подключения с помощью оптоволокна и через WI-FI.
лабораторная работа [5,2 M], добавлен 23.07.2012Free Pascal как свободная реализация языка Паскаль, совместимая с Borland Pascal и Object Pascal - Delphi, но при этом обладающая и некоторыми дополнительными возможностями. Основы алгоритмизации и программирования, создание визуальных приложений.
учебное пособие [4,2 M], добавлен 13.12.2011Обоснование языка программирования Object Pascal и среды разработки Delphi. Создание интерфейса пользователя. Проектирование структуры и описание компонентов, использованных при разработке программного продукта. Составление инструкции пользователя.
курсовая работа [888,7 K], добавлен 20.05.2015Разработка структурной диаграммы программного модуля. Представление схемы для основных расчетов выбранного приложения для создания прямоугольной матрицы. Особенности создания пользовательского интерфейса. Тестирование и отладка спроектированного модуля.
курсовая работа [648,4 K], добавлен 27.05.2015Основные понятия и структура обработчика на языке Pascal. Элективные курсы по информатике в системе профильного обучения. Элективный курс "Программирование в среде Delphi". Методические материалы по изучению программирования на языке Object Pascal.
методичка [55,4 K], добавлен 08.12.2010