
- •Содержание
- •Лабораторная работа №13 Изучение среды разработчика
- •Лабораторная работа № 14 События в Delphi
- •Лабораторная работа №15 Примеры создания модулей
- •Лабораторная работа №16 Примеры использования компонентов Label, Edit, Memo
- •Лабораторная работа №17 Примеры использования командных кнопок
- •Лабораторная работа№18 Изучение методов и свойств
- •Лабораторная работа№19 Пример использования компонентов RadioGroup и CheckListBox, Radiobutton, CheckBox.
- •Лабораторная работа№20 Примеры использования компонентов ListBox и ComboBox.
- •Лабораторная работа№21 Примеры использования компонента StringGrid.
- •Лабораторная работа №22 Отладка программ
- •Лабораторная работа№23 Примеры использования компонентов Image, Shape, Timer.
- •Лабораторная работа №24 Работа с формами
- •Лабораторная работа№25 Примеры использования компонента MainMenu и PopupMenu.
- •Лабораторная работа№26 Примеры использования компонентов OpenDialog, SaveDialog и FontDialog.
- •Лабораторная работа№27 Создание мультимедийных приложений.
- •Лабораторная работа№28 Печать текстовая и графическая.
- •Лабораторная работа№29 Работа с базами данных
- •Регистрация базы данных – создание псевдонима
- •Создание программы в Delphi
- •Лабораторная работа№30 Сортировка и фильтрация данных
- •Лабораторная работа№31 Вычисляемые поля. Перенос полей на форму
Лабораторная работа№20 Примеры использования компонентов ListBox и ComboBox.
Цель работы: освоить навыки работы с компонентами ComboBox и ListBox, научиться использовать их в приложениях
Студент должен
знать:
расположение компонентов на Странице Палитры компонентов;
свойства и методы компонентов ComboBox, ListBox;
назначение компонентов ComboBox, ListBox;
как изменять свойства компонентов ComboBox, ListBox во время выполнения программы;
как управлять методами во время выполнения программы;
уметь:
изменять значение свойств компонентов ComboBox, ListBox;
писать адекватные реакции на события;
изменять свойства компонентов ComboBox, ListBox во время выполнения программы;
управлять методами компонентов во время выполнения программы.
Примеры и задания.
I. Рассмотрите приведенный ниже пример, поясните процедуры.
Пример.
Ввести таблицу из 12 элементов. Вывести номера тех элементов, значения которых не превышают номера.
Исходный вид формы программы представлен на рисунке.
var Form1: TForm1; A:array [1..12] of integer; I:integer; implementation {$R *.dfm} procedure TForm1.Button5Click(Sender: TObject); begin A[i]:=StrToInt(ComboBox1.Text); Label1.Caption:='Введено: '+IntToStr(I); I:=I+1; ComboBox1.Items.Add(ComboBox1.Text); ListBox1.Items.Add(ComboBox1.Text); ComboBox1.Text:=''; ComboBox1.SetFocus; end; procedure TForm1.FormActivate(Sender: TObject); begin I:=1; ComboBox1.SetFocus; end; procedure TForm1.Button4Click(Sender: TObject); begin Close; end; procedure TForm1.Button3Click(Sender: TObject); begin I:=1; ComboBox1.SetFocus; ComboBox1.Items.Clear; ListBox1.Items.Clear; Label1.Caption:='Введено: 0'; end; procedure TForm1.Button1Click(Sender: TObject); begin ListBox1.Items.Clear; For I:=1 to 12 do If A[I]<=I then ListBox1.Items.Add('Номер '+IntToStr(I)+' - '+IntToStr(A[I])); end; procedure TForm1.Button2Click(Sender: TObject); begin ListBox1.Items.Clear; If A[2]>=5 then ListBox1.Items.Add('Номер 1 - 0') else ListBox1.Items.Add('Номер 1 - '+IntToStr(A[1])); For I:=2 to 9 do If A[I-1]+A[I+1]>=5 then ListBox1.Items.Add('Номер '+IntToStr(I)+' - 0') else ListBox1.Items.Add('Номер '+IntToStr(I)+' - '+IntToStr(A[I])); If A[9]>=5 then ListBox1.Items.Add('Номер 10 - 0') else ListBox1.Items.Add('Номер 10 - '+IntToStr(A[10])); end;
II. Создайте проекты, используя варианты заданий.
Варианты заданий:
Вариант 1.
Вести таблицу, состоящую из 10 элементов и подсчитать количество положительных элементов таблицы.
В таблице из 8 элементов расположить элементы в порядке убывания.
Вариант 2.
Ввести таблицу, состоящую из 7 элементов и вывести номера тех элементов, которые имеют значения больше 10.
Даны две таблицы А(10) и В(10). Сформировать таблицу С, содержащую те элементы из таблицы А, которых нет в таблице В.
Вариант 3.
Ввести таблицу, состоящую из 9 элементов и найти сумму положительных элементов таблицы.
Из таблицы А(10) переписать в таблицу В те элементы, которые имеют отрицательные значения.
Вариант 4.
Ввести таблицу, состоящую из 8 элементов. Заменить отрицательные элементы таблицы их модулями.
В таблице А(7) есть элемент имеющие одно и то же значение. Подсчитать количество этих элементов.
Вариант 5.
Дана таблица, состоящая из 10 элементов. Найти среднее значение .положительных элементов таблицы с четными номерами.
В таблице А(10) есть одинаковые идущие подряд элементы. Подсчитать их количество.
Вариант 6.
Ввести таблицу, состоящую из 6 элементов. Вывести значение тех элементов, которые больше Р, но меньше Т. Р и Т - заданные величины.
Дана таблица А из 10 элементов. Подсчитать количество элементов с нечетными номерами, которые имени значение больше единицы.
Вариант 7.
Ввести таблицу А из 8 элементов. Подсчитать количество элементов с нечетными номерами, которые имеют значения больше единицы.
Дана таблица В из 10 элементов. Постройте таблицу С, которая содержит те _ же числа, что и таблица В, но в которой все отрицательные элементы предшествуют всем неотрицательным.
Вариант 8.
В таблице В, состоящей из 7 элементов. подсчитать произведение положительных элементов.
Дана таблица В из 10 элементов. Составить программу, записывающую в качестве i-го элемента этой таблицы сумму элементов от А(1) до А(i).
Вариант 9.
Составить программу, которая вводит таблицу из 6 элементов, печатает отличные от нуля элементы и их количества.
Дана таблица А, состоящая из 10 элементов - нулей и единиц. Составить программу, преобразующую таблицу таким образом, чтобы вначале находились одни единицы, а в конце одни нули.
Вариант 10.
В таблице А, состоящей из 7 элементов найти и вывести элемент, имеющий наибольшее значение.
Информация о температуре за январь месяц задана в виде таблицы. Определить сколько дней температура была ниже среднемесячной.
Вариант 11.
В таблице А, состоящей из 8 элементов подсчитать количество положительных и отрицательных элементов.
Даны две таблицы А(8) и В(8). Сформировать таблицу С, содержащую те положительные элементы из А, которые есть в таблице В. Результат вывести.
Вариант 12.
Из таблицы А переписать в таблицу В те элементы, которые имеют положительные значения. Таблица А состоит из 7 элементов.
Составить программу для запоминания в таблице А(3) наибольших элементов таблиц В, С, К, состоящих из 5 элементов каждая.
Вариант 13.
В таблице А положительные элементы заменить их номером. Таблица состоит из 8 элементов.
Дана таблица А из 10 элементов. Составить программу, которая записывает в качестве 1-го элемента таблицы количество положительных элементов от A(1) до А(i).
Вариант 14.
Ввести таблицу С из 8 элементов. Элементы с нечетными номерами, имеющие значения больше трех, вывести.
В таблице А из 10 элементов подсчитать сколько раз встречается максимальный по модулю элемент.
Вариант 15.
Ввести таблицу В из 6 элементов. Составить программу определяющую, встречается ли число 7 среди элементов таблицы.
Дана таблица А -из 10 элементов. Среди них есть одинаковые. Переписать таблицу А таким образом, чтобы элементы имеющие одинаковые значения встречались один раз.
Вариант 16.
Ввести таблицу, состоящую из 10 элементов и найти среднее значение положительных элементов.
При поступлении в техникум, получивший двойку на первом экзамене ко второму не допускается. Считая номера учащихся и их оценки после первого экзамена исходными данными, составить список допущенных ко второму экзамену.
Вариант 17.
Ввести таблицу, состоящую из 8 элементов. Вывести номера тех элементов, значения которых не превышают заданную величину В.
Номера 10 участников соревнований расположены в порядке, соответствующем занятому месту. Составить список стартовых номеров, если стартовые номера обратны занятым местам.
Вариант 18.
Ввести таблицу, состоящую из 8 элементов и подсчитать количество отрицательных элементов.
Дана таблица А из 10 элементов. Сформировать новую таблицу, удалив из таблицы А элементы, имеющие совпадающие значения.
Вариант 19.
Ввести таблицу из 10 элементов. Вывести на экран отрицательные элементы таблицы с указанием их индексов.
Дана таблица А из 10 элементов. Переписать отрицательные элементы таблицы А в таблицу В, а неотрицательные в таблицу С. Элементы в таблицах В, С следует располагать подряд.
Вариант 20.
Ввести таблицу из 7 элементов. Вывести элемент, имеющий минимальное значение.
Задан список 10 участников соревнований по плаванию (номер участников и результат). Расположить номера и результаты участников в соответствии с занятыми ими местами (решение сводится к упорядочиванию результатов в порядке возрастания. Следует переставлять и номера участников соревнования.).
Вариант 21.
Ввести Таблицу из 10 элементов. Отрицательные элементы заменить на противоположные.
В таблице из 10 элементов расположить их в порядке возрастания.
Вариант 22.
Ввести таблицу из 9 элементов. Вывести номера тех элементов, которые имеют значения меньшие 4.
Переместить элементы таблицы А(10) на 3 позиции вправо, при этом три элемента из конца таблицы переместить в начало.
Вариант 23.
Ввести таблицу из 6 элементов. Найти сумму элементов таблицы, которые больше 0, но меньше 5.
Составить программу, по которой элементы таблицы А(10)будут переписываться в таблицу В(10), а из таблицы В в таблицу А.
Вариант 24.
Дана таблица из 9 элементов. Найти произведение положительных элементов с нечетными номерами.
Даны две таблицы А(6) и В(6). Объединить их в одну таблицу С с чередованием элементов исходных таблиц А(1), В(1), А(2), В(2),..., А(6), В(б).
Вариант 25.
Ввести таблицу из 12 элементов. Вывести номера тех элементов, значения которых не превышают номера элемента.
Дана таблица А из 10 элементов. Сформировать таблицу В по следующему правилу: если сумма соседних элементов по отношению к А(i)>5, то B(i)=0 иначе B(i)=A(i).
Вариант 26.
В таблице А из 7 элементов подсчитать число элементов, имеющих значения больше 7, но меньше 20.
Вычислить A(I)=SM [i=1; 10] I/X(I), где Х(i) заданы таблицей из 10 элементов. При решении во внутреннем цикле накапливать сумму, во внешнем запоминать результаты в таблице A.
Вариант 27.
Ввести таблицу из 10 элементов. Положительные элементы таблицы заменить нулями, а отрицательные - единицами.
Переместить элементы таблицы А(8) на две позиции влево, при этом два элемента из начала таблицы переместить в конец.
Вариант 28.
Дана таблица из 10 элементов. Найти разность наибольшего и наименьшего чисел в этой таблице.
Дана таблица А(8). Изменить порядок следования элементов таблицы на обратный (поменять местами А(1) и А(8), А(2) и А(7)) и т.д.
Вариант 29.
Даны две таблицы А и В, состоящие из 8 элементов. Подсчитать количество - тех I, для которых А(I)<В(I).
Дана таблица А из 10 элементов. Найти и записать по номеру A(i) среднее арифметическое неотрицательных элементов, а по номеру А(10) - среднее арифметическое отрицательных.
Вариант 30.
Дана таблица А из 8 элементов. Заполнить таблицу В, I-ый элемент которой равен среднему арифметическому первых 1-ых элементов таблицы А (B(I)=(A(l)+...+A(I))/I).
Составить программу для вычисления значения функции Z=0.5*(X(I)+Y(I)), где Х(I) изменяется одновременно с Y(I) от начального значения R с шагом Н, a Y(I) являются элементами таблицы из 10 элементов.
Вариант 31.
Дана таблица А из 8 элементов. Если в ней есть элементы равные нулю, то вывести номер первого из них.
Вывести координаты точек расположенных в круге радиусом R Координаты точек заданы таблицами А(10) и В(10).
Вариант 32.
В таблицах А и В, состоящих из 6 элементов каждая, все элементы расположены в порядке возрастания. Постройте таблицу С, содержащую все элементы таблиц А и В, в которой С(1)<С(2)<...<С(12).
Информация о температуре воздуха за декабрь задана в виде таблицы. Определить сколько дней температура была выше нуля.
Вариант 33.
Дана таблица А из 10 элементов. Найти сумму квадратов чисел, расположенных на четных местах, и кубов чисел - на нечетных местах.
Дана таблица А из 6 элементов. Записать по номеру А(1) элемент, имеющий максимальное значение, по номеру А(6) - минимальное значение.
Вариант 34.
Качество изделия характеризуется величиной параметра А(I). Изделие считается годным, если С<А(I)<В, где С, В - измеренные значения параметра. Для партии из 15 изделий определить количество годных, а также вывести порядковые номера годных изделий.
В таблице А из 10 элементов найти наибольшее число идущих подряд положительных элементов.
Вариант 35.
Дана таблица А из 10 элементов. Сформировать таблицу В для которой: В(I)=А(I), если А(I)>=0; В(I)= -1, если А(I)<0.
Дана таблица А из 10 элементов. Составить программу, которая записывает в качестве I-го элемента таблицы сумму отрицательных элементов от А(1) до А(I).
Вариант 36.
Дана таблица А из 10 элементов. Вывести наибольшее I, при котором А(I)<0.
Вычислить значение функции Z=2.5*(B(I)*X-6*X^2), если В(I) задана таблицей из 10 элементов, а аргумент X изменяется от 1 с шагом 0,5.
Контрольные вопросы:
Для чего предназначены компоненты ComboBox, ListBox?
Опишите отличия между списком TlistBox и TComboBox.
Охарактеризуйте свойства и методы компонентов ComboBox, ListBox.
Какие основные операции применяются для обработки списка в компонентах ComboBox и ListBox?
Какое событие является для списка ListBox по умолчанию?
Какое событие является для комбинированного списка ComboBox по умолчанию?