Давайте разбираться. s>A or t>11 - это условие будет выполняться тогда, когда хотя бы одно из неравенств выполнится и это важно: нам не обязательно, чтобы выполнялись оба неравенства. Рассмотрим наборы, у которых второе число больше 11:
(5,12) - единственный набор.
У нас осталось 8 наборов, из которых 3 раза должно вывестись NO.
Найдём самые маленькие значения у первой цифры в наборах:
(-9,11) , (2,7) и (2,-2).
Нам нужно, чтобы эти три набора не выполнились, а значит эти цифры не должны оказаться больше чем А. Наименьшим А, которое нас в таком случае устраивает будет 2
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.
Давайте разбираться. s>A or t>11 - это условие будет выполняться тогда, когда хотя бы одно из неравенств выполнится и это важно: нам не обязательно, чтобы выполнялись оба неравенства. Рассмотрим наборы, у которых второе число больше 11:
(5,12) - единственный набор.
У нас осталось 8 наборов, из которых 3 раза должно вывестись NO.
Найдём самые маленькие значения у первой цифры в наборах:
(-9,11) , (2,7) и (2,-2).
Нам нужно, чтобы эти три набора не выполнились, а значит эти цифры не должны оказаться больше чем А. Наименьшим А, которое нас в таком случае устраивает будет 2
ответ: 2