T-shirt apdruka,un mazo uzlīmju taisīšana. 4
Profesionālie tulkošanas pakalpojumi. 5
Pardod: MSI GeForce RTX 2080ti gaming X TRIO Graphic Card 1
Vēlos piedāvāt darbu online. 0
OCTA termiņš 13
Ka sauc Pasaules dalu kura dzivojam 4
google 1
Taustiņu funkcijas izmainīšana 2
Torrent 1
ESET izlaiž 2017.gada produktu izdevumus 23
VIAPLAY: Video tiešsaistē skatās 70% Latvijas iedzīvotāju 21
Katrā desmitajā datorā joprojām izmanto Windows XP 2
Google tuvākajā laikā atteiksies no Chrome paplašinājuma palaidēja 2
Acer ievieš nozares pirmo ieliekto monitoru ar acu izsekošanas funkcionalitāti 4
Adobe laiž klajā ārkārtas atjauninājumu 3
Tests: Cik precīzs ir "lēta gala" velo spidometrs? 3
Leģendārie telefoni – Nokia 3310 un citi 3
Puisis iziet Super Mario spēli mazāk kā piecu minūšu laikā un labo pasaules rekordu 2
Līdz 29.jūlijam atjaunini savu Windows bez maksas! 3
Kā uzlabot televizora skaņu? 2
Programma, ar kuras palīdzību fotogrāfijas pārveidot .gif formātā 1
Aproce, kas sastāv no 25 instrumentiem 1
Trīs padomi televizora izvēlei 2
Windows 7 ēra tuvojas noslēgumam, Microsoft koncentrējas uz Windows 10 1
Lietotāji online: 95
Reģistrētie lietotāji online: 0
Viesi online: 95
Sveiki, es vershos pie jums peec palidziibas.
Tatad man ir sekojsh uzdevums:
Izstraadat galveno programmu un moduli tieshaas pieejas failu darbiibu analiizei.Failam jasatur fikseeta garuma ieraksti ( piem. simbolu rindas).Paredzeet apakashprogrammas sekojosham failu darbiibaam:
1. Jauna faila izveidoshana
2. Faila iesprashana faila ( peec paziimes )
3. Faila satura apskatiishana
Izveidot galveno programmu, kas lieto(teste) izstraadaato moduli
Tachu probleema ir taada, ka es nezinu ka vajag ieprogrammet to, lai failu iesprauzh failaa pec paziimes. Peec paziimes tas ir taa, ka, piemeram:
1. fails
1
2
3
?
<
-
+
32
.
,
2. fails
4
5
2
1
,
.
?
Un peec paziimes( kas var but jebkaada) tiek atrasta piemeram vieta kur 1. faila ir skaitlis 32 un aiz vinja tiek iesprausts otrais fails.
Varbuut kads gudraaks varetu apskatit manu kodu, palabot kljudas un pateikt ka varetu ieprogrammet lai sprauzh peec paziimes
Kods :
unit L3vien;
interface
type MIer = record
vards1: string [30];
vards2: string [30];
end;
type MFtips = file of MIer;
var MFErr: integer;
procedure FCreate (var fails: MFtips; nosaukums: string);
procedure FView (var fails: MFtips; nosaukums: string);
procedure FSpra (var fails: MFtips; nosaukums, vaards: string);
procedure FError;
implementation
uses CRT;
procedure FCreate (var fails: MFtips; nosaukums: string);
var i, j: integer;
atbilde: string [1];
ier: MIer;
label Taisit;
begin
assign (fails, nosaukums);
{$I-}
reset (fails);
{$I+}
if (ioresult = 0) then begin
writeln (nosaukums,' jau eksistee vai veidot to no jauna?');
writeln ('j/n');
read (atbilde);
if (atbilde = 'j') or (atbilde = 'J') then begin
writeln ('esoso failu paarrakstaam');
goto Taisit; end else begin
writeln ('Tiek saglabaats esosais fails');
close (fails);
MFErr:= 1;
exit; end; end;
Taisit:
writeln ('Cik ierakstus gatavot (skaita 0, 1, 2, ... n)?');
{$I-}
read (j);
{$I+}
if (ioresult <> 0) then begin
MFErr:= 2; j:=5; end;
{$I-}
rewrite (fails);
{$I+}
if (ioresult <> 0) then begin MFErr:= 3; exit; end;
ier.vards1:=' ';
ier.vards2:=' ';
for i:= 0 to j do begin
ier.vards1:= chr($61+i);
ier.vards2:= chr($30+i);
write (fails, ier);
end;
close (fails);
end;
procedure FView (var fails: MFtips; nosaukums: string);
var i: integer; ier: MIer;
begin
assign (fails, nosaukums);
{$I-}
reset (fails);
{$I+}
if (ioresult <> 0) then begin MFErr:= 4; exit; end;
i:= 0;
seek (fails, i);
while (eof (fails) <> true) do begin
read (fails, ier);
writeln ('Ieraksts #:', i:2 ,' ', ier.vards1,' ', ier.vards2);
i:= i+1;
end;
seek (fails, 0);
end;
procedure FSpra (var Fails: MFtips; nosaukums, vaards: string);
Label Beigas, Sakums, Sakums1;
var k, j, i, z, y, x, n: integer; ier: MIer; datne: MFtips;
begin
assign (datne, nosaukums);
{$I-}
reset (datne);
{$I+}
if (ioresult <> 0) then begin MFErr:= 4;exit; end;
z:= filesize (datne);
close (datne);
assign (fails, vaards);
{$I-}
reset (fails);
{$I+}
if (ioresult <> 0) then begin MFErr:= 4; exit; end;
y:= filesize (fails);
j:= trunc( y div 3);
n:=y mod 3;
close (fails);
y:=y-1;
if n>= 1 then begin
while n>= 1 do begin
reset (fails);
seek (fails, y);
read (fails, ier);
seek (fails, y+(j*z));
write (fails, ier);
n:= n-1; y:=y-1;
end;
j:=j-1;
close (fails);
goto sakums1;
end else begin j:=j-1; goto sakums1; end;
sakums1:
begin
reset (fails);
while (j>= 1) and (y>=0) do begin
for k:= 1 to 3 do begin
writeln (y);
reset (fails);
seek (fails, y);
read (fails, ier);
seek (fails, y+(j*z));
write (fails, ier);
y:=y-1;
close (fails);
end;
j:=j-1;
end;
end;
reset (fails);
y:= filesize (fails);
close (fails);
x:=3;
sakums:
i:=0;
while i <= (z-1) do begin
reset (datne);
seek (datne, i);
read (datne, ier);
close (datne);
reset (fails);
seek (fails, x);
write (fails, ier);
close (fails);
i:=i+1;
x:=x+1;
end;
x:=x+3; if x > y then goto beigas else goto sakums;
beigas:
end;
procedure FError;
begin
case MFErr of
1: writeln ('Lietotaajs neatlauj paarrakstiit esoso failu');
2: writeln ('Kluuda ievadot ierakstu skaitu veidojamajaa failaa');
3: writeln ('Neizdodas radiit failu');
4: writeln ('Nevar atveert pieprasiito failu');
else writeln ('Faila apstraades kluuda Nr:',MFErr);
end;
MFErr:= 0;
writeln ('Nospied taustinu');
readkey;
end;
begin
MFErr:= 0;
end.
2. dala:
program lab5;
uses L5;
var MDati: MFtips;
MaIer: MIer;
var nosaukums, vaards: string;
Oper: integer;
label Gadijums;
begin
gadijums:
if (MFErr <> 0) then FError;
writeln ('Ko dariisim?');
writeln ('1 - veidosim jaunu failu');
writeln ('2 - apskatiisim faila saturu');
writeln ('3 - iespraudiisim failu failaa');
writeln ('4 - beigt darbu');
readln (Oper);
case (Oper) of
1: begin
writeln ('Ievadi faila vaardu');
read;
readln (nosaukums);
FCreate (MDati, nosaukums);
end;
2: begin
writeln ('Ievadi faila nosaukumu kuru veelies apskatiit');
readln (nosaukums);
FView (MDati, nosaukums);
end;
3: begin
writeln ('Ievadi faila nosaukumu kuru spraudiisim');
readln (nosaukums);
writeln ('Ievadi faila nosaukumu kuraa spraudiisim');
readln (vaards);
FSpra (MDati, nosaukums, vaards);
end;
4: begin
exit;
end;
end;
goto Gadijums;
end.
tas kods ir baigais mudzeklis,
Apraksti ar vārdiem, ko tu mēģini darīt FSpra procedūrā
Man jau pirmais iespaids beidzās pie label Taisit :) Pareizāk sakot, vēlēšanās iedziļināties. Tīri uz pirkstiem, failu failā iespraust nevar pēc definīcijas, jo failam ir tikai 3 operācijas (neskaitot atvēršanu/aizvēršanu un tamlīdzīgas darbības):
1. lasīt;
2. rakstīt;
3. pāriet uz pozīciju.
Tāpēc tavu bēdu var risināt divos veidos:
1) Taisam 3. failu, lasām no pirmā faila, rakstam 3. Kad atrodam pazīmi, to vēl ierakstām 3. failā, pēc tam veram vaļā 2. failu un visu ierakstam 3. failā. Kad tas izdarīts, turpinām rakstīt 1. failu 3. failā.
2) Atrodam 1. failā pazīmi, atceramies pozīciju un pārējo faila daļu pārrakstām starpbuferī (failā vai atmiņā), tad ejam uz 1. failā iegaumēto pozīciju, veram vaļā 2. failu un rakstām to pirmajā no atbilstošās pozīcijas. Kad 2. fails ierakstīts, ņemam 1. faila daļu, ko ierakstījām starpbuferī, un rakstam tālāk 1. failā.
Nobeigumā ieteikumi, aizmirsti, ka eksistē komanda GOTO, augsta līmeņa valodām tā ir ņirgāšanās par programmas stilu.
Koda postēšanai izmanto atbilstošu resursu, piem., www.codesend.com
m
Pirmais iespaids - nu i palags....
Otrais - teksta formatējums drausmīgs, pareizāk sakot - tā nav....
Trešais - kā ieraudzīju pirmo GOTO, tā iespaidi izbeidzās.
Ja gribi sagaidīt palīdzību, pievērs šīm lietām uzmanību, sevišķi otrajai. Šitā veči nedara.....