Среди работников данного предприятия отыскать тех, чья заработная плата за месяц
Посреди работников данного предприятия отыскать тех, чья заработная плата за месяц ниже средней по предприятию, а также распечатать список тех, кто проработал на предприятии более 10 лет с указанием их фамилии, заработной платы, стажа работы и должности.
Задать свой вопрос1 ответ
Олег Баша
uses crt;
type rabot=record nbsp;//объявляем тип-запись с полями по условию
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;fam:string[20]; //фамилия-строчка до 20 знаков
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dlz:string[20]; //должность, тот же тип
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;zpl:longint;//заработная плата - длинноватое целое
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;stz:byte; //стаж - числа от 0 до 255
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
var sp:array[1..50] of rabot; //массив записей
nbsp;nbsp;nbsp;nbsp;n,i,k:integer;
nbsp;nbsp;nbsp;nbsp;sr:real;
begin
clrscr;
write(Введите количество тружеников:);
readln(n);
writeln(Введите данные о работниках:);
sr:=0;
for i:=1 to n do
nbsp;begin
nbsp;nbsp;writeln(Труженик ,i);
nbsp;nbsp;with sp[i] do
nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;write(Фамилия: );readln(fam);
nbsp;nbsp;nbsp;nbsp;write(Должность: );readln(dlz);
nbsp;nbsp;nbsp;nbsp;write(Зарплата: );readln(zpl);
nbsp;nbsp;nbsp;nbsp;sr:=sr+zpl;
nbsp;nbsp;nbsp;nbsp;write(Стаж: );readln(stz)
nbsp;nbsp;nbsp;end;
nbsp;end;
sr:=sr/n; //средняя заработная плата
clrscr; //очистим экран от ввода
writeln(Данные о тружениках:);//выведем перечень в виде таблицы
writeln(------------------------------------------------------);
writeln( nbsp;nbsp;nbsp;Фамилия nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;nbsp;Должность nbsp;nbsp;nbsp; Заработная плата Стаж );
writeln(------------------------------------------------------);
for i:=1 to n do
with sp[i] do
nbsp;begin
nbsp;nbsp;gotoXY(1,whereY);write( ,fam);//установим курсор в нужную позицию и выведем
nbsp;nbsp;gotoXY(17,whereY);write( ,dlz);
nbsp;nbsp;gotoXY(36,whereY);write(,zpl:8);
nbsp;nbsp;gotoXY(47,whereY);write(,stz:4);
nbsp;nbsp;gotoXY(54,whereY);writeln();//конец строчки, переход на новую
nbsp;end;
writeln(------------------------------------------------------);
writeln(Press Enter);
readln;
clrscr;//очистим экран
writeln(Средняя заработная плата по предприятию=,sr:0:1);//новенькая таблица
writeln(Данные о работниках, чья заработная плата ниже средней:);
writeln(------------------------------------------------------);
writeln( nbsp;nbsp;nbsp;Фамилия nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;nbsp;Должность nbsp;nbsp;nbsp; Заработная плата Стаж );
writeln(------------------------------------------------------);
for i:=1 to n do
if sp[i].zpllt;sr then //если заработная плата меньше средней, выводим
with sp[i] do
nbsp;begin
nbsp;nbsp;gotoXY(1,whereY);write( ,fam);
nbsp;nbsp;gotoXY(17,whereY);write( ,dlz);
nbsp;nbsp;gotoXY(36,whereY);write(,zpl:8);
nbsp;nbsp;gotoXY(47,whereY);write(,stz:4);
nbsp;nbsp;gotoXY(54,whereY);writeln();
nbsp;end;
writeln(------------------------------------------------------);
writeln(Press Enter);
readln;
clrscr; nbsp;//очистим
writeln(Данные о тружениках, чей стаж ,более 10 лет:);//новенькая таблица
k:=0;
writeln(------------------------------------------------------);
writeln( nbsp;nbsp;nbsp;Фамилия nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;nbsp;Должность nbsp;nbsp;nbsp; Заработная плата Стаж );
writeln(------------------------------------------------------);
for i:=1 to n do
if sp[i].stzgt;10 then //если стаж бодьше 10 лет
nbsp;begin
nbsp;nbsp;k:=1; //закрепляем что есть
nbsp;nbsp;with sp[i] do //выводим
nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;gotoXY(1,whereY);write( ,fam);
nbsp;nbsp;nbsp;nbsp;gotoXY(17,whereY);write( ,dlz);
nbsp;nbsp;nbsp;nbsp;gotoXY(36,whereY);write(,zpl:8);
nbsp;nbsp;nbsp;nbsp;gotoXY(47,whereY);write(,stz:4);
nbsp;nbsp;nbsp;nbsp;gotoXY(54,whereY);writeln();
nbsp;nbsp;nbsp;end;
nbsp;nbsp;end;
writeln(------------------------------------------------------);
if k=0 then write(Таких тружеников нет);
writeln(Press Enter);
readln
end.
type rabot=record nbsp;//объявляем тип-запись с полями по условию
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;fam:string[20]; //фамилия-строчка до 20 знаков
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;dlz:string[20]; //должность, тот же тип
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;zpl:longint;//заработная плата - длинноватое целое
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;stz:byte; //стаж - числа от 0 до 255
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
var sp:array[1..50] of rabot; //массив записей
nbsp;nbsp;nbsp;nbsp;n,i,k:integer;
nbsp;nbsp;nbsp;nbsp;sr:real;
begin
clrscr;
write(Введите количество тружеников:);
readln(n);
writeln(Введите данные о работниках:);
sr:=0;
for i:=1 to n do
nbsp;begin
nbsp;nbsp;writeln(Труженик ,i);
nbsp;nbsp;with sp[i] do
nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;write(Фамилия: );readln(fam);
nbsp;nbsp;nbsp;nbsp;write(Должность: );readln(dlz);
nbsp;nbsp;nbsp;nbsp;write(Зарплата: );readln(zpl);
nbsp;nbsp;nbsp;nbsp;sr:=sr+zpl;
nbsp;nbsp;nbsp;nbsp;write(Стаж: );readln(stz)
nbsp;nbsp;nbsp;end;
nbsp;end;
sr:=sr/n; //средняя заработная плата
clrscr; //очистим экран от ввода
writeln(Данные о тружениках:);//выведем перечень в виде таблицы
writeln(------------------------------------------------------);
writeln( nbsp;nbsp;nbsp;Фамилия nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;nbsp;Должность nbsp;nbsp;nbsp; Заработная плата Стаж );
writeln(------------------------------------------------------);
for i:=1 to n do
with sp[i] do
nbsp;begin
nbsp;nbsp;gotoXY(1,whereY);write( ,fam);//установим курсор в нужную позицию и выведем
nbsp;nbsp;gotoXY(17,whereY);write( ,dlz);
nbsp;nbsp;gotoXY(36,whereY);write(,zpl:8);
nbsp;nbsp;gotoXY(47,whereY);write(,stz:4);
nbsp;nbsp;gotoXY(54,whereY);writeln();//конец строчки, переход на новую
nbsp;end;
writeln(------------------------------------------------------);
writeln(Press Enter);
readln;
clrscr;//очистим экран
writeln(Средняя заработная плата по предприятию=,sr:0:1);//новенькая таблица
writeln(Данные о работниках, чья заработная плата ниже средней:);
writeln(------------------------------------------------------);
writeln( nbsp;nbsp;nbsp;Фамилия nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;nbsp;Должность nbsp;nbsp;nbsp; Заработная плата Стаж );
writeln(------------------------------------------------------);
for i:=1 to n do
if sp[i].zpllt;sr then //если заработная плата меньше средней, выводим
with sp[i] do
nbsp;begin
nbsp;nbsp;gotoXY(1,whereY);write( ,fam);
nbsp;nbsp;gotoXY(17,whereY);write( ,dlz);
nbsp;nbsp;gotoXY(36,whereY);write(,zpl:8);
nbsp;nbsp;gotoXY(47,whereY);write(,stz:4);
nbsp;nbsp;gotoXY(54,whereY);writeln();
nbsp;end;
writeln(------------------------------------------------------);
writeln(Press Enter);
readln;
clrscr; nbsp;//очистим
writeln(Данные о тружениках, чей стаж ,более 10 лет:);//новенькая таблица
k:=0;
writeln(------------------------------------------------------);
writeln( nbsp;nbsp;nbsp;Фамилия nbsp;nbsp;nbsp; nbsp;nbsp;nbsp;nbsp;Должность nbsp;nbsp;nbsp; Заработная плата Стаж );
writeln(------------------------------------------------------);
for i:=1 to n do
if sp[i].stzgt;10 then //если стаж бодьше 10 лет
nbsp;begin
nbsp;nbsp;k:=1; //закрепляем что есть
nbsp;nbsp;with sp[i] do //выводим
nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;gotoXY(1,whereY);write( ,fam);
nbsp;nbsp;nbsp;nbsp;gotoXY(17,whereY);write( ,dlz);
nbsp;nbsp;nbsp;nbsp;gotoXY(36,whereY);write(,zpl:8);
nbsp;nbsp;nbsp;nbsp;gotoXY(47,whereY);write(,stz:4);
nbsp;nbsp;nbsp;nbsp;gotoXY(54,whereY);writeln();
nbsp;nbsp;nbsp;end;
nbsp;nbsp;end;
writeln(------------------------------------------------------);
if k=0 then write(Таких тружеников нет);
writeln(Press Enter);
readln
end.
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
выпиши в свою тетрадь те правила этикета которые тебе не были
Разные вопросы.
Анна хорошо учится у неё много подруг свободное от учёбы время
Обществознание.
Облако тегов