В программе предполагается, что слова отделяются друг от друга одним пробелом, знаков препинания нет.
const m=3;
var s:string;
sl:array[1..m] of string=('ЗНАЧИТ', 'ВОТ', 'АВТОМОБИЛЬ');
n:array[1..m] of integer;
i:integer;
procedure pr(s1,s2:string; var k:integer);
var l,p:integer;
begin
s1:=' '+s1+' ';
l:=length(s2);
k:=0;
p:=pos(s2,s1);
while p>0 do
begin
if (s1[p-1]=' ')and(s1[p+l]=' ') then k:=k+1;
delete(s1,1,p+l);
p:=pos(s2,s1);
end;
end;
begin
writeln('Введите текст:');
readln(s);
for i:=1 to m do
begin
pr(s,sl[i],n[i]);
writeln(sl[i],' - ',n[i]);
end;
end.
Пример (слов меньше 40):
Введите текст:
ЗНАЧИТ ТАК ВОТ АВТОМОБИЛЬ РАЗ ВОТ АВТОМОБИЛЬ ДВА ВОТ АВТОМОБИЛЬ ТРИ
ЗНАЧИТ - 1
ВОТ - 3
АВТОМОБИЛЬ - 3
<h3>PascalABC.NET 3.4.2, сборка 1887 от 30.11.2018</h3><h3>Внимание! Если программа не работает, обновите версию!</h3>
begin
var a := ArrRandom(ReadInteger('n='), -50, 50);
a.Println;
a.Transform(t -> t.IsEven ? t + 1 : t * 2);
a.Println
end.
var a,b: array[1..10] of Integer;
i,n: integer;
begin
n:=1;
for i:=1 to 10 do readln(a[i]);
for i:=1 to 10 do
begin
if a[i]<>0 then
begin
b[n]:=a[i];
inc(n);
end;
end;
if n=1 then writeln('Элементов нет') else
for i:=1 to n-1 do writeln(b[i]);
end.
173.35=1.386.8
6363=6,515,712 или 795,375
568328=71,041
4,25=4,352
232=232
Var a,b,c:longint;
Begin
read(a,b,c);
if c mod 2=1 then
writeln('Нечетное') else
writeln('Четное');
if ((c>=a) and (c<=b)) then
writeln('YES') else
writeln('NO');
<span>End.</span>