1/4 Ćwiczenie 1. Ułóż program, który wczyta i wyświetli pierwszy

Transkrypt

1/4 Ćwiczenie 1. Ułóż program, który wczyta i wyświetli pierwszy
11. Operacje na plikach tekstowych
Ćwiczenie 1. Ułóż program, który wczyta i wyświetli pierwszy wiersz pliku dane.txt.
KOD
{$APPTYPE CONSOLE}
var
plik : text;
wiersz : string;
begin
assign(plik, 'dane.txt');
reset(plik);
// otwiera plik tylko do odczytu
readln(plik, wiersz);
write(wiersz);
close(plik);
readln;
end.
ZAWARTOŚĆ PLIKU ‘dane.txt’
dni tygodnia:
-----------poniedzialek
wtorek
sroda
czwartek
piatek
sobota
niedziela
WYJŚCIE
dni tygodnia:
Ćwiczenie 2. Zmodyfikuj program z ćwiczenia 1 tak, aby wczytywał i wyświetlał wszystkie
wiersze pliku.
KOD
{$APPTYPE CONSOLE}
var
p : text;
wiersz : string;
begin
assign(p, 'dane.txt');
reset(p);
while not eof(p) do
begin
readln(p, wiersz);
writeln(wiersz);
end;
close(p);
readln;
end.
WYJŚCIE
dni tygodnia:
-----------poniedzialek
wtorek
sroda
czwartek
piatek
sobota
niedziela
Opracował: Aleksander Piętowski
1/4
11. Operacje na plikach tekstowych
Ćwiczenie 3. Ułóż program, który zapisze do pliku dane.txt wprowadzone z klawiatury twoje
dane osobowe. Sprawdź zawartość utworzonego pliku.
KOD
{$APPTYPE CONSOLE}
var
p : text;
dane : string;
begin
assign(p, 'dane osobowe.txt');
rewrite(p);
// tworzy nowy plik (zastępując ewentualnie poprzedni) do zapisu
writeln('Podaj swoje dane osobowe:');
writeln('-------------------------');
writeln;
write('imie i nazwisko: ');
readln(dane);
writeln(p, dane);
write('ulica: ');
readln(dane);
writeln(p, dane);
write('kod i miejscowosc: ');
readln(dane);
writeln(p, dane);
close(p);
end.
WYJŚCIE
Podaj swoje dane osobowe:
------------------------imie i nazwisko: Jan Kowalski
ulica: Polna 12/4
kod i miejscowosc: 40-210 Gdynia
ZAWARTOŚĆ PLIKU ‘dane osobowe.txt’
Jan Kowalski
Polna 12/4
40-210 Gdynia
Ćwiczenie 4. Zmodyfikuj program z ćwiczenia 3 tak, aby dopisywał na końcu pliku kraj
pochodzenia. Po wykonaniu programu sprawdź zawartość pliku.
KOD
{$APPTYPE CONSOLE}
var
p : text;
dane : string;
begin
assign(p, 'dane osobowe.txt');
append(p);
// otwiera w trybie dopisywania na końcu pliku
write('Podaj kraj pochodzenia: ');
readln(dane);
writeln(p, dane);
close(p);
end.
WYJŚCIE
Podaj kraj pochodzenia: Polska
Opracował: Aleksander Piętowski
2/4
11. Operacje na plikach tekstowych
ZAWARTOŚĆ PLIKU ‘dane osobowe.txt’
Jan Kowalski
Polna 12/4
40-210 Gdynia
Polska
Ćwiczenie 5. Ułóż program, który przepisze zawartość pliku dni tygodnia1.txt do pliku
o nazwie dni tygodnia2.txt. Sprawdź rezultat programu oglądając utworzony plik.
ZAWARTOŚĆ PLIKU ‘dni tygodnia1.txt’
dni tygodnia:
-----------poniedzialek
wtorek
sroda
czwartek
piatek
sobota
niedziela
KOD
{$APPTYPE CONSOLE}
var
p1, p2 : text;
wiersz : string;
begin
assign(p1, 'dni tygodnia1.txt');
reset(p1);
// otwarcie pliku do odczytu
assign(p2, 'dni tygodnia2.txt');
rewrite(p2);
// utworzenie nowego pliku do zapisu
while not eof(p1) do
begin
readln(p1, wiersz);
writeln(p2, wiersz);
end;
close(p1);
close(p2);
end.
ZAWARTOŚĆ PLIKU ‘dni tygodnia2.txt’
dni tygodnia:
-----------poniedzialek
wtorek
sroda
czwartek
piatek
sobota
niedziela
Opracował: Aleksander Piętowski
3/4
11. Operacje na plikach tekstowych
Zadania do samodzielnego wykonania (łatwe)
Zadanie 1. Napisz program, który wczyta i wyświetli na ekranie twoje dane osobowe z pliku
utworzonego w ćwiczeniu 3 i 4.
Zadanie 2. Ułóż program polegający na wyświetleniu na ekranie zawartości obu plików
z ćwiczenia 5. Napisz także drugą wersję programu z zastosowaniem procedury.
Ö rozwiązanie zadania 2 – wersja z zastosowaniem procedury (trudniejsze)
KOD
{$APPTYPE CONSOLE}
var
wiersz : string;
p : text;
procedure wyswietl(nazwa : string);
begin
assign(p, nazwa);
reset(p);
writeln(nazwa);
writeln('=============================');
while not eof(p) do
begin
readln(p, wiersz);
writeln(wiersz);
end;
writeln;
close(p);
end;
{*****************************************************}
begin
wyswietl('dni tygodnia1.txt');
wyswietl('dni tygodnia2.txt');
readln;
end.
WYJŚCIE
dni tygodnia1.txt
=============================
dni tygodnia:
-----------poniedzialek
wtorek
sroda
czwartek
piatek
sobota
niedziela
dni tygodnia2.txt
=============================
dni tygodnia:
-----------poniedzialek
wtorek
sroda
czwartek
piatek
sobota
niedziela
Opracował: Aleksander Piętowski
4/4