Условие задачи
Написать программу для формирования массива записей (10−12 шт.), содержащих сведения о каком-либо объекте. Полями записей являются свойства этого объекта. Провести выборку информации по какому-либо полю записи.
Объект — клиент магазина. Свойства объекта: организация-заказчик, ФИО представителя, его должность, почтовый адрес (индекс, город, улица, дом, номер офиса), телефон, e-mail, код товара, номер заказа, количество, дата заказа, скидка.
Предварительный анализ задачи
- 1. При вводе исходных данных необходимо предусмотреть, чтобы они соответствовали условию задачи.
- 2. Заполнялись все необходимые поля.
- 3. В массиве записей должно быть не больше 12.
- 4. Производилась выборка по какому-либо полю записи.
Разработка алгоритма
- 1. Определение входных данных:
- 2. Определение выходных данных:
Данные, помещенные в Memo1;
3. Текст Алгоритма.
Алгоритм
Начало.
Если i=13.
то Появляется сообщение: 'Массив полностью заполнен!'.
иначе Проверка того, что все поля заполнены:
если (Edit1.Text'') и (Edit2.Text'') и (Edit3.Text'') и (Edit4.Text'') и (Edit5.Text'') и (Edit6.Text'') и (Edit7.Text'') и (Edit8.Text'') и (Edit9.Text'') и (Edit10.Text'') и (Edit11.Text'') то
Помещение данных всех полей в массив:
со Spicok[i] делать (цикл).
organizachiya_zakazchika = Edit1.
FIO_predstavitelya = Edit2.
dolgnost = Edit3.
pochtovi_adres = Edit4.
Telephone = Edit5.
e_mail = Edit6.
kod_tovara = Edit7.
nomer_zakaza := Edit8. Text;
kolichestvo := Edit9. Text;
data_zakaza := Edit10. Text;
skidka := Edit11. Text;
Inc (i) (увеличение на единицу) Появляется сообщение: 'Массив успешно заполнен!'.
Переход к циклу иначе Появляется сообщение: ' Введите все данные!'.
Переход к циклу Конец Процедура присваивания к i значение, равное 1.
начало.
i=1.
конец Процедура осуществления выборки для определенного поля:
Начало для i=1 до 12 делать если radiogroup1. itemindex=0 then Memo1.lines.add (Spicok[i]. organizachiya_zakazchika);
если radiogroup1. itemindex=1 then Memo1.lines.add (Spicok[i]. FIO_predstavitelya);
если radiogroup1. itemindex=2 then Memo1.lines.add (Spicok[i]. dolgnost);
если radiogroup1. itemindex=3 then Memo1.lines.add (Spicok[i]. pochtovi_adres);
если radiogroup1. itemindex=4 then Memo1.lines.add (Spicok[i]. e_mail);
если radiogroup1. itemindex=5 then Memo1.lines.add (Spicok[i]. Telephone);
если radiogroup1. itemindex=6 then Memo1.lines.add (Spicok[i]. kod_tovara);
если radiogroup1. itemindex=7 then Memo1.lines.add (Spicok[i]. nomer_zakaza);
если radiogroup1. itemindex=8 then Memo1.lines.add (Spicok[i]. kolichestvo);
если radiogroup1. itemindex=9 then Memo1.lines.add (Spicok[i]. data_zakaza);
если radiogroup1. itemindex=10 then Memo1.lines.add (Spicok[i]. skidka);
Конец.