profile
Опубликовано 6 лет назад по предмету Информатика от glam007goofy

помогите пожалуйста:


Напиши цифровой фильтр. На вход программе подаётся строка символов. На выходе должны быть только её цифры. Например, если на входе была строка
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.

  1. Ответ
    Ответ дан HRAshton
    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.
Самые новые вопросы