![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
1 заменить "о" на "а"
2 определить количество цифр в тексте, подсчитать их сумму 3 удалить все цифры из текста 4 подсчитать количество (суммарное вхождение букв "м" и "н"), стоящих на нечетных позициях ![]() |
|
#2
|
|||
|
|||
|
Код:
procedure TForm1.Button1Click(Sender: TObject);
Var
i:Integer;
S,S1:String;
SumChisel,SumBukvMH:Integer;
begin
SumChisel:=0;
SumBukvMH:=0;
S1:='';
S:='Это 1 исходный текст для выполнения 4 задий';
Edit1.Text:=S; //только для наглядности
for i:=1 to Length(S) do
begin
if (LowerCase(S[i])='o') or (LowerCase(S[i])='о') then
S[i]:='a';
if (S[i]<>'0') and (S[i]<>'1') and (S[i]<>'2') and (S[i]<>'3') and (S[i]<>'4')and
(S[i]<>'5') and (S[i]<>'6') and (S[i]<>'7') and (S[i]<>'8') and (S[i]<>'9') then
S1:=S1+S[i]
else SumChisel:=SumChisel+StrToInt(S[i]);
if (LowerCase(S[i])='н') or (LowerCase(S[i])='м') and (i mod 2 <> 0) then
SumBukvMH:=SumBukvMH+1;
end;
S:=S1;
Edit2.Text:=S;
Label1.Caption:='Сумма чисел = '+ IntToStr(SumChisel);
Label2.Caption:='Сумма букв "н" и "м" = '+ IntToStr(SumBukvMH);
end; |
|
#3
|
||||
|
||||
|
4 задач - 4 функции
Код:
function Replace_a_To_o(value: String): String;
begin
Result := StringReplace(Value, 'а', 'о', [rfReplaceAll, rfIgnoreCase]);
end;
function Digets_Count_and_Sum(Value: String; var Sum: Integer): Integer;
var
i: Integer;
begin
Result := 0;
Sum := 0;
for i := 1 to Length(Value) then
if Value[i] in ['0'..'9'] then
begin
Inc(Result);
Inc(Sum, StrToInt(Value[i]));
end;
end;
function Delete_Digets(Value: String): String;
var
i: Integer;
begin
Result := '';
for i := 1 to Length(Value) do
if not (Value[i] in ['0'..'9']) then Result := Result + Value[i];
end;
function Count_m_And_n(Value: String): Integer;
var
i: Integer;
begin
Result := 0;
for i := 1 to Length(Value) do
if (AnsiLowerCase(Value[i]) in ['м', 'н']) and odd(i) then
Inc(Result);
end;Код:
var
i, c1, c2, s: integer;
Value, tmp: String;
begin
...blah-blah-blah...
tmp := '';
c1 := 0;
c2 := 0;
s := 0;
for i := 1 to Length(Value) do
case Value[i] of
'o': tmp := tmp + 'a';
'0'..'9': begin
Inc(c1);
Inc(s, StrToInt(Value[i]));
end;
'м'..'н': if Odd(i) then Inc(c2);
else tmp := tmp + Value[i];
end;
Value := tmp;
end;Последний раз редактировалось dr. F.I.N., 15.06.2011 в 17:13. |