Дана строка (прочитать из файла). Удалить из неё все знаки препинания (. ; : , ! ?)....

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

Дана строка (прочитать из файла). Удалить из неё все знаки препинания (. ; : , ! ?). Результат вывести на экран.


Информатика (17 баллов) | 42 просмотров
0

Паскаль

Дан 1 ответ
0 голосов

Var f: text;
    s,st: string;
    i: integer;
begin 
   st:='.:;,!?';
   assign (f,'C:\input.txt');
   reset (f);
   read (f,s);
   close(f);
   writeln('считана строка:  ',s);
   i:=1;
   repeat
     if pos(s[i],st)>0 then
     begin
       delete(s,i,1);
       i:=i-1;
    end;
    i:=i+1;
  until i>length(s);
  writeln('новая строка:  ',s);
  readln;
end.

(9.7k баллов)
0

забыл дописать нужно вывести это в отдельный файл (условие и итог)

0

Обе строки, или последнюю выводить в файл?

0

Обе

0

var f: text;
    s,st: string;
    i: integer;
begin 
   st:='.:;,!?';
   assign (f,'C:\input.txt');
   reset (f);
   read (f,s);
   close(f);
   writeln('считана строка:  ',s);
   assign(f,'C:\output.txt');
   rewrite(f);
{запись в файл исходной строки}   
   writeln(f,s);
{цикл по строке}   
   i:=1;
   repeat
     if pos(s[i],st)>0 then
     begin
       delete(s,i,1);
       i:=i-1;
    end;
    i:=i+1;
  until i>length(s);
  writeln('новая строка:  ',s);
{ запись в файл новой строки}  
  

0

Немного не вошло     { запись в файл новой строки}  
  writeln(f,s);
  close(f);
  readln;
end.