Задача 1
Напишите НАИБОЛЬШЕЕ число х, для которого ИСТИННО высказывание:
(x<16) И НЕ (x четное)
Задача 2
Напишите НАИБОЛЬШЕЕ число х, для которого ИСТИННО высказывание:
НЕ((x>16) ИЛИ (x<10))
Задача 3
Напишите НАИМЕНЬШЕЕ число х, для которого ИСТИННО высказывание:
НЕ((x<16) ИЛИ (x четное))
Задача 4
Напишите НАИБОЛЬШЕЕ число х, для которого ИСТИННО высказывание:
(x<=8) И (x кратно 3)
Задача 5
Напишите НАИБОЛЬШЕЕ число х, для которого ИСТИННО высказывание:
НЕ (x>=30) И (x четное)
Задача 6
Напишите НАИМЕНЬШЕЕ число х, для которого ИСТИННО высказывание:
(x>30) И (x кратно 10)
Задача 7
Напишите НАИМЕНЬШЕЕ число х, для которого ИСТИННО высказывание:
НЕ(x<50) И (x кратно 10)
Задача 8
Напишите НАИМЕНЬШЕЕ число х, для которого ИСТИННО высказывание:
НЕ(x<50) И (x кратно 20)
Задача 9
Напишите НАИБОЛЬШЕЕ число х, для которого ЛОЖНО высказывание:
НЕ(x<50) ИЛИ (x <= 20)
Задача 10
Напишите НАИМЕНЬШЕЕ число х, для которого ЛОЖНО высказывание:
(x>=50) ИЛИ НЕ(x >= 20)
Задача 11
Напишите НАИБОЛЬШЕЕ число х, для которого ЛОЖНО высказывание:
НЕ(x<50) ИЛИ (x четное)
Задача 12
Напишите НАИМЕНЬШЕЕ число х, для которого ЛОЖНО высказывание:
(x>=20) ИЛИ НЕ(x >= 10)
Задача 13*
Напишите НАИМЕНЬШЕЕ число х, для которого ИСТИННО высказывание:
(x>14) И (x кратно 3) И (x кратно 2)
Задача 14*
Напишите НАИБОЛЬШЕЕ число х, для которого ИСТИННО высказывание:
(x<8) И НЕ(x кратно 3) И (x четное)
Задача 15*
Напишите НАИМЕНЬШЕЕ число х, для которого ИСТИННО высказывание:
НЕ((x>8) ИЛИ (x < 3)) И (x четное)
{
Получает в w слово из строки s, которое начинается не ранее позиции p.
Возвращает новое значение p, указывающее на первый разделитель delim,
который следует за найденным словом или 0, если такой разделитель не найден.
По умолчанию слова разделяются не менее чем одним пробелом
}
var
i,n:integer;
fBreak:boolean; { флажок для прерывания циклов }
begin
n:=Length(s); fBreak:=False;
{ищем первый символ, отличный от разделителя - начало слова }
while ((p<=n) and (not fBreak)) do
if (p=n) or (s[p]<>delim) then fBreak:=True
else Inc(p);
{ ищем очередной разделитель - конец слова }
if p<n then begin
i:=p; Inc(p); fBreak:=False;
while (p<=n) and (not fBreak) do begin
if (p=n) or (s[p]=' ') then fBreak:=True else Inc(p)
end;
{ теперь слово находится между позициями i и p }
w:=Copy(s,i,p-i)
end;
if p>=n then p:=0
end;
function CountG(w:string):integer;
{ возвращает количество гласных в слове w}
var
i,k:integer;
begin
k:=0;
for i:=1 to length(w) do
if w[i] in ['а','е','ё','и','о','у','ы','э','ю','я'] then Inc(k);
CountG:=k
end;
var
s,w,wmax:string;
p,k,gmax:integer;
begin
Writeln('Введите текст, разделяя слова пробелами');
Readln(s);
s:=LowerCase(s);
p:=1; gmax:=0;
while p>0 do begin
GetWord(s,p,w);
k:=CountG(w);;
if gmax<k then begin gmax:=k; wmax:=w end
end;
if gmax>0 then Writeln('В слове "',wmax,'" максимум гласных, равный ',gmax)
else Writeln('Во введенной строке гласных букв не найдено')
end.