Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Работа с комбинированными типами данных



Постановка задачи для конкретного варианта:

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

2. Составить программу, которая выполняет ввод и печать списка сотрудников, фамилии которых начинаются с буквы Т, и их даты рождения. Ввод и печать оформить в виде процедур.

Исходные данные:

Анисимов Петр Иванович Родился 23.1.1960 В фирме с 1991 года Зарплата 15000 рублей Проживает по адресу: Улица Ленина 12-45 Синилов Сергей Анатольевич Родился 14.5.1964 В фирме с1991 года Зарплата 14500 рублей Проживает по адресу: Улица Мира 67-19 Шорапов Евгений Владимирович Родился 28.2.1969 В фирме с 1991 года Зрплата 14000 Проживает по адресу: Улица Левченко 84-37
Бажин Никита Андреевич Родился 3.9.1963 В фирме с 1991года Зарплата 13500 рублей Проживает по адресу: Улица Вагонная 94-36 Созинов Алексей Петрович Родился 13.12.1964 В фирме с 1991года Зарплата 13000 рублей Проживает по адресу: Улица Куйбешева 68-83 Малышев Василий Владимирович Родился 18.6.1968 В фирме с 1991года Зарплата 12500 рублей Проживает по адресу: Улица Охотников 8-3
Мельникова Лариса Анатольевна Родилась 11.2.1959 В фирме с 1991 года Зарплата 12000 рублей Проживает по адресу: Улица Кирова 83-56 Тихонов Сергей Генадьевич Родился 30.3.1967 В фирме с 1991года Зарплата 11500 рублей Проживает по адресу: Улица Автозаводская 42-88 Еговцев Иван Артурович Родился 18.9.1968 В фирме с 1991года Зарплата 11000 рублей Проживает по адресу: Улица Дзержинского 23-69
Ползунова Елена Андреевна Родилась 15.10.1962 В фирме с 1991 года Зарплата 10500 рублей Проживает по адресу: Улица Дружбы 28-75 Михайлов Артем Егоровну Родился 2.11.1970 В фирме с 1992 года Зарплата 10000 рублей Проживает по адресу: Улица Невская 13-46 Смирнов Никита Владимирович Родился 3.8.1968 В фирме с 1992 года Зарплата 9500 рублей Проживает по адресу: Улица Болотная 59-38
Токарев Надежда Александровна Родилась 4.7.1970 В фирме с 1992 года Зарплата 9000 рублей Проживает по адресу: Улица Кочегаров 75-63 Маслова Нина Михайловна Родилась 7.3.1966 В фирме с 1993 года Зарплата 8500 рублей Проживает по адресу: Улица Васнецова 49-92 Молчановский Ильнар Ирекович Родился 9.8.1969 В фирме с 1993 года Зарплата 8000 рублей Проживает по адресу: Улица Лебедева 34-81
Корягина Нина Плахова Родилась 10.2.1970 В фирме с 1994 года Зарплата 7500 рублей Проживает по адресу: Улица Калинина 24-12 Егорова Пелагея Луповна Родилась 12.1.1971; В фирме с 1996 года Зарплата 7000 рублей Проживает по адресу: Улица Нефтяников 47-38 Гаспер Валентина Александровна Родилась 16.11.1972 В фирме с 1998 года Зарплата 6500 рублей Проживает по адресу: Улица Докучаево 75-94
Теплоухов Юрий Леонидович Родился 25.5.1978 В фирме с 2000 года Зарплата 6000 рублей Проживает по адресу: Улица Заречная 28-47 Кирьянов Антон Алексеевич Родился 28.8.1968 В фирме с 1993 года Зарплата 12700 рублеу Проживает по адресу: Улица Кислотная 26-14  

Текст программы:

program lab8{ вариант № 8};

type man=record

fio:record fameli,name,och:string[15];end;

date:record day,mes,god:integer;end;

godpos:integer;

many:integer;

adres:record ul:string[15];

dom,kv:integer;end;

end;

var sot:array [1..20] of man;

n:integer;

symb:string[1];

procedure vvod;

begin

for n:=1 to 20 do

begin

writeln(‘Вводим данные на сотрудникa номер:’,n);

write(‘Фамилия’);

readln(sot[n].fio.fameli);

write(‘Имя’);

readln(sot[n].fio.name);

write(‘Отчество’);

readln(sot[n].fio.och);

writeln(‘Дата рождения’);

write(‘День’);

readln(sot[n].date.day);

write(‘Месяц’);

readln(sot[n].date.mes);

write(‘Год’);

readln(sot[n].date.god);

write(‘Год поступления в фирму’);

readln(sot[n].godpos);

write(‘Заработная плата’);

readln(sot[n].many);

writeln(‘Адрес проживания’);

write(‘Улица’);

readln(sot[n].adres.ul);

write(‘Номер дома’);

readln(sot[n].adres.dom);

write(‘Номер квартиры’);

readln(sot[n].adres.kv);

end;

end;

procedure list(n:integer);

begin

writeln('--------------------------------------------------------------------------------');

write(sot[n].fio.fameli,' ',sot[n].fio.name,' ',sot[n].fio.och);

writeln(' Дата рождения ',sot[n].date.day,'/',sot[n].date.mes,'/',sot[n].date.god);

writeln;

end;

begin

vvod; {процедура ввода исходных данных}

writeln('Распечатать список сотрудников, фамилии которых начинаются с буквы Т');

writeln(' и их даты рождения.');

writeln;

for n:=1 to 20 do begin

symb:=copy(sot[n].fio.fameli,1,1);

if symb='Т' then list(n);

end;

end.

Результаты выполнения программы:

  Распечатать список сотрудников, фамилии которых начинаются с буквы Т и их даты рождения. -------------------------------------------------------------------------------- Тихонов Сергей Геннадьевич Дата рождения 30/3/1967 -------------------------------------------------------------------------------- Токарева Надежда Александровна Дата рождения 4/7/1970 -------------------------------------------------------------------------------- Теплоухов Юрий Леонидович Дата рождения 25/5/1978 -------------------------------------------------------------------------------- Конец данных, нажмите Enter.  

Варианты заданий.

1. Распечатать анкетные данные сотрудников, имеющих срок службы больше 5 лет.

2. Распечатать анкетные данные сотрудников, которым больше 25 лет.

3. Распечатать анкетные данные сотрудников, у которых улица начинается с буквы С.

4. Распечатать ФИО сотрудников, у которых улица начинается с буквы М, и номер дома больше 5.

5. Распечатать анкетные данные сотрудников, месяц рождения которых больше 6 и фамилия начинается с буквы Л.

6. Распечатать анкетные данные сотрудников, упорядоченные по ФИО и Улицам.

7. Распечатать список сотрудников, фамилии которых начинаются с буквы А, и их оклад.

8. Распечатать список сотрудников, фамилии которых начинаются с буквы В и Г, и год их поступления в фирму.

9. Распечатать фамилии и даты рождения сотрудников, имеющих номер квартиры меньше 35.

10. Распечатать список сотрудников, упорядоченный по адресам (т.е. по улице, номерам дома и квартиры).

11. Упорядочить список сотрудников по году поступления в фирму и распечатать его.

12. Вычислить средний оклад сотрудников и распечатать список сотрудников, имеющих оклад выше среднего.

13. Вычислить средний оклад сотрудников и распечатать список сотрудников, имеющих оклад ниже среднего.

14. Вычислить средний оклад сотрудников и распечатать список сотрудников, имеющих оклад, равный среднему.

15. Упорядочить список сотрудников фирмы по году рождения и распечатать его.

16. Распечатать список сотрудников, упорядоченный по алфавиту.

17. Распечатать список сотрудников, упорядоченный по месяцу рождения.

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

19. Распечатать анкетные данные сотрудников, упорядоченные по дате рождения.

20. Распечатать ФИО и адреса сотрудников, которые проработали в фирме меньше года.

21. Распечатать ФИО сотрудников, оклад которых выше среднего в 1.2-1.5 раза.

22. Распечатать ФИО сотрудников, в названии улиц которых есть буква А.

23. Распечатать ФИО и номера домов сотрудников, у которых номера квартир начинаются с 3, 4, 5, 6, 7, 8.

24. 25) Распечатать ФИО и дату рождения сотрудников, у которых номера домов меньше 20, а номера квартир больше 5.





Дата публикования: 2015-02-22; Прочитано: 307 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...