Var n, q, v, i: integer; begin writeln('Введите количество чисел, которые вы будете вводить'); readln(n); q:=0; for i:=1 to n do begin writeln('Введите целое число'); readln(v); if v=7 then Inc(q); end; writeln('В введённой вами последовательности ', q, ' чисел равных семи');
end.
{---Пример} Количество чисел 5 1 15 7 8 7 Количество чисел равных семи равно 2
Обозначим P,Q,A утверждение что х принадлежит соответствующему отрезку ¬А отрицание А, то есть х не принадлежит А перепишем и упростим исходную формулу P→((Q∧¬A)→P) известно что X→Y=¬X∨Y (доказывается просто, например через таблицу истинности) тогда: P→(¬(Q∧¬A)∨P) раскроем скобку ¬(Q∧¬A) с закона де Моргана (стыдно их не знать, если что это такие же основы как и таблицы истинности) P→(¬Q∨¬¬A∨P) = P→(¬Q∨A∨P) = ¬P∨¬Q∨A∨P ¬P∨P=1 то есть всегда истинно и 1∨Х=Х значит ¬P и P можно убрать остается ¬Q∨A Значит х либо принадлежит А либо не принадлежит Q для выполнения этого условия необходимо чтобы все значения Q принадлежали А, тогда минимальное А совпадает с Q ответ А=[40,77]
n, q, v, i: integer;
begin
writeln('Введите количество чисел, которые вы будете вводить');
readln(n);
q:=0;
for i:=1 to n do begin
writeln('Введите целое число');
readln(v);
if v=7 then Inc(q);
end;
writeln('В введённой вами последовательности ', q, ' чисел равных семи');
end.
{---Пример}
Количество чисел 5
1 15 7 8 7
Количество чисел равных семи равно 2