Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C++&Pascal] Мини текстовый редактор


Автор: nitrak 2.6.2008, 14:57
Дан текстовый массив А из N элементов.
максимальное значение N=127
 разделить его на предложения по знакам '.',‘;’, ‘?’,'!'  
и написать каждое предложение с красной строки (отступив 5 символов).

Автор: mr.Anderson 2.6.2008, 15:11
nitrak, в каждом элементе - строка или символ? Не особо понятно из условия.

Автор: nitrak 2.6.2008, 15:24
в каждом элементе набор символов или один символ
пример: "slekfjh;kl" или "e".  вроде так

Автор: mr.Anderson 2.6.2008, 15:38
Ясно. Ща напишем что-нибудь...

Добавлено через 2 минуты и 51 секунду
Конец текущего элемента означает конец предложения или нет?

Добавлено через 11 минут и 42 секунды
Хорошо, посчитаем, что конец элемента - не конец предложения (по условию, вроде, так). Тогда код такой:
Код

program Project1;

{$APPTYPE CONSOLE}

uses
 SysUtils;

const
 n = 3;

var
 a : Array [1..n] of String = ( 's', 'asdasd;asdasd', 'mom.ssdX.' );
 w : String;
 i : Integer;
 j : Integer;

begin
 w := '';
 
 for i:=1 to n do
 begin
  for j:=1 to Length(a[i]) do
   if( not (a[i,j] in ['.',';','?','!']) ) then
    w := w + a[i,j]
   else
   begin
    if( w <> '' ) then
     writeln( '     ' + w )
    else writeln( 'syntax error: sentence is empty.' );
    
    w := '';
   end;
 end;

 readln;
end.

То же самое на чистом паскале:
Код

program Program1;

const
 n = 3;

var
 a : Array [1..n] of String = ( 's', 'asdasd;asdasd', 'mom.ssdX.' );
 w : String;
 i : Integer;
 j : Integer;

begin
 w := '';
 
 for i:=1 to n do
 begin
  for j:=1 to Length(a[i]) do
   if( not (a[i,j] in ['.',';','?','!']) ) then
    w := w + a[i,j]
   else
   begin
    if( w <> '' ) then
     writeln( '     ' + w )
    else writeln( 'syntax error: sentence is empty.' );
    
    w := '';
   end;
 end;

 readln;
end.

Автор: mr.Anderson 2.6.2008, 16:50
Ну помогло ли?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)