ПРОГРАММУ НА ! Алгоритм вычисления значения функции F(n), где n - натуральное число, задан следующими соотношениями:
F(n) = 2*n*n + 4*n + 3, при n <= 15
F(n) = F(n-1) + n*n + 3, при n > 15, кратных 3
F(n) = F(n-2) + n - 6, при n > 15, не кратных 3
Определите количество натуральных значений n из отрезка [1; 1000], для которых все цифры значения F(n) нечётные.
A,R:real;
i,L,z:integer;
S:string;
Begin
Read(S);
L:=Length(S);
i:=1;
R:=0;
While (S[i]in['0'..'9'])and(i<L) do
Begin
R:=R*10+StrToInt(S[i]);
i:=i+1
End;
While i<L do
Begin
Case S[i] of
'+':z:=0;
'-':z:=1;
'*':z:=2;
'/':z:=3;
End;
i:=i+1;
A:=0;
While (S[i]in['0'..'9'])and(i<L) do
Begin
A:=A*10+StrToInt(S[i]);
i:=i+1
End;
if i=L then A:=A*10+StrToInt(S[L]);
Case z of
0:R:=R+A;
1:R:=R-A;
2:R:=R*A;
3:R:=R/A;
End;
End;
WriteLn('R = ',R);
End.
Var s:string;
i,k:integer;
Begin
writeln('Введите строку');
readln(s);
k:=0;
for i:=1 to length(s) do
begin
if s[i]=' ' then k:=k+1;
end;
writeln('Количество слов в предложении = ',k+1);
end.
А эта программа позволяет находить количество слов в предложении, если слова разделены одним или несколькими пробелами:
var s: string;
i, k: integer;
begin
k := 0;
writeln('Введите строку: ');
readln(s);
s:= ' ' + s;
for i:=1 to length(s)-1 do
if (s[i] = ' ') and (s[i+1] <> ' ') then k:=k+1;
writeln(k)
end.