Перестановка в конец строки начала каждой строки до символа с заданным номером - Free Pascal
Формулировка задачи:
Условие задачи: Перестановка в конец строки начала каждой строки до символа с заданным номером.
Работать нужно с файлами. У меня получилось типо этого
Но программе чёто не нравится..
program lab; var f1,f2:text; ch,str1,str2:string; i,n:integer; begin WRITE('Введите номер символа '); readln(n); assign(f1,'ut.TXT'); reset(f1); assign(f2,'tut.TXT'); rewrite(f2); while not EOF(f1) do begin for i:=1 to n do read(f1,ch); str1:=str1+ch; end; while eoln(f1) do begin read(f1,ch); str2:=str2+ch; end; writeln(f2,str2+str1); readln(f1); close(f2); close(f1); end.
Решение задачи: «Перестановка в конец строки начала каждой строки до символа с заданным номером»
textual
Листинг программы
var fi, fo: Text; s: String; n: Integer; begin Assign(fi,'input.txt'); Assign(fo,'output.txt'); Reset(fi); Rewrite(fo); repeat Write('Введите номер символа: '); ReadLn(n); until n>0; while not EOF(fi) do begin ReadLn(fi,s); WriteLn(fo,Copy(s,n+1,Length(s)),Copy(s,1,n)); end; Close(fi); Close(fo); end.
Объяснение кода листинга программы
- Объявлены переменные:
- fi, fo: Text; - файловые переменные для работы с файлами
- s: String; - строковая переменная для работы со строками
- n: Integer; - целочисленная переменная для работы с числами
- Присвоены значения переменным fi и fo, указывающие на файлы input.txt и output.txt соответственно.
- Открыты файлы fi и fo на чтение и запись соответственно.
- Пользователю предлагается ввести номер символа, с которого необходимо переставить строки в файле.
- Числовое значение номера символа сохраняется в переменной n.
- Пока файл не пуст, выполняется цикл:
- Считывается строка из файла fi и сохраняется в переменной s.
- В файл fo записывается подстрока начиная с символа с номером n и до конца строки.
- Перед символом с номером n вставляется подстрока начиная с первого символа и до n-1 символа.
- Закрываются файлы fi и fo.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д