Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

record

57K
22 июня 2010 года
n-andriy
5 / / 21.06.2010
Помогите написать код некоторых пунктов задачи.
Имеется запись о багаже пассажира (кол-во вещей и общий вес вещей). Необходимо сделать следующее:
а) Определить, имеются ли два пассажира, багажи которых совпадают по числу вещей и различаются по весу не более чем на 0,5 кг.
б) Выяснить, имеется ли пассажир, багаж которого превышает багаж каждого из остальных пассажиров и по числу вещей и по весу.
в) Дать сведения о багаже, число вещей в котором не меньше, чем в любом другом багаже, а вес вещей не больше, чем в любом другом багаже.

Другие три пункта я уже сделал и вот код, которые у меня пока есть.

uses crt;
type bagaj = record
ves:double;
kol_veshei: integer;
end;

var bagage:array[1..20] of bagaj;
i,j,n,temp:byte;
rez,k:double;
a:boolean;

begin
clrscr;
writeln('Vvedite kol-vo passajirov (n <= 20):');
readln(n);
for i:=1 to n do
begin
writeln('Vvedite svedeniya o ',i,'-om bagaje passajira:');
writeln('Vvedite ves bagaja: ');
readln(bagage.ves);
writeln('Vvedite kol-vo veshei bagaja: ');
readln(bagage.kol_veshei);
end;
clrscr;

writeln('Bagage, sredniy ves odnoi veshi otlichaetsya ne bolee');
writeln('chem na 0.3 kg ot obshego srednego vesa:');
writeln;
a:=true;
for i:=1 to n do
begin
rez:=bagage.ves/bagage.kol_veshei;
if (abs(bagage.ves - rez) <= 0.3) then
begin
a:=false;
writeln('Bagage nomer ',i);
writeln('ves bagaja: ',(bagage.ves):5:2,' kg');
writeln('kol-vo veshei: ',bagage.kol_veshei);
writeln;
end;
end;
if (a) then writeln('Takogo bagaja net!');
writeln;
writeln('Kol-vo passajirov imeyushih bolee 2 veshei:');
writeln;
temp:=0;
for i:=1 to n do
if (bagage.kol_veshei > 2) then temp:=temp+1;
writeln('Takih passajirov ',temp,' chelovek');
if temp = 0 then writeln('Takih passajirov net!');

writeln;
writeln('Kol-vo veshei bolshe srednego chisla veshei: ');
writeln;
rez:=0;
temp:=0;
for i:=1 to n do
rez:=rez+bagage.kol_veshei;

for i:=1 to n do
if (bagage.kol_veshei > (rez/n)) then temp:=temp+1;
writeln('Takih veshei ',temp);
if temp = 0 then writeln('Takih veshei 0');

writeln;
writeln('Bagage iz 1 veshi s vesom ne menee 30 kg');
writeln;
temp:=0;
for i:=1 to n do
if bagage.kol_veshei = 1 then
if bagage.ves >= 30 then
temp:=temp+1;

writeln('Imeetsya ',temp,' passajirov s takim bagajom');

readln;
end.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог