Цитата:
Сообщение от Бракс
2)Среди работников данного предприятия найти тех, чья заработная плата за месяц ниже средней по предприятию, а также распечатать список тех, кто проработал на предприятии более 10 лет, с указанием их фамилии, зарплаты, стажа работы и должности.
Мало информации. Нужна исходная база данных по работникам предприятия. В каком она виде? Таблица? Массив записей? Или ее нужно тоже формировать самостоятельно?
Самому нужнно вводить зароботную плату и через эти данные нужно найти среднию!!!
вот я начал был решать и неполучаеться и одного условия нет!!! вот примерно псмотрите!!!
program vtoroiBlok;
const n=10;
type pa6otnik=record
famili9:string[20];
zarplata:integer;
cTa>|<_pabotb|:integer;
DoJI>|<Hoctb:string[10];
end;
mas=array[1..n] of pa6otnik;
var
v:mas;
i,k,nn:integer;
{s:string;}
begin
write('Vvedute kol=');
readln(nn);
for i:=1 to nn do
begin
write('vvedite famili9 ',i,' pa6otnik='); readln(v[i].famili9);
write('vvedite zarplata ',i,' pa6otnik='); readln(v[i].zarplata);
write('vvedite cTa>|<_pabotb| ',i,' pa6otnik
='); readln(v[i].cTa>|<_pabotb|);
write('vvedite DoJI>|<Hoctb ',i,' pa6otnik='); readln(v[i].DoJI>|<Hoctb);
end;
write('kotorb|e pabotali bolee 10 let ');
{readln(s); }
k:=0;
for i:=1 to nn do
if v[i].cTa>|<_pabotb|='10' then begin with v[i] do begin
write(i,' ',famili9,' ');
writeln(zarplata,' ');
writeln(cTa>|<_pabotb|,' ');
writeln(DoJI>|<Hoctb,' ');
end;
k:=k+1; end;
write('Kol-vo pabotnikov ctaj rabotb| bolee 10 let =',k);
readln;
end.
|
Так, ну сразу видно - в 10-й снизу строке 2 ошибки:
1. Почему условие равенства? Надо ">".
2. Стаж работы вы задали, как INTEGER-тип, а не STRING, а поэтому брать 10 в кавычки - ошибка.
Отсюда условие должно быть таким:
if v[i].cTa>|<_pabotb|>10 then
Но, между прочим, всё равно будет сообщение об ошибке! Потому что у Вас, скажем так, весьма своеобразные идентификаторы. Ну как, скажите, бедному компьютеру разобраться, какой из знаков "<", ">" относится к условию, а какой описывает русскую букву "ж"? Поэтому уберите-ка все значки типа "<", ">", "|" из идентификаторов переменных и постарайтесь обойтись обычным транслитом. Выпендреж до добра не доведет.
В остальном вроде всё верно.
Дальше нужно прокрутить еще пару аналогичных циклов. Первый - чтобы определить среднюю зарплату, второй - чтобы выявить низкооплачиваемых работников. Нужно будет ввести переменную средней зарплаты.