Pereiti prie turinio

Reikia pagalbos su Pascal


Rekomenduojami pranešimai

Sveiki. Norėčiau paprašyti jūsų pagalbos su Pascal. Kažkaip nelabai žinau kaip tai padaryti. Užduotis:

 

Parduotuvė dirba nuo 8 iki 20 val. Parduotuvėje yra kelios kasos. Kiekvienas pirkėjas gauna kasos čekį, kuriame yra atspausdintas aptarnavimo laikas (valanda ir minute) ir kiek pinigų jis turi sumokėti už pasirinktas prekes (litais ir centais). Programa turi suskaičiuoti:

 

kiek per dieną parduotuvė gavo pajamų (šitą žinau kaip padaryti);

suskaičiutų, kiek kurią darbo valandą buvo gauta pajamų;

surastų, kurią valanda buvo aptarnauta daugiausiai pirkėjų.

 

Duomenų failas:

 

8
15 16 20 20
12 14 130 0
15 0 0 12
14 12 30 12
12 1 15 10
10 56 20 80
10 11 20 99
9 5 5 5

 

rezultatų failas:

242 38
10 2
9 5 5
10 41 79
12 145 10
14 30 12
15 20 32

 

Iš anksto ačiū už pagalbą

Nuoroda į pranešimą
Dalintis kituose puslapiuose

 

 

program Parduotuve;
type Mas = array[1..100] of integer;

var Val,     	// Valandu masyvas
Min,     	// Minuciu masyvas
Ltl,     	// Islestu litu masyvas
Ct,      	// Islestu centu masyvas
Pirk,    	// Pirkeju konkrecia valanda masyvas
ApyvLT,  	// Apyvartos konkrecia valanda Litu suma
ApyvCT:Mas;  // Apyvartos konkrecia valanda centu suma
n:integer;   // Pirkeju skaicius
D,R:text;
{-------------Proceduros ir funkcijos--------}
procedure Skaityti;
var i,lt,cts:integer;
begin
lt  := 0;
cts := 0;
Assign(D,'U1.txt');Reset(D);
ReadLn(D,n);

for i:= 1 to n do
 	begin
   	ReadLn(D,Val[i],Min[i],Ltl[i],Ct[i]);
    	Pirk[Val[i]]  := Pirk[Val[i]] + 1; // Uzfiksuojam, kad ta valanda atliktas pirkimas

 	{-----Susirandam pajamas kiekvienai valandai, kai buvo atliktas mokejimas}
    	ApyvLT[Val[i]] := ApyvLT[Val[i]] + Ltl[i];   // Sumuojame pirkimo valandos Litu suma
    	ApyvCT[Val[i]] := ApyvCT[Val[i]] + Ct[i];	// Sumuojame pirkimo valandos Centu suma

    	{Susikonvartuojam susikaupusius litus i centus}
     	ApyvLT[Val[i]] :=  ApyvLT[Val[i]] + (ApyvCT[Val[i]] div 100);
     	ApyvCT[Val[i]] :=  ApyvCT[Val[i]] mod 100;
    	{---------------------------------------------}
 	{------------------------------------------------------------------------}

 	end;
Close(D);
end;
//----------------------------------
Procedure Pelnas;
var i,litai,centai:integer;
begin
litai  := 0;
centai := 0;

for i:=1 to n do
   	begin
     	litai   := litai + Ltl[i];
     	centai  := centai + Ct[i];

     	litai   := litai + (centai div 100);
     	centai  := centai mod 100;

   	end;

	WriteLn(R,litai,' ',centai);
end;
//-----------------------------------
procedure Daugiausia_pirkeju;
var i,index,reiksme:integer;
begin
reiksme := 0;
index   := 0;

	for i:=1 to 100 do
      	if Pirk[i] > reiksme then
           	begin
               	reiksme := Pirk[i];
               	index   := i;
           	end;
      	WriteLn(R,index,' ',reiksme);
end;
//-----------------------------------
procedure Pajamos;
var i,suma:integer;
begin

for i:=1 to 100 do
	if ApyvLT[i] <> 0 then
  	WriteLn(R,i, ' ',ApyvLT[i],' ',ApyvCT[i]);

end;
{--------------Pagrind. programa-------------}
begin
  Assign(R,'U1rez.txt');ReWrite(R);
Skaityti;
Pelnas;
Daugiausia_pirkeju;
Pajamos;
Close(R);
end. 

 

 

Buvo galima trumpiau su įrašais padaryt, bet jau patyngėjau :D

Redagavo extremist
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...