В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
silwana2002
silwana2002
23.12.2022 07:43 •  Информатика

Дана строка. вывести слова содержащие 'ар' использовать процедуру разбиения строки на слова. написать на языке pascal.

Показать ответ
Ответ:
tonplaton
tonplaton
10.10.2020 11:47

Procedure DivideALine(Line:String);

Var

 I:Integer;

 W:String;

Begin

  If Line[Length(Line)]<>' '

  Then

     Line:=Line+' ';

  W:=' ';

  For I:=1 To Length(Line) Do

     If Line[I]<>' '

     Then

        W:=W+Line[I]

     Else

       Begin

          WriteLn(W);

          W:='';

       End;

End;

0,0(0 оценок)
Ответ:
АндрейXXXМ
АндрейXXXМ
10.10.2020 11:47

const

 nn = 25; // максимум слов

var

 a: array[1..nn] of string[20];

 

procedure Parser(s: string; var k: integer);

var  

 i,n: integer;

 w: string;

begin  

 w := '';

 k := 0;

 n := length(s);

 for i := 1 to n do

   if s[i] <> ' ' then w := w + s[i]

   else

     if length(w) > 0 then

     begin

       k := k + 1;

       a[k] := w;

       w := '';

     end;

 if length(w) > 0 then

 begin

   k := k + 1;

   a[k] := w;

 end;

end;

 

var

 s: string[254];

 i, k: integer;

 

begin

 Readln(s);

 Parser(s, k);

 for i := 1 to k do

   if Pos('ар', a[i]) > 0 then

     write(a[i], ' ');

end.

Программа уровня Турбо Паскаль

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота