1) Среди работников данного предприятия найти тех, чья заработная плата за месяц является ниже средней по предприятию, а также распечатать список тех, кто проработал на предприятии более 10 лет с указанием их фамилии, зарплаты, стажа работы и должности.
Вот мой вариант решения...
Program Zapisi_7;
type
rabotnik_predpriyatiya=record
stazh:integer;
zar:integer;
fam:string[15];
dolzh:string[10];
end;
var
i,n: integer;
anketa: rabotnik_predpriyatiya;
r: file of rabotnik_predpriyatiya;
begin
assign(r,'anketa.dat'); reset( r ); { -> вот тут у меня высвечивается ошибка: File not found }
write('Skolko dannyh vvodit');
readln(n);
for i:=1 to n do
begin
write('Vvedite familiu');
readln(anketa.fam);
write('Vvedite stazh raboty');
readln(anketa.stazh);
write('Vvedite velichinu mes. zarabotka');
readln(anketa.zar);
write('Vvedite dolzhnost');
readln(anketa.dolzh);
write(r,anketa);
end;
close( r );
end.
Как в этой проге написать, чья зар. плата за месяц явл. ниже средней по предприятию???И как вывести фамилии тех, кто проработал более 10 лет? Помогите пож-та...
2) Распечатать фамилии тех учеников класса, которые являются хорошистами и отличниками по итогам года. Также узнать, насколько их средний балл отличается от среднего балла класса.
Program Zapisi_12;
type uchenik=record
fam:string[15];
ucheb_god:integer;
har:string[20];
end;
var a:array[1..10] of uchenik;
fin,fout:text;
i,j:integer;
begin
assign(fin,'uch.pas');
reset(fin); { -> тут опять эта же ошибка: File not found }
i:=0;
repeat
i:=i+1;
with a[i] do
readln(fin,fam,ucheb_god,har);
until eof(fin);
close(fin);
assign(fout,'hor_i_otl.pas');
rewrite(fout);
for j:=1 to i do
if a[i].har='horoshisty i otlichniki' then
writeln(fout,a[i].fam);
close(fout);
end.
И я не знаю как сравнить эти средние баллы...
Заранее большое спасибо за помощь!