
15.06.2011, 13:51
|
 |
I Like it!
|
|
Регистрация: 12.12.2009
Адрес: Россия, г. Новосибирск
Сообщения: 663
Версия Delphi: D6/D7
Репутация: 26643
|
|
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;
4 задачи - одно решение:
Код:
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;
__________________
Грамотно поставленный вопрос содержит не менее 50% ответа.
Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть.
|