Vedrus » 13 окт 2007, 08:53
Тряхнуть стариной... Может кого спасёт
Код: Выделить всё
Var sScob, {текст в скобках}
s: String;
i, {номер символа в строке}
countA, {количество букв "а"}
oScob, {позиция открывающей скобки}
cScob: Integer; {позиция закрывающей скобки}
Begin
{Ввести строку и подсчитать количество символов в ней}
WriteLn('Введите строку:');
ReadLn(s);
WriteLn('Число символов (включая пробелы): ', Length(s));
{В строке есть как минимум один символ "а", определить их количество}
countA := 0;
for i := 1 to Length(s) do
if s[i] = 'а' then
Inc(countA);
WriteLn('В строке ', countA, ' символов ''а''');
{--//-- символ "б", предусмотреть вывод на экран всех позиций "б" в строке}
Write('Позиции ''б'': ');
for i := 1 to Length(s) do
if s[i] = 'б' then
Write(i, ', ');
WriteLn;
{вывести текст в скобках}
oScob := pos('(', s);
cScob := pos(')', s);
if (oScob > 0) and (cScob > oScob) then
sScob := Copy(s, oScob+1, cScob-oScob-1)
else
sScob := 'Скобки заданы неверно';
WriteLn('Текст в скобках (в отдельной переменной): ', sScob);
{удалить из строки вместе со скобками}
if (oScob > 0) and (cScob > oScob) then
begin
Delete(s, oScob, cScob-oScob+1);
WriteLn('Строка без скобок: ', s)
end
End.
Тряхнуть стариной... Может кого спасёт
[code]
Var sScob, {текст в скобках}
s: String;
i, {номер символа в строке}
countA, {количество букв "а"}
oScob, {позиция открывающей скобки}
cScob: Integer; {позиция закрывающей скобки}
Begin
{Ввести строку и подсчитать количество символов в ней}
WriteLn('Введите строку:');
ReadLn(s);
WriteLn('Число символов (включая пробелы): ', Length(s));
{В строке есть как минимум один символ "а", определить их количество}
countA := 0;
for i := 1 to Length(s) do
if s[i] = 'а' then
Inc(countA);
WriteLn('В строке ', countA, ' символов ''а''');
{--//-- символ "б", предусмотреть вывод на экран всех позиций "б" в строке}
Write('Позиции ''б'': ');
for i := 1 to Length(s) do
if s[i] = 'б' then
Write(i, ', ');
WriteLn;
{вывести текст в скобках}
oScob := pos('(', s);
cScob := pos(')', s);
if (oScob > 0) and (cScob > oScob) then
sScob := Copy(s, oScob+1, cScob-oScob-1)
else
sScob := 'Скобки заданы неверно';
WriteLn('Текст в скобках (в отдельной переменной): ', sScob);
{удалить из строки вместе со скобками}
if (oScob > 0) and (cScob > oScob) then
begin
Delete(s, oScob, cScob-oScob+1);
WriteLn('Строка без скобок: ', s)
end
End.
[/code]