А) разборчивая невеста при выборе жениха руководствуется правилом: «жених должен быть старше ее, но не намного». по известным возрастам: невесты – n лет, женихов r1 лет, r2 лет, r3 лет– определить, которого она выберет– первого второго или третьего.
Uses crt; var r: array [1..10] of integer; nev, n, min,i, zap:integer; begin clrscr; write('Введите возраст невесты: '); readln(nev); write('Введите число женихов: '); readln(n); if n<2 then for i:=1 to n do begin write('Введите возраст ',i,'-го жениха: '); readln(r[i]); end;
i:=0; zap:=0; while (zap=0) and (i<=n) do begin i:=i+1; min:=nev-r[i]; if min>0 then zap:=i; end; if i<>n then begin for i:=zap to n do begin if min>(nev-r[i]) then begin zap:=i; min:=nev-r[i]; end; end; writeln('Самый молодой жених старше невесты в возрасте ',r[zap], ' лет. Разница в возрасте составляет ', min, ' лет.'); writeln ('По счету это ',i,'-ый жених'); end else writeln('Среди женихов нет подходящего для нашей невесты.'); end; else writeln('Число женихов должно быть более 2!'); end.
var r: array [1..10] of integer;
nev, n, min,i, zap:integer;
begin
clrscr;
write('Введите возраст невесты: '); readln(nev);
write('Введите число женихов: '); readln(n);
if n<2 then
for i:=1 to n do
begin
write('Введите возраст ',i,'-го жениха: '); readln(r[i]);
end;
i:=0; zap:=0;
while (zap=0) and (i<=n) do begin
i:=i+1;
min:=nev-r[i];
if min>0 then zap:=i;
end;
if i<>n then
begin
for i:=zap to n do
begin
if min>(nev-r[i]) then
begin
zap:=i;
min:=nev-r[i];
end;
end;
writeln('Самый молодой жених старше невесты в возрасте ',r[zap], ' лет. Разница в возрасте составляет ', min, ' лет.');
writeln ('По счету это ',i,'-ый жених');
end
else writeln('Среди женихов нет подходящего для нашей невесты.');
end;
else writeln('Число женихов должно быть более 2!');
end.