Помогите написать программу ** паскале!!! Выбрать из текста слова в которых первая буква...

0 голосов
32 просмотров

Помогите написать программу на паскале!!!
Выбрать из текста слова в которых первая буква совпадает с последней, слова в тексте разделены пробелами


Информатика (47 баллов) | 32 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

//Free Pascal 2.6.4

uses
  strutils;

var
  s, t: string;
  i: integer;

begin
  write('Введите текст: ');
  readln(s);
  writeln('Найденные слова: ');
  for i := 1 to WordCount(s, StdWordDelims) do
  begin
    t := ExtractWord(i, s, StdWordDelims);
    if t[1] = t[length(t)] then writeln(t);
  end;
  readln;
end.

(13.3k баллов)
0

На Ideone.com для fpc пустой вывод даже при указании значения s путем присваивания в теле программы

0

■ Free Pascal IDE Version 1.0.12 [2014/03/06]
■ Compiler Version 2.6.4
■ GDB Version GDB 7.4
■ Using configuration files from: D:\FPC\bin\i386-win32\
Running "d:\fpc\bin\i386-win32\2.exe "
Введите текст: космос азбука баобаб импульс озеро довод конец
Найденные слова:
азбука
баобаб
озеро
довод

0

Спасибо огромное!!!

0 голосов

// PascalABC.NET 3.1, сборка 1250 от 28.05.2016
begin
  var s:=ReadlnString('Введите текст:');
  Writeln('Слова, в которых совпадают первая и последняя буквы:');
  s.ToWords.Where(x->x[1]=x[x.Length]).Println(NewLine)
end.

Тестовое решение
Введите текст: космос азбука     баобаб  импульс озеро  довод  конец
Слова, в которых совпадают первая и последняя буквы:
азбука
баобаб
озеро
довод

(142k баллов)
0

А на free pascal

0

Не люблю я его, убогий он. Если Вам надо FPC - указывайте это сразу в вопросе.

0

На Фри придется делать распознавание слов в строке. А потом так же, для каждого слова w длины k проверять совпадение w[1]=w[k]

0

StrUtils немного упрощает задачу

0

Я потому и не люблю FPС, что там нужно шаманить с библиотеками.