Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2011, 21:25   #1
mishanya6
Пользователь
 
Регистрация: 04.11.2011
Сообщений: 10
Восклицание Линейные списки

ЗАДАНИЕ:
Дан текстовый файл Inlet.in, хранящий элементы Л1-списка символьного типа. Подсчитать число таких слов, образованных значениями элементов рассматриваемого Л1-списка, которые начинаются и заканчиваются одинаковыми символами.
Определение : Группа элементов Л1-списка не содержащая символ пробел внутри себя называется СЛОВОМ.
Результат вывести в текстовый файл Outlet.out.
Спецификация ввода : Текст из символов алфавита
Спецификация вывода : Количество искомых слов.

Вот что у меня есть, нужно ток переделать, чет не получаетсяprogram ATD;
{$APPTYPE CONSOLE}
uses
SysUtils,
L1U;

type
inf=record
text:string[100];
proc:real;
end;
const
n=6 ;
Var
a: array [1..n] of real;
f: text;
s: string ;
y,we:string;
i,x,p,z,j: integer;
min,per:real;
L:L1;
Elem : Variant;
b:array [1..n] of inf;
be:inf;
begin
assignfile (f,'Inlet.in');
reset (f);
Readln (f,S);
close (f);
L:=L1.Create('ATD');
L.Empty;
While length(S)>0 do
begin
x:= pos ('.',S);
y:=copy (S,1,x-1);
Delete (S,1,x);
Elem:=y;
L.GoToL;
L.PutBf(Elem);
end;
L.Show;
writeln;
writeln;
p:=1;
While not (L.IsEmpty) do
begin
i:=0;
l.GoToF;
l.GetBh(elem);
y:=elem;
we:=y;
writeln (y);
repeat
begin
x:=pos(' ',y);
i:=i+1;
delete (y,x,1);
end
until x=0;
if i=1 then i:=0
else i:=i-1;
writeln ('kovichestvo probelov = ', i);
z:=length (we);
writeln ('dlina= ', z);
if i=0 then A[p]:= -1 else
A[p]:=i/z;
writeln ('procent = ', a[p]*100:2:2,'%');
writeln ;
b[p].text:=we;
b[p].proc:=a[p];
p:=p+1;
l.DelBf;
end;
for j:=1 to n-1 do
for p:=1 to n-1 do
if (b[p].proc >= B[p+1].proc) then
begin
be := b[p];
B[p]:= B[p+1];
B[p+1]:= be;
end;
assignfile (f,'Outlet.out');
rewrite (f);
write (f,b[1].text);
close(f);
l.Destroy;
readln;

{ TODO -oUser -cConsole Main : Insert code here }
end.
mishanya6 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Линейные списки Anny_Apple Паскаль, Turbo Pascal, PascalABC.NET 0 04.04.2011 22:18
Линейные списки ]tach[ Помощь студентам 0 19.01.2011 16:59
Линейные списки svt Помощь студентам 1 20.11.2010 08:22
Линейные списки Dead Romantic Помощь студентам 0 30.05.2010 21:35