Var
S,C,C1,R:string;
i,j,m,n,k:integer;
Begin
Write('Введите строку: ');
ReadLn(S);
i:=1;
LowerCase(S);
While S[i]<>' ' do
Begin
C:=C+S[i];
i:=i+1
End;
i:=i+1;
For i:= i to Length(S) do
if (S[i]<>' ')and(i<>Length(S)) then C1:=C1+S[i]
else
Begin
k:=1;
j:=1;
For j:= 1 to Length(C1) do
Begin
n:=0;
For m:= 1 to Length(C) do
if C1[j] = C[m] then n:=1;
if n = 0 then k:=0
End;
if (k = 1)and(C1 <> '') then R:=R+C1+' ';
C1:='';
End;
if R = '' then WriteLn('Нет')
else WriteLn(R)
End.
<span>Альберт Дитрих; Карл Альберт; Дитрих Фридрих; Фридрих Карл.
</span>
Попробуйте такой вариант:
programm one
var n, i: integer;
S: real;
begin
readln(n);
while(i != n)
begin
s := s + 1/((2*n+1)*(2*n+1));
i = i+1;
end;
writeln(s);
readln();
end.
Const
n=15;
var
s:array[1..n] of real;
st,p:real;
i,k:integer;
begin
Writeln('Введите ',n,' сумм остатков');
st:=0;
for i:=1 to n do
begin Read(s[i]); st:=st+s[i] end;
Writeln('Удельные веса остатков по магазинам');
k:=0;
for i:=1 to 15 do
begin
p:=s[i]/st*100;
Writeln(i,' - ',p:0:1);
if p>12 then Inc(k)
end;
Write('Количество магазинов с уд. весом остатков >12%, равно ');
Writeln(k)
end.
<em><u>Тестовое решение:</u></em>
Введите 15 сумм остатков
0.37 1.5 2.11 3.4 9.3 2.89 4 0.85 0 0.73 4.2 5.05 3.5 2.18 0.94
Удельные веса остатков по магазинам
1 - 0.9
2 - 3.7
3 - 5.1
4 - 8.3
5 - 22.7
6 - 7.0
7 - 9.8
8 - 2.1
9 - 0.0
10 - 1.8
11 - 10.2
12 - 12.3
13 - 8.5
14 - 5.3
15 - 2.3
Количество магазинов с уд. весом остатков >12%, равно 2
<em><u>Полное решение по заданию находится в файле формата MS Word-2003</u></em>