На pascal abc net program test; type realarray = array of real; var step:real; a:realarray; i,n,s1,s2,s3,s4:integer; begin write('Введите количество членов последовательности: '); readln(n); step:=1/n; setlength(a,n); a[0]:=0; for i:=1 to n-1 do a[i]:=a[i-1]+step; for i:=0 to n-1 do begin if a[i]<0.25 then s1:=s1+1; if (a[i]>=0.25) and (a[i]<0.5) then s2:=s2+1; if (a[i]>=0.5) and (a[i]<0.75) then s3:=s3+1; if a[i]>=0.75 then s4:=s4+1; end; writeln('На промежутке [0,0.25) - ',s1); writeln('На промежутке [0.25,0.5) - ',s2); writeln('На промежутке [0.5,0.75) - ',s3); writeln('На промежутке [0.75,1) - ',s4); end.
4094
Объяснение:
Function newstr1(str As String, n As Integer) As String
Dim i As Integer
For i = 1 To n
str = Replace(str, "A", "BC")
str = Replace(str, "B", "AC")
str = Replace(str, "CC", "AD")
Next
newstr1 = str
End Function
Function chrcount(str1 As String, str2 As String) As Integer
Dim str() As String
str = Split(str1, str2)
chrcount = UBound(str, 1)
End Function
=chrcount(newstr1("AA";11);"D")
Excel VBA
P.S.
Для номера процедуры равного i, количество символов "D" вычисляется по формуле D(i)=2*2^i-2
program test;
type realarray = array of real;
var
step:real;
a:realarray;
i,n,s1,s2,s3,s4:integer;
begin
write('Введите количество членов последовательности: ');
readln(n);
step:=1/n;
setlength(a,n);
a[0]:=0;
for i:=1 to n-1 do a[i]:=a[i-1]+step;
for i:=0 to n-1 do begin
if a[i]<0.25 then s1:=s1+1;
if (a[i]>=0.25) and (a[i]<0.5) then s2:=s2+1;
if (a[i]>=0.5) and (a[i]<0.75) then s3:=s3+1;
if a[i]>=0.75 then s4:=s4+1;
end;
writeln('На промежутке [0,0.25) - ',s1);
writeln('На промежутке [0.25,0.5) - ',s2);
writeln('На промежутке [0.5,0.75) - ',s3);
writeln('На промежутке [0.75,1) - ',s4);
end.