darbs ar datn m
Download
Skip this Video
Download Presentation
Darbs ar datnēm

Loading in 2 Seconds...

play fullscreen
1 / 21

Darbs ar datnēm - PowerPoint PPT Presentation


  • 171 Views
  • Uploaded on

Vienošanās Nr. 2008/0001/1DP/1.2.1.2.2./08/IPIA/VIAA/002. Darbs ar datnēm. Daugavpils Valsts ģimnāzija Edgars Pudulis. Ievads.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Darbs ar datnēm ' - taima


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
darbs ar datn m

Vienošanās

Nr. 2008/0001/1DP/1.2.1.2.2./08/IPIA/VIAA/002

Darbs ar datnēm

Daugavpils Valsts ģimnāzija

Edgars Pudulis

ievads
Ievads

Atverot Windows katalogu C diskā var redzēt, ka operētājsistēma sastāv no daudzām datnēm, kas noteiktā momentā tiek ielādētas brīvpiekļuves atmiņā. Piemēram nospiežot Start  Programs  Microsoft Word, tiek aktivizēta datne, kas atrodas

C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE10 mapē ar nosaukumu winword.exe

slide4

Datu sasaiste

Lai varētu nolasīt un ierakstīt datus no datnēm, sākumā datne jāsasaista ar datnes mainīgo.

Izmantojot šo mainīgo varēs piekļūt datnē esošajiem datiem.

Datus un datni sasaista ar Assign palīdzību.

Tā vispārīgais pieraksts: Assign (<datnes mainīgais>, <datnes nosaukums>); Datnes nosaukumā jānorāda pilns ceļš uz datni.Piemēram:

Var datne: Text; BeginAssign (datne, ‘c:\mape\dati.txt’);

slide5

Datnes atvēršana un aizvēršana

Reset (<datnes mainīgais>);

- atver sasaistīto datni datu nolasīšanai (šajā gadījumā datnei jau ir jābūt izveidotai). Atverot datni kursors ir tās sākumā.

Rewrite (<datnes mainīgais>); - atver un izveido jaunu datni, gadījumā, ja tāda datne jau eksistē, tās saturs tiek izdzēsts

Close (<datnes mainīgais>);

- aizver datni, šo komandu ieteicams vienmēr lietot programmas noslēgumā.

slide6

Datu nolasīšana un ieraksts

Readln(<datnes mainīgais, <programmas mainīgie>) – datu nolasīšanas komanda no datnēm, vienlaicīgi var nolasīt arī vairākus mainīgos. Piemēram:

Readln(datne,x,y,z,c);

Write(<datnes mainīgais>,mainīgie) – datu ierakstīšanas komanda datnē. Piemēram:

Write(datne, x,’ ‘,y) – ievadām rezultātus datnē atdalot tos ar tukšuma simbolu.

Var izmantot arī Writeln, tad mainīgie datnē tiks ievadīti nevis rindā, bet kolonnā.

slide7

Datnes atvēršana un ieraksts datnē

1.uzdevums: Teksta datne text.txt, kas atrodas C:\DATI satur divus skaitļus, kas viens no otra atdalīti ar tukšuma simbolu. Izvadīt uz ekrāna abus skaitļus un šo skaitļu summu.

Risinājums:

uses crt;

var datne:text; x,y :integer;

begin

clrscr;

assign(datne,\'c:\dati\text.txt\');

reset(datne);

readln(datne,x,y);

write(x,\' \',y,\' \',x+y);

readln;

close(datne);

end.

slide8

Datnes atvēršana un ieraksts datnē

Nedaudz papildināsim jau iepriekš minēto uzdevumu ar papildus darbībām

2.uzdevums: Teksta datne text.txt, kas atrodas mapē C:\DATI , satur divus skaitļus, kas viens no otra atdalīti ar tukšuma simbolu. Izvadīt uz ekrāna abus skaitļus, bet šo skaitļu reizinājumu izvadīt šīs pašas mapes DATI jaunā datnē rezult.txt

slide9

2.uzdevuma risinājums

uses crt;

var dat1,dat2:text; x,y :integer;

BEGIN

clrscr;

assign(dat1,\'c:\dati\text.txt\');

assign(dat2,\'c:\dati\rezult.txt\');

reset(dat1);

readln(dat1,x,y);

write(x,\' \',y);

rewrite(dat2);

write(dat2,x*y);

readln;

close(dat1); close(dat2);

END.

3 uzdevums
3.uzdevums

3.uzdevums: Teksta datne text1.txt, kas atrodas C:\DATI satur trīs skaitļus, kas viens no otra atdalīti ar tukšuma simbolu. Izvadīt datnē rezult.txt lielāko no šiem skaitļiem.

3 uzdevuma risin jums
3.uzdevuma risinājums

uses crt;

var dat1,dat2:text; x,y,z,L:integer;

BEGIN

assign(dat1,\'c:\dati\text.txt\');

assign(dat2,\'c:\dati\rezult.txt\');

reset(dat1); rewrite(dat2);

readln(dat1,x,y,z);

If x>y then L:=x else L:=y;

If z>L then L:=z;

write(dat2,L);

close(dat1); close(dat2);

END.

slide12

Funkcija EOF

Eof (<datnes mainīgais>); funkcija, kuru izmanto strādājot ar datnēm, kas palīdz noteikt kursora atrašanās vietu.  Visbiežāk uzdevumos izmanto tāpēc, lai noteiktu datnes beigas jeb pēdējo elementu.          

Funkcija Eof pieņem vērtību True (patiess), ja kursors atrodas datnes beigās, vai arī gadījumā, ja datne ir tukša.

Visos pārējos gadījumos funkcija pieņem vērtību False (aplams).

slide13

Piemērs ar funkciju EOF

4.uzdevums. Datne C:\DATI satur teksta virkni, nolasīt no datnes un izvadīt šo tekstu uz ekrāna.

uses crt;

var dat1:text; x:char;

BEGIN

clrscr;

assign(dat1,\'c:\dati\text.txt\');

reset(dat1);

While NOT eof(dat1) do

BEGIN Read(dat1,x); Write(x); END;

readln;

close(dat1);

END.

Kamēr nav pēdējais

datnes elements...,

...nolasi kārtējo elementu

no datnes un izvadi uz ekrāna

slide14

Papildus funkcijas teksta datņu apstrādei

Append (<datnes mainīgais>); izmanto teksta datņu atvēršanai. Šī procedūra atver eksistējošu datni datu ievadam datnes beigās. Atverot datni ar šo komandu, kursors atrodas datnes beigās nevis sākumā kā tas notiek ar RESET. Šo procedūru lieto, ja nepieciešams papildināt kādu datni.

Eoln (<datnes mainīgais>); izmanto lai noteiktu, vai ir sasniegtas datnē ierakstītas teksta rindiņas beigas. Funkcija Eoln atgriež vērtību True, ja kursors atrodas kādas teksta datnes rindas beigās vai arī ja datne ir tukša, bet visos citos gadījumos - vērtību False.

slide15

Piemērs ar APPEND

4.uzdevums ar datnes papildināšanu.

Izveidojiet datni mapē C:\DATItext.txt un ierakstiet šajā datnē tekstu “Pavasaris ir “.

Papildināt šo ierakstu ar jebkuru turpinājumu, kurš tiek ievadīts no tastatūras, piemēram, “jauks gadalaiks”.

Pēc programmas izpildes atveriet datni text.txt un pārliecinieties vai tā ir papildināta ar Jūsu ievadīto tekstu.

slide16

Piemērs ar APPEND (risinājums)

uses crt;

var dat1:text; x:string;

BEGIN

clrscr;

assign(dat1,\'c:\dati\text.txt\');

append(dat1);

write(\'Ievadiet turpinajumu teikumam PAVASARIS IR \');

Readln(x);

write(dat1,x);

readln;

close(dat1);

END.

slide17

Piemērs ar EOLN

5.Uzdevums. Divu teksta datņu satura savienošana.

Izveidojiet divas datnes mapē C:\DATItext1.txt un text2.txt ierakstiet pirmajā datnē tekstu

“Pavasaris ir “, bet otrajā datnē “jauks gadalaiks”.

Papildiniet pirmo datni ar otrās datnes tekstu.

Pēc programmas izpildes atveriet datni text.txt, kurai ir jāsatur teikums “Pavasaris ir jauks gadalaiks”.

slide18

Piemērs ar EOLN (risinājums)

uses crt;

var dat1,dat2:text; x:char;

BEGIN

assign(dat1,\'c:\dati\text1.txt\');

assign(dat2,\'c:\dati\text2.txt\');

append(dat1);

reset(dat2);

while NOT eoln(dat2) do

BEGIN read(dat2,x); write(dat1,x); END;

readln;

close(dat1); close(dat2);

end.

slide19

Uzdevums izmantojot masīva elementus

6.uzdevums: Teksta datnē text.txt, kas atrodas mapē C:\DATI,

pirmajā rindā ir ierakstīts masīva A elementu skaits N un caur vienu tukšuma simbolu skaitlis N1. Katrā nākošajā rindā (vienā kolonnā) ir ierakstīti masīva A elementi no 1 līdz N.

Izvadīt šīs mapes DATI jaunā datnē rezult.txt katra masīva elementa reizinājumu ar skaitli N1 vienā kolonnā (katrā rindā savs skaitlis).

slide20

6.uzdevuma risinājums

uses crt;

var dat1,dat2:text; N,N1,i :integer;

a:array [1..50] of integer;

BEGIN

clrscr;

assign(dat1,\'c:\dati\text.txt\');

assign(dat2,\'c:\dati\rezult.txt\');

reset(dat1); rewrite(dat2);

readln(dat1,N,N1);

for i:=1 to N do

BEGIN

readln(dat1,a[i]);

writeln(dat2,a[i]*N1);

END;

readln;

close(dat1); close(dat2);

END.

ad