Страница 1 из 2

Pascal.Строки

Добавлено: 22 май 2009, 22:59
Блондиночка
Уважаемые программисты!! нужна ваша помощь, решите пожалуйста одну задачку:
Дана последовательность символов латинского алфавита и пробелов. Группу символов, разделенную с одной или обеих сторон пробелами и не содержащую внутри себя пробелов, назовем словом. Поменять порядок следования букв на обратный в тех словах, которые имеют наибольшую длину. Подсчитать количество таких слов.

Re: Pascal.Строки

Добавлено: 23 май 2009, 19:33
Sheka

Код: Выделить всё

program maxl;

var
  fin,fout:text;
  c:char;
  s:string;
  i,lenmax:integer;
  kol:longint;

procedure fromin;
begin
read(fin,c);
if c=' ' then begin
  if s<>'' then begin
    if lenmax=length(s) then inc(kol);
    if lenmax<length(s) then begin
      lenmax:=length(s);
      kol:=1;
      end;
    s:='';
    end;
  fromin;
  end
else s:=s+c;
end;

procedure intoout;
begin
read(fin,c);
if c=' ' then begin
  if s<>'' then begin
    if length(s)=lenmax then begin
      for i:=lenmax downto 1 do write(fout,s[i]);
      write(fout,' ');
      end
    else write(fout,s,' ');
    s:='';
    end
  else if (c=#32)or(c=#13)then write(fout,c);
  intoout;
  end
else s:=s+c;
end;



BEGIN

s:='';
assign(fin,'in.txt');
reset(fin);
while not eof(fin) do fromin;
close(fin);

assign(fin,'in.txt');
reset(fin);
assign(fout,'out.txt');
rewrite(fout);
s:='';
while not eof(fin) do intoout;

writeln(fout);writeln(fout);
writeln(fout,kol);
close(fin);
close(fout);

END.

Re: Pascal.Строки

Добавлено: 24 май 2009, 10:11
Блондиночка
большое спасибо!!!!!

Re: Pascal.Строки

Добавлено: 26 май 2009, 05:04
Oleg_Rus
Граждане, не забывайте про раздел "алгоритмы" - там я разъяснял решение подобных задач

Re: Pascal.Строки

Добавлено: 30 май 2009, 17:47
Блондиночка
Sheka большое спасибо что решил, но препод сказал что задача не должна обращаться к файлам или что то вроде того :confused:

fin,fout:text; и всё что с этим связано лишнее :(

если не затруднит не мог бы ты убрать это самое "лишнее" пожалуйста....

Re: Pascal.Строки

Добавлено: 30 май 2009, 20:57
Sheka
Блондиночка писал(а): задача не должна обращаться к файлам
откуда тогда берется эта строка? :confused:

Re: Pascal.Строки

Добавлено: 01 июн 2009, 23:09
Блондиночка
может с клавиатуры вводится?

Re: Pascal.Строки

Добавлено: 02 июн 2009, 10:57
Sheka
Блондиночка писал(а):может с клавиатуры вводится?
тогда я думаю надо использвать массив строк.

Re: Pascal.Строки

Добавлено: 02 июн 2009, 11:08
Блондиночка
может быть можно ввести с клавиатуры, например
jgdfjghdf dkjghdfjghdk djghjfgh fjghfjghfjg. это и будут слова, разделённые пробелами. А которые длиннее,скажем,6 символов - в тех и меня порядок букв?
так нельзя сделать?

Re: Pascal.Строки

Добавлено: 02 июн 2009, 11:14
Sheka
тебе же надо самые длинные, а не те которые >6