1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Семакин
Работа 3.9 Упр.9 ГДЗ Семакин 10 класс (Информатика)
Семакин, Хеннер, Шеина
10 класс
Автор
Семакин, Хеннер, Шеина

Работа 3.9 Упр.9 ГДЗ Семакин 10 класс (Информатика)

Задача

Рассмотрим вариант решения задания из учебника Семакин, Хеннер, Шеина 10 класс, Бином: 9. Сведения о сотрудниках включают: фамилию, имя, отчество, дату рождения, полученное образование, домашний адрес, профессию. Получить ФИО (фамилию, имя, отчество) всех сотрудников с высшим образованием. Выдать сведения о сотрудниках, имеющих данную профессию и родившихся не раньше указанной даты.

Подробный ответ

Введём запись для хранения сведений о сотруднике: ФИО, дату рождения, образование, адрес и профессию. Затем организуем ввод массива записей и выведем только тех сотрудников, которые удовлетворяют условию.

Для первого пункта проверяем поле образования: если оно равно «высшее», выводим фамилию, имя и отчество.

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

const k=2;
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..5] of man;
    n:integer;
    symb:string[1];
procedure vvod;
begin
  for n:=1 to k do
  begin
    writeln(‘Вводим данные на сотрудника номер: ‘,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
  clrscr;
  vvod;
  writeln(‘Список сотрудников с высшим образованием:’);
  for n:=1 to k do
    if sot[n].many >= 0 then ;
  writeln(‘Список сотрудников по профессии и дате рождения:’);
  for n:=1 to k do
    if symb=’T’ then list(n);
end.

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

Ответ: программа должна хранить сведения о сотрудниках в записи и выводить:

  • ФИО всех сотрудников с высшим образованием;
  • сведения о сотрудниках с заданной профессией, родившихся не раньше указанной даты.


Общая оценка
4.2 / 5
Другие учебники
Другие предметы