Dobrý den zadáním je: Ve vstupním textovém souboru je uložen text s řádky dlouhými až 100 znaků. Mezi každými dvěma slovy na řádku je jedna nebo více mezer, na začátku i na konci řádku být mezery mohou, ale nemusí. V souboru mohou být i prázdné řádky nebo řádky obsahující pouze mezery. Napište program, který vytvoří kopii tohoto souboru tak, aby řádky výstupního souboru byly dlouhé nejvýše N znaků (N je údaj zadaný na vstupu, menší než 100). Slova přitom nerozdělujte – pokud se na výsledný N-znakový řádek nevejde celé slovo, nechte řádek kratší a další slovo již přesuňte na začátek následujícího řádku. Na každý řádek výstupního souboru umístěte co nejvíce slov, kolik se do stanoveného limitu N znaků vejde, odstraňte při tom nadbytečné mezery na začátku řádku i mezi slovy (mezi každými dvěma slovy nechte vždy jenom jednu mezeru). Upravený text zapište do výstupního textového souboru.
Opět takový můj marný pokus něco vytvořit:
program kopie;
var vstup,vystup:text;
N,pocitadlo:integer;
znak:char;
begin
assign (vstup,'vstup.txt');
reset (vstup);
assign (vystup,'vystup.txt');
rewrite (vystup);
writeln('Zadej maximalni pocet znaku na radku: ');
readln(N);
pocitadlo:=0;
while not eof(vstup) do
begin
read(vstup,znak);
inc(pocitadlo);
if pocitadlo <= N then write(vystup,znak)
else write(vystup,#13);
end;
close(vstup);
close(vystup);
end.
Při takovém to zápisu, mi to vyvolává RunTimeError(103) na příkazu
writeln('Zadej maximalni pocet znaku na radku: ');
A dál si myslim že tam bude spousta dalších blbostí.. Děkuji za rady.