Od tohto okamihu sa začíname venovať práci so súbormi, pomerne silným nástrojom, ktorý budeme veľmi často využívať pri mnohých úlohách.
Na hodine sa budeme jednotlivým príkazom venovať podrobnejšie, tu uverejňujem súhrn:
var nazov_premennej: TextFile; je deklarácia súborovej premennej
AssignFile(súb_premenná, meno_súboru); je príkaz, ktorý slúži na zapamätanie toho, že súborová premenná bude pracovať s uvedeným súborom
Rewrite(súb_premenná); slúži na otvorenie súboru (resp. na jeho vytvorenie, ak ešte neexistoval) a jeho sprístupnenie na zápis
Reset(súb_premenná); urobí otvorenie súboru na čítanie (súbor musí na disku už existovať, musí byť zostavený korektne)
WriteLn(súb_premenná, hodnota); slúži na zapisovanie hodnôt do súboru, za zapísanou hodnotou pridá prechod na nový riadok
Write(súb_premenná, hodnota); slúži na zapisovanie hodnôt do súboru, za zapísanou hodnotou nepridáva nový riadok
Read(súb_premenná, premenná); premenná je dátová premenná, do ktorej zapíšeme prečítané hodnoty
Readln(súb_premenná); nastaví kurzor na začiatok ďalšieho riadka (preskočí zvyšok momentálne čítaného riadka)
SeekEof(súb_premenná) – fcia, ktorej výsledok je True (ak zistí, že je na konci súboru, resp. v súbore už nasledujú iba prázdne riadky) alebo False (ak neplatí predchádzajúce tvrdenie)
SeekEoln(súb_premenná) – fcia, ktorá testuje, či v danom súbore v riadku, ktorý momentálne číta, je ešte niečo uvedené
Eof(súb_premenná) – fci, ktorá vráti True, ak sme v súbore už na jeho úplnom konci (a nenasledujú už ani žiadne prázdne riadky)
CloseFile(premenná); sa používa na zatvorenie súboru – nevyhnutné!!!
——————————————
1. Napíšte program, ktorý do súboru zapíše 8 čísel (druhé mocniny čísel 1 – 8).
Program tieto čísla zároveň vypíše aj do Mema.
2. Napíšte program, ktorý do súboru zapíše 20 riadkov, v ktorých budú tri čísla:
číslo (od 1 po 20), jeho druhá mocnina a jeho tretia mocnina. Vypíšte obsah súboru aj do Mema.
3. Napíšte program, ktorý do súboru zapíše 100 čísel (od 1 po 100),
pričom v každom riadku bude práve 10 čísel.
4. Vytvorte textový súbor trojuholnik.txt, ktorý bude obsahovať 20 riadkov:
v prvom bude číslo 1, v druhom dve čísla 1 a 2, v treťom tri čísla 1, 2 a 3, atď. až v poslednom v 20 riadku budú čísla od 1 do 20.
5. Napíšte program, ktorý vytvorí 10-riadkový súbor, pričom v každom riadku bude 50 čísel, a to bude jednotiek (1) alebo núl (0). Súbor vytvorte tak, aby v ňom bolo presne 100 jednotiek na náhodných pozíciách.
6. Napíšte program, ktorý do textového súboru zapíše prvých 15 členov Fibonacciho postupnosti.
Kto nevie, čo je Fibonacciho postupnosť, vygoogli si to. 😉
Domáca úloha, deadline 12.11.2016 o 23:59
7. Napíšte program, ktorý vygeneruje textový súbor teploty.txt.
Súbor bude obsahovať 7 riadkov pre 7 sledovaných dní. V každom riadku bude náhodný počet nameraných hodnôt (počet od 1 do 5). Teploty budú reálne čísla, ktoré vygenerujete náhodne od 10 do 25 na jedno desatinné miesto.
Súbor bude vyzerať napríklad takto:
10.0 13.7 14.5
25.0 20.6 11.3 12.4 14.6
18.9
19.2 20.3 22.4 21.5
11.6 12.7
13.0
27.0 10.6 17.3 14.4 14.6
BONUS za 2 body, deadline 12:11.2016 o 23:59
8. Napíšte program, ktorý si do dvojrozmerného poľa načíta „mapu“ bludiska s guličkou. Cieľom bude dostať guličku s pomocou šípok zo štartu do cieľa.
Nech je táto mapa uložená v stringu, ktorý vyzerá takto:
mapa:=’wwbwwwwwww’+’wweweeweew’+’weewewweww’+’wweeeeeeew’+’wwwwwwewww’+’weweeeewew’+’wewwewwwew’+’weewewewew’+
‚wweeeeeeew’+’wwwwwwwwew‘;
pričom w znamená stenu (čierny štvorček), e znamená voľné miesto (biely štvorček) a b znamená loptičku (červená elipsa). Loptička sa po načítaní nachádza na štartovnej pozicii, cieľová pozícia je v pravom dolnom rohu.
Po načítaní sa vykreslí bludisko.
Ďalej použite procedúru onKeyDown (formulárová procedúra), v ktorej jeden z parametrov je parameter „key“. Ten nadobúda rôzne hodnoty podľa toho, aká klávesa bola zatlačená. Na jeho správne použitie ale musíte programu povedať, aby vytiahol knižnicu s príkazmi, ktoré pracujú s týmito klávesami, a to urobíte tak, že úplne v úvode do časti uses dopíšete lcltype. Teda bude to vyzerať takto:
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls, lcltype;
Potom sa budete pýtať:
if key=vk_up … (vk_down, vk_right, vk_left)
A podľa toho posúvať guličku a prekresľovať bludisko.
Keď sa gulička dostane do cieľa, vypíšete krátku informáciu o tom, že sme vyhrali. 🙂
Najnovšie články
Najnovšie komentáre
- Kaťa komentoval 08 – Hodnotená aktivita z hardware-u
- Alica komentoval 08 – Hodnotená aktivita z hardware-u
- Daniel komentoval 08 – Hodnotená aktivita z hardware-u
- Marek komentoval 08 – Hodnotená aktivita z hardware-u
- kaja komentoval 08 – Hodnotená aktivita z hardware-u
nika.blog.matfyz.sk
Join Us On Facebook
Join Us On Twitter
Join Us On In.com
Subscribe to RSS
Follow Us On Google+
Subscribe Us On Youtube
Follow Us On Pinterest
Follow Us On Instagram
Follow Us On Tumblr
Subscribe Us On Flickr
Aky prikaz sluzi nato aby mi to precitalo vsetko do konca ridku pls pls ?
Readln(t, s);
kde t je suborova premenna a s je premenna, do ktorej zapisujes to, co citas.
Dakujem 🙂