Совместная работа студента с преподавателем - 25 мин

Тема №23. Основы программирования в среде Delphi

Цель:Знакомство со структурными типами данных: массивами, записями, строками. Изучить компонент StringGrid и его основные свойства и методы.

Задачи обучения: Формирование умений и навыков работы с интегрированной средой Delphi 7, с панелями библиотеки визуальных компонентов, с компонентом StringGrid.

Организационная часть - 5 мин

Перекличка студентов и выяснение причин отсутствия студентов.

Количество формируемых компетенций:знания, практические навыки.

Основные вопросы темы: - 45 мин

1. Структурные типы данных: массивы, записи, строки.

2. Компонент StringGrid, его основные свойства (определение данных в фиксированной строке и столбце, использование данных из ячейки – cells).

3. Решение медицинских задач.

перерыв - 10 мин

Методы обучения и преподавания: деловые игры, ажурная пила.

Методы контроля формируемых на занятии компетенций:

ü тестирование проводится в компьютерной форме (студент должен ответить на «тест», содержа­щий в себе минимальные знания и навыки – основные определения, теоретические вопросы дан­ной темы);

ü решение ситуационных задач (занятии студент должен выполнить индивидуаль­ное задание: по получению определенных навыков, решению типовых задач);

Самостоятельная работа студентов - 50 мин

Освоение практических навыков: Решение типовых и ситуационных задач.

Практика № 3

Разработка проекта «Ввод и вывод массива»

Постановка задачи

Создать программу, с помощью которой можно выполнить:

после запуска программы пользователь вводит значения элементов массива. При нажатии кнопки Вычислить программа вычисляет сумму элементов массива и среднее арифметическое значение элементов массива (рис.24.7).

Совместная работа студента с преподавателем - 25 мин - student2.ru

Рисунок 24.7

Пояснения: Новым в этой работе будет использование:

- компонента StringGrid;

- оператора цикла for.

План разработки программы

1. Открыть новый проект. Дать название форме Ввод и обработка массива.

2. Разместить на форме компоненты в соответствии с рисунком 24.8.

Совместная работа студента с преподавателем - 25 мин - student2.ru Совместная работа студента с преподавателем - 25 мин - student2.ru

Рисунок 24.8

3. Сохранить проект в отдельной папке под именем, например, Pr5.pas и Project5.dpr в отдельной папке.

4. Запустить программу, затем закрыть окно проекта с помощью комбинаций клавиш Alt+F4.

5. Выполнить следующие действия:

Выделенная компонента Окно инспектора объектов Имя свойства Действие
Label1 Параметры (Properties) Caption Введите массив целых чисел
Label2 Параметры (Properties) Caption Удалить название
StringGrid1 Параметры (Properties) ColCount
FixedCols
RowCount
DefaultRowHeight
Height
DefaultColWidth
Width
Options.goEditing True
Options.Always ShowEditor True
Options.goTabs True
BitBtn1 Параметры (Properties) Kind bkOK
Caption Вычислить
События (Events) OnClick 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; summ:=0; for i:=1 to 5 do summ:=summ+a[i]; sr:=summ/5; Label2.Caption:= 'Сумма элементов:' + IntToStr(summ) + #13 + 'Среднее арифметическое:' + FloatToStr(sr);

Между названием процедуры для кнопки Вычислить (BitBtn1) и словом begin описать переменные:

Var

a:array[1..5] of integer;

summ:integer;

sr:real;

i:integer;

6. Сохранить проект, запустить и протестировать его.

Дополнительное задание

1. Вставить кнопку Выход (BitBtn2).

2. Выполнить сброс значений компонентов Label2, StringGrid1 для обеспечения возможности повторить диалог.

Подсказка. Разместить на форме еще одну кнопку BitBtn3. Свойству Kind придать значение bkRetry, а свойству Caption - &Повторить. Ввести программно пустые строки в свойства указанных компонентов по нажатию кнопки Повторить.

for i:=1 to 5 do StringGrid1.Cells[i-1,0]:=' ';

Label2.Caption:=' ';

Между названием процедуры кнопки Повторить (BitBtn3) и словом begin описать переменную i:

Var

i:integer;

Совместная работа студента с преподавателем - 25 мин - student2.ru

Рисунок 24.9

3. Найти максимальное и минимальное из массива.

4. Отсортируйте массив.

5. Найти элемент массива, равный 2-м. Если нет такого элемента, выдать сообщение, что нет элемента равным 2-м.

Задачи:

1. Найти максимальное из одномерного массива данных; для данных использовать компоненты StringGrid, для результата – Label.

2. Найти минимальное из одномерного массива данных; для данных использовать компоненты StringGrid, для результата – Label.

3. Найти максимальное из двумерного массива данных; для данных использовать компоненты StringGrid, для результата – Label.

4. Найти минимальное из двумерного массива данных; для данных использовать компоненты StringGrid, для результата – Label.

5. Определить средний рост детей в группе детского садика (одномерный массив).

6. Определить самый лучший результат в беге на 100 метров в спартакиаде студентов (одномерный массив).

7. Определить сколько имеется букв «а» и букв «е» в заданной строке (case).

8. Создать запись с данными о студенте (ФИО, год рождения, факультет, группа).

9. Создать массив с записями об успеваемости студентов по Информатике. Запись имеет поля ФИО, группа, оценка.

10. Оформить в виде процедуры ввод массива для задачи №2.

Оформить в виде функции нахождение среднего роста детей в задаче №1.

Практические навыки Балл
Разработка проекта
Открытие нового проекта.
Размещение в приложение Form1 соответствующих компонентов.
Выбор и установка свойств компонентов.
Работа с приложением (Окно редактора кода Unit 1. Pas)
Ввести в разделе Var переменные для сохранения значений
Выбор события компонентов на странице События (Events) и ввод кода программы.
Сохранение проекта, запуск и его тестирование
Выполнение дополнительного задания.
Выполнение задание по варианту.

Литература:

1. С. И. Бобровский. Учебный курс Delphi7. Питер, 2006г.

2. Г.Г. Рапаков, С.Ю. Ржеуцкая. Программирование на языке Паскаль. Санкт-Петербург, 2005 г.

3. Н.Культин. Учебный курс Delphi Санкт-Петербург, 2005 г.

4. Н.Культин. Delphi в задачах и примерах. Санкт-Петербург, 2005 г.

5. Е.Р. Алексеев, О.В. Чесноков. Шаг за шагом. Москва, 2005 г.

Перерыв - 10 мин

Совместная работа студента с преподавателем - 25 мин

После выполнения практической части работы, преподаватель проверяет правильность и последовательность действий студентов, достигли они конечного результата. Затем преподаватель проводит опрос студентов с анализом темы. Выясняет практическое его применение.

Контроль заключительного уровня знании - 20 мин

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

Контроль

Вопросы:

1. Какие типы переменных используются для обработки символов?

2. Какова инструкция объявления символьной переменной;

3. Какими типами могут быть представлены строки?

4. Каково назначение функции length?

5. Каково назначение процедуры delete?

6. Каково назначение функции роs?

7. Каково назначение функции сору?

8. Что такое массив?

9. Что такое элемент массива?

10. Что такое индекс массива?

11. Что такое размерность массива?

12. Назовите типичные операции при работе с массивами?

13. Что такое вывод массива?

14. Что такое ввод массива?

15. Какие компоненты используют для ввода массива?

16. В какой вкладке палитры компонентов расположен компонент StringGrid?

17. В какой вкладке палитры компонентов расположен компонент Memo?

18. Как настроить компонент StringGrid: количество строк и столбцов, количество фиксированных строк и столбцов?

19. Как перенести данные из таблицы в массив?

20. Как создается массив и как его использовать в программе?

Тесты:См. Сборник тестовых заданий по «Информатике», тема « Основы программирование языка Delphi»

- Общая оценка знаний - 5 мин

Преподаватель анализирует компетенций знаний, практические навыкинавыки

Студентов по данной теме, проводит разбор общих ошибок допущенных студентами при выполнении заданий. Затем преподаватель анализирует достижения и недостатки каждого студента с выставлением итоговой оценки в журнал по двум параметрам (за знания и практические навыки).

Наши рекомендации