begin

                               mark:=StringGrid1.Cells[0,i];

                               year:=StrToInt(StringGrid1.Cells[1,i]);

                               price:=StrToInt(StringGrid1.Cells[2,i]);

                       end;

end;

procedure TForm1.Button2Click(Sender: TObject);

var i, j : integer;

begin

       j:=1;

       for i:=1 to 10 do

               with a1[i] do

                       if price < StrToInt(Edit1.Text) then

                               begin

                               StringGrid2.Cells[0,j]:=mark;

                               StringGrid2.Cells[1,j]:=IntToStr(year);

                               StringGrid2.Cells[2,j]:=IntToStr(price);

НЕ нашли? Не то? Что вы ищете?

                               j:=j+1;

                       end;

end;

end.

Лабораторная работа №15

Используя тип массив записей, составить программу для учета и обработки данных об объектах, описанных в задании. Вывести на экран указанную информацию об объектах, удовлетворяющих указанному условию. Выполнить два варианта: один – в среде Pascal, другой – в среде Delphi.



Формулировка задания

1.

Вывести на экран данные об имеющихся в продаже квартирах (этаж, количество комнат, цена), общая площадь которых больше заданного пользователем числа

2.

Вывести на экран данные о билетах на поезд (тип вагона, полка), цена которых не выше заданного пользователем числа

3.

Вывести на экран данные о номерах гостинице (количество мест, класс номера, этаж), цена за сутки которого не меньше заданного пользователем числа

4.

Вывести на экран данные об имеющихся в продаже книгах (автор, название, цена), принадлежащие заданной пользователем теме.

5.

Вывести на экран данные о группах студентов (число студентов, фамилия старосты, специальность), год поступления которой задан пользователем.

6.

Вывести на экран данные об абитуриентах (ФИО, дата рождения, номер школы), сумма полученных на вступительных экзаменах баллов которого больше заданного пользователем числа

7.

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

8.

Вывести на экран данные о друзьях (ФИО, год рождения, домашний адрес, телефон), месяц рождения которых задан пользователем.

9.

Вывести на экран данные о магазинах (режим работы, ФИО заведующей, адрес), телефон которых начинается с заданной пользователем цифры.

10.

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

11.

Вывести на экран данные о композициях (исполнитель, время звучания, наличие клипа), позиция в хит-параде которых выше заданного пользователем места.

12.

Вывести на экран данные о рейсах самолетов (место назначения, авиакомпания), время вылета которых находится в диапазоне, указанном пользователем.

13.

Вывести на экран данные о блюдах ресторана (название, калорийность, тип), время приготовления которых не превосходит возможное для пользователя время ожидания.

14.

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

15.

Вывести на экран данные об имеющихся на складе парах обуви (размер, цвет, производитель), количество которых на складе не превосходит выбранного пользователем числа

16.

Вывести на экран данные об олимпийских чемпионах (ФИО, вид спорта, страна, год получения первой медали) кратность чемпионства которых не меньше заданного пользователем числа.

17.

Вывести на экран данные о рабочих (ФИО, цех, специальность), отработанные часы за неделю которых не меньше заданного пользователем числа.

18.

Вывести на экран данные об актерах (ФИО, страна, пол), у которых количество фильмов с их участием и награжденных какой-либо премией не меньше заданного пользователем числа.

19.

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

20.

Вывести на экран данные о подводных лодках (тип, номер, порт прикрепления), водоизмещение которых находится в указанном пользователем диапазоне.

21.

Вывести на экран данные о школах (название, адрес, ФИО директора), ученики которой заняли 1-ое место по выбранному пользователем предмету.

22.

Вывести на экран данные о маршрутах автобусов (количество автобусов на данном маршруте, номер автопарка, названия конечных остановок), имеющих максимальную и минимальную протяженности.

23.

Вывести на экран данные об участвующих в выборах кандидатов (ФИО, возраст, партийная принадлежность), участвующих в наибольшем количестве выборах.

24.

Вывести на экран данные о передачах новостей (время выхода в эфир, название канала, ФИО ведущего), заканчивающегося не позднее времени, определенного пользователем

25.

Вывести на экран данные о заводах (название, отрасль, адрес), у которых среднегодовой доход превышает средний арифметический доход рассматриваемых заводов.


Файлы

Объявление файлов

Файл – это совокупность данных, размещенных на внешнем носителе. Данные в файле называются элементами. Количество данных в файле, в отличии от массива, в описании файла не указывают. Элемент файлы не имеет индекса. Тип элемента может быть как простым, так и сложным, но не может быть файлом.

Синтаксис объявления файлового типа данных:

    в разделе описания типов

type ИмяТипа = file of БазовыйТип;

    в разделе объявления переменных

var СписокПеременных: file of БазовыйТип

Например,

type myfile = file of integer;

       list = file of string[20];

var file1, file2 : myfile;

       friends: list;

       command: file of boolean;

Для обработки файла его необходимо сначала открыть, выполнить нужные действия и закрыть.

Для определения достижения конца файла используется стандартная логическая функция:

eof(ИмяФайла);

При достижении конца файла значение функции становится равной true.

Пример

Создать файл записей с информацией о автомобилях: марка (mark), объем двигателя (volume), мощностью двигателя (power) и максимальная скорость (speed). Вывести содержимое на экран. При обработке

Код программы в среде Pascal

program Cars;

uses Crt;

type cars – record

               mark: string[15];

               volume, power, speed : real;

               end;

       myfile = file of cars;

var f1: myfile;

       i, n :integer

       с1: cars;

begin

       clrscr;

       writeln(‘Введите количество автомобилей’);

       readln(n);

       assign(f1, ‘d:\cars’);

       {Открывается файл для записи данных}

       rewrite(f1);

       for i:=1 to n do

               begin

               writeln(‘введите марку машины’);

               readln(c1.mark);

               writeln(‘введите объем двигателя’);

               readln(c1. volume);

               writeln(‘введите мощность двигателя’);

               readln(c1. power);

               writeln(‘введите скорость’);

               readln(c1. speed);

               write(f1,c1);

               end:

       close(f1);

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17