- •Лабораторный практикум по информатике
- •Часть 2
- •Содержание
- •Введение
- •Методические рекомендации по подготовке к лабораторным работам
- •Варианты задания
- •Технология выполнения работы
- •Разработка приложения
- •Создание интерфейса приложения
- •Определение функциональности приложения.
- •Конструирование формы
- •Множественный выбор
- •Конструирование формы
- •Варианты заданий
- •Технология выполнения работы
- •Варианты заданий
- •Технология выполнения работы
- •Варианты заданий
- •Варианты заданий
- •Технология выполнения работы
- •Содержание отчета
- •Вопросы для защиты работы
- •Варианты заданий
- •Технология выполнения работы
- •Варианты заданий
- •Технология выполнения работы
- •Перечень обеспечивающих средств
- •Общие теоретические сведения
- •Составление линейных алгоритмов
- •Варианты заданий
- •Технология выполнения работы
- •Содержание отчета
- •Вопросы для защиты работы
- •Цель работы
- •Задачи лабораторной работы
- •Перечень обеспечивающих средств
- •Общие теоретические сведения
- •Варианты заданий
- •Технология выполнения работы
- •Содержание отчета
- •Вопросы для защиты работы
- •Цель работы
- •Задачи лабораторной работы
- •Перечень обеспечивающих средств
- •Общие теоретические сведения
- •Варианты заданий
- •Технология выполнения работы
- •Содержание отчета
- •Вопросы для защиты работы
- •Цель работы
- •Задачи лабораторной работы
- •Перечень обеспечивающих средств
- •Общие теоретические сведения
- •Варианты заданий
- •Технология выполнения работы
- •Содержание отчета
- •Вопросы для защиты работы
- •Цель работы
- •Технология выполнения работы
- •Изучение управляющего элемента CheckBox
- •Изучение управляющего элемента RadioGroup
- •Технология выполнения работы
- •Изучение управляющего элемента ComboBox
- •Технология выполнения работы
- •Вопросы для защиты работы
- •Цель работы
- •Задачи лабораторной работы
- •Перечень обеспечивающих средств
- •Общие теоретические сведения
- •Изучение управляющего элемента StringGrid
- •Технология выполнения работы
- •Вопросы для защиты работы
- •Метод сортировки выбором
- •Метод сортировки включением
- •Пример использования генератора случайных чисел
- •Пример заполнения массива и вывода его в ListBox1
- •Измерение времени выполнения алгоритма
- •Технология выполнения работы
- •Вопросы для защиты работы
- •Поиск элемента массива на основе линейного просмотра
- •Метод двоичного поиска
- •Технология выполнения работы
- •Вопросы для защиты работы
- •Варианты задания
- •Технология выполнения работы
- •Задание
- •Варианты заданий
- •Технология выполнения работы
- •Перечень обеспечивающих средств
- •Общие теоретические сведения
- •Варианты задания
- •Технология выполнения работы
- •Обращение к программе-функции Mathcad
- •Задание
- •Варианты задания
- •Технология выполнения работы
- •Содержание отчета
- •Вопросы для защиты работы
- •Библиографический список
Технология выполнения работы
В данной работе сначала создается форма приложения, а затем процедура обработки процесса.
Содержание отчета
Задание и цель работы.
Описание формы.
Текст процедуры обработки процесса.
Вопросы для защиты работы
Назначение Инспектора объектов (ObjectInspector).
Что такое интерфейс приложения?
Для какой цели используется палитра компонентов?
Что такое функциональность приложения?
Какой язык программирования используется при работе с Delphi?
Лабораторная работа № 3 Работа с массивами в среде программирования Borland Delphi
Время выполнения – 4 часа.
Цель работы
Научиться разрабатывать программы, использующие данные, организованные в виде массивов.
Задачи лабораторной работы
После выполнения работы студент должен:
знать основы работы с массивами данных в среде Delphi;
уметь самостоятельно написать программу, работающую с массивами данных.
Перечень обеспечивающих средств
Для обеспечения выполнения работы необходимо иметь компьютер со следующим математическим обеспечением: операционная система Windows2003 и выше и система визуального программированияDelphi на основе 6-ой версии.
Общие теоретические сведения
Для работы с массивами удобно использовать компоненты StringGrid и Memo.
Основные свойства StringGrid:
Name – имя компонента;
Colcount – количество столбцов;
RowCount – количество строк;
Cells – ячейка таблицы;
FixedCols– количество зафиксированных столбцов;
Options.goEditing – признак допустимости редактирования содержимого ячеек (true,false);
Options.goTab– разрешает (true) или запрещает (false) использование клавишиTABдля перемещения курсора в следующую ячейку таблицы;
Options.goAlways– признак нахождения компонента в режиме редактирования;
DefaultColWidth – ширина колонок таблицы;
DefaultRowHeight– высота строк таблицы;
GridLineWidth– расстояние от левой границы поля таблицы до левой границы формы;
Left– расстояние от верхней границы поля таблицы до верхней;
Top– границы формы;
Height– высота поля таблицы;
Width– ширина поля таблицы;
Font– шрифт для отображения содержимого таблицы;
ParentFont– признак наследования характеристик шрифта формы.
Пример.
Задать массив из 5-ти элементов. Найти произведение элементов массива, превышающих значение 1-го элемента. Переставить местами 1-ый и последний элементы массива. Вывести элементы массива в строку компоненты Memo.
Для выполнения задания необходимо выполнить следующие действия.
Поместить на форму компоненты: панели Panel1 (в верхней части экрана для ввода информации) иPanel2 (в нижней части для вывода информации) (страница Standard).
Для панелей задать свойство Caption – пустое (очистить место для вывода результата).
Разместить метки для панелей Label1иLabel2 (страницаStandard).
Задать Captionдля следующих объектов:
Label1– ввод массива (панельPanel1);
Label2– результаты ( вывод результата в панельPanel2)
Разместить кнопку Button1(страницаStandard).
Установить для кнопки следующее свойство Caption – Вычислить.
Добавить компонент StringGrid1и задать следующие свойства:
ColCount– 5 (количество столбцов);
FixedCols– 0 (количество фиксированных столбцов);
RowCount– 1 (количество строк);
DefaultRowHeight– 24 (высота строки);
DefaultColWidth – 64 (ширина столбца).
Задать опции для редактирования информации (Options):
Options.go.Editing – true;
Options.goTabs – true;
Options.go.Always –true.
Для вывода массива на экран будем использовать компоненту Memo1(Многострочный редактор).
Управлять вычислением будет кнопка Button1.
Полученная форма будет иметь вид (рис. 1):
Рисунок 1 – Форма с размещенными объектами
Для кнопки Button1необходимо создать обработчик событияOnClick(нажатие кнопки).
Двойной щелчок на этой кнопке приводит к появлению на экране окна кода программы.
Курсор устанавливается в процедуру-обработчика события, которая должна иметь следующий вид:
procedure Tform1.Button1Click(Sender:Tobject);
Var
a:array[1..5] of integer; // описание массива а
pr,I,с:integer; // pr – переменная для вычисления произведения элементов массива, i – индекс элементов массива, с-переменная для перестановки местами 1-го и 5-го элементов массива
stroka:string;
begin
// ввод массива
// считаем, если ячейка пустая, то соответствующий элемент массива равен 0
for i:=1 to 5 do
if Length (StringGrid1.Cells[i-1,0])<>0
then a[I]:= StrToInt(StringGrid1.Cells[i-1,0])
else a[I]:=0; // проверка наличия значения элемента массива в ячейке компоненты StringGrid1
// Обработка массива
Pr:=1;
for i:=1 to 5 do
if a[i]>a[1] then pr:=pr*a[i];
// вычисление произведения элементов массива
// вывод произведения элементов массива в заголовок панели Panel2
Panel2.Caption:=’Произведение элементов=’ +IntToStr(pr) ;
// перестановка местами 1-го и 5-го элементов массива
c:=a[1]; a[1]:=a[5]; a[5]:=c;
// вывод массива в строку
Stroka:=’ ’;
// в строку помещаем пробелы
Memo1.Lines.Add(‘Массив после обработки’);
for i:=1 to 5 do
stroka:=stroka+ IntToStr(a[i]);
Memo1.Lines.Add(stroka);
end;
При нажатии клавиш Ctrl+F9выполняется компиляция кода программы.
Если компиляция выполнена успешно (ошибок нет) то можно выполнить Project1с помощью клавишиF9. Преобразование значений элементов массива из формы выполняется в соответствии с описанием в типInteger(StrToInt), а результат – произведение элементов массива при выводе в форму преобразуется в типString(IntToStr).