Liczby podzielne przez 3 w pliku wynikowym.

0

Witam serdecznie,

proszę o pomoc z programem. Poniżej polecenie oraz mój kod. Z góry dziękuję za pomoc i pozdrawiam.

Napisz program przepisujący liczby podzielne przez 3 z jednego pliku do drugiego. Program powinień przyjmować dwa argumeny: nazwę pliku wejściowego i nazwę pliku wyjściowego.

Przykładowy plik dane.txt
345
0
123
59
-24
34
3
17

Wywołanie programu:
program dane.txt wynik.txt

Program powinień utworzyć następujący plik wynik.txt
345
0
123
-24
3

program pliki;

var 
   dane,wynik:string;

procedure przepisywanie(vard,varw:string);
var 
   txtd,txtw:text;
   linia:integer;
begin
 assign(txtd, vard);
 assign(txtw, varw);
 reset(txtd);
 rewrite(txtw);
 
 while not eof(txtd) do
  begin
   readln(txtd,linia);
   if linia mod 3 = 0 then writeln(txtw,linia);
  end;
 
 close(txtd);
 close(txtw);
end;

BEGIN
 readln(dane, wynik);
 przepisywanie(dane, wynik);
END.
0

dostęp do argumentów programu:
ParamCount zwraca ilość parametrów, trzeba sprawdzić czy jest dwa
ParamStr(1) - pierwszy
ParamStr(2) - drugi

0

Linia : Integer i czytana z pliku Text? To nie będzie działać
Ja bym jednak dał Linia : String i potem procedurą Val przerabiał na integer.

0

dane i wynik powinieneś odczytać z ParamStr - jak podpowiedział _13th_Dragon - a nie za pomocą ReadLn.

1 użytkowników online, w tym zalogowanych: 0, gości: 1