Помощь - Поиск - Пользователи - Календарь
Полная версия: Обработка текстового файла
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
-=BR@BUS=-
У меня дан текстовый файл. Получить новый файл, образованный из первого заменой всех его строчных (маленьких) букв прописными (большими).

Program My;
uses crt;
Var m,f:text;
    ch:string;
     i:integer;
Function UpStr(S:char):char;
Begin
	if (s='ё') then 
	s:=chr(168) else
	if ('а'<=s) and (s<='п') then
	s:=chr(ord(s)-32) else
	if ('р'<=s) and (s<='я') then
	s:=chr(ord(s)-32) else
	s:=UpCase(s);
       	UpStr:=S;
end;

begin
     clrscr;
     assign (f,'input.txt');
     reset (f);
     assign (m,'output.txt');
     Rewrite (m);
     While not EOF(f) do begin
     readln(f,ch);
       for i:=1 to length(ch) do begin
       ch[i]:=UpStr(ch[i]);
       write(m,ch[i]);
     end;
        end; 
         Close(f);
           close(m);
  end.



Но у меня выходной файл записывается в одну строку, чё делать?


P.S. Программа должна считывать файл input.txt построчно.
volvo
Цитата
чё делать?

While not EOF(f) do begin
  readln(f,ch);
  for i:=1 to length(ch) do begin
    ch[i]:=UpStr(ch[i]);
    write(m,ch[i]);
  end;
  writeln(m); { <--- Добавить вот это... }
end; 
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.