uses crt;
const
nmax = 1000;
cf = ['0' .. '9'];
var
n, i, j: integer;
s: array [1 .. nmax] of char;
begin
clrscr;
repeat
write('Размер последовательности от 3 до ', nmax, ' n=');
readln(n);
until (n > 2) and (n <= nmax);
writeln('Введите ', n, ' символов, в том числе группы цифр:');
for i := 1 to n do
begin
write('s[', i, ']=');
readln(s[i]);
end;
clrscr;
writeln('Исходная последовательность:');
for i := 1 to n do
write(s[i]);
writeln;
writeln;
i := 3;
while i < n do { проверим до предпоследнего символа }
if (s[i - 2] in cf) and (s[i - 1] in cf) and (s[i] in cf) then
begin
while (i < n) and (s[i] in cf) do
begin
for j := i to n - 1 do
s[j] := s[j + 1];
n := n - 1;
end;
end
else
i := i + 1;
if (s[n - 2] in cf) and (s[n - 1] in cf) and (s[n] in cf) then
n := n - 1; { последний символ }
writeln('Удаление лишних цифр:');
for i := 1 to n do
write(s[i]);
readln
end.
Похожие записи/страницы:
- Даны символы S1, S2... Известно, что символ S1 отличен от пробела, и что среди S2, S3 ... имеется хотя бы один…
- Дано натуральное число n, символы S1..Sn. Определить число вхождений в последовательность S1..Sn группы букв…
- Разработать меню для запуска программ - Pascal(Паскаль)
- Дана матрица m*n. Получить последовательность Ca, где каждый элемент - произведение квадратов тех элементов a-й…
- В одномерном массиве А=(а1, а2, ..., аn) группу, содержащую наибольшее число подряд идущих положительных…
- Даны натуральное число n, действительная квадратная матрица n-го порядка, действительные числа (А1,....,Аn+5).…
- Дана последовательность целых чисел. С помощью функции обеспечить запись этой последовательности в двоичной или…
- Вставить в массив, введенный с клавиатуры, символ на место,соответствующее таблице кодов ASCII - Pascal(Паскаль)