помогите пожалуйста:Напиши цифровой фильтр. ** вход программе подаётся строка символов....

0 голосов
109 просмотров
помогите пожалуйста:


Напиши цифровой фильтр. На вход программе подаётся строка символов. На выходе должны быть только её цифры. Например, если на входе была строка
He110, k177en!
то на выходе должно быть
110177

2. В строке, состоящей из слов, разделённых одним или несколькими пробелами, вывести второе слово. Например, если на вход программе подавалась строка
Меня истина манит сияньем
то на выходе будет
истина

На вход подаётся строка. Вывести часть входной часть строки. Часть строки задаётся номером первого символа и количеством символов.

var
s: string;
n, k, i: integer;
Begin
readLn(s, n, k);
for i := n to n+k-1 do write(s[i]);
End.


2. На вход подаётся предложение на английском языке. Вывести все гласные строки в том порядке, в котором они встречались в строке.


(ключевой фрагмент)
for i := 1 to length(s) do
if s[i] in ['A', 'E', 'I', 'O', 'Y', 'a', 'e', 'i', 'o', 'y']
then write(s[i]);


Варианты программы определения, является ли строка полиндромом
--------------------------------------------------------------
var
s, s1: string;
i: integer;
Begin
readLn(s);
s1 := '';
for i := 1 to length(s) do s1 := s[i] + s1;

write('строка ');
if s1 <> s then write('не ');
writeLn('является полиндромом');
End.



var
s: string;
i, j: integer;
Begin
readLn(s);

i := 1;
j := length(s);
while (i < j) and (s[i] = s[j]) do begin
inc(i);
dec(j);
end;
write('строка ');
if s[i] <> s[j] then write('не ');
writeLn('является полиндромом');
End.



Информатика (28 баллов) | 109 просмотров
Дан 1 ответ
0 голосов

Var a: string;
    i: integer;
begin
     readln(a);
     for i := 1 to length(a) do
         if (a[i] in ['0'..'9']) then write(a[i]);
end.

2) Тут лучше: на входе строка, а берётся часть между 1 и 2 пробелами, ответ уже есть под задачей х)
var a, b: string;
    i: integer;
    w: boolean;
begin
     readln(a);
     for i := 1 to length(a) do
     begin
         if ((a[i] = ' ')) then
            if (length(b) = 0) then w := true else w:=false;
         if (w) then b := b + a[i];
     end;
     writeln(b);
end.

3)
var s: string;
    i: integer;
begin
     readln(s);
     for i := 1 to length(s) do
     if s[i] in ['A', 'E', 'I', 'O', 'Y', 'a', 'e', 'i', 'o', 'y']
        then write(s[i]);
end.

(16.9k баллов)