{Напишите программу, которая находит минимальное и максимальное
среди чётных положительных чисел, записанных в файле,
и выводит результат в другой файл.}
var f:text;
min, max,a :integer;
find:boolean;{есть/нет числа удовлетворяющие условию}
begin
assign(f,'dan.txt'); reset(f);
min:=0; max:=0;
find:=false;
while not eof(f) do
begin
read(f,a);
if not find and (a>0) and (a mod 2=0) then
begin
min:=a; find:=true;
end
else
if find and (a>0) and (a mod 2=0) and (min>a) then
min:=a;
if (a>0) and (a mod 2=0) and (max<a) then
max:=a;
end;
close(f);
assign(f,'res.txt');
rewrite(f);
if max=0 then writeln(f,'чётных положительных чисел нет')
else
writeln(f,'min среди чётных положительных чисел =',min, chr(13),
'max среди чётных положительных чисел нет',max);
close(f);
end.
Подробнее - на -
Объяснение:
Поделитесь своими знаниями, ответьте на вопрос:
Маалыматты олчоо учун канча ыкма колдонулат?
Тут у нас импликация(если..то...), комбинированная с конъюнкцией(и).
Таблица истинности импликации(стрелочки):
0 0 1
0 1 1
1 0 0
1 1 1
Общее правило: если a<=b, тогда правда
Таблица истинности конъюнкции(/\):
0 0 0
0 1 0
1 0 0
1 1 1
Общее правило: если есть одна ложь-всё ложь.
Про НЕ и гуманитарий поймёт.
Про данный пример:
Нам нужен вариант, где оба выражения являются правдой, т.к. между ними стоит И
Подробно рассмотрим первый вариант:
Ирина
Первая буква гласная-правда
Вторая буква гласная-ложь
Значит, результат импликации-ложь, в чём можно убедиться взглянув на таблицу истинности, но, так как НЕ так же присутствует в данном условии, это выражение возвращает правду.
Последняя буква гласная-правда
Так как оба выражения при конъюнкции правда, всё выражение является правдой и удовлетворяет условию.