Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
[email protected] webmail now available. Want one? Go here.
Cannot use outlook/hotmail/live here to register as they blocking our mail servers. #microsoftdeez
Obey the Epel!

Paste

Pasted by Heroix ( 14 years ago )
program Gimtadienis;
{Informacinių Technologijų 2010 valstybinio egzamino 2 programavimo užduotis}

const file_in = 'U2.txt';
const file_out = 'U2rez.txt';

type masyvas = array[1..10] of integer;
type patiekloIrasas = record
     pav: string[15];
     kaina:masyvas;
end;
type patiekaluMasyvas = array[1..12] of patiekloIrasas;

var patiekaloKaina:masyvas; patiekalas:patiekaluMasyvas;
N,P:smallint;

procedure skaityti();
var fread:text; i,j:integer;
begin
     assign(fread, file_in); reset(fread);
     read(fread, N); readln(fread, P); //nuskaito kiek N-produktų, P-patiekalų

     for i:=1 to (N-1) do  //nuskaito patiekalų kainas
         read(fread, patiekaloKaina[i]);
     readln(fread, patiekaloKaina[N]);

     for i:=1 to P do //nuskaito patiekalus ir jų sudėtį
     begin
          read(fread, patiekalas[i].pav); //pavadinimas

          for j:=1 to (N-1) do  //produktų kiekis
              read(fread, patiekalas[i].kaina[j]);
          readln(fread, patiekalas[i].kaina[N]);

     end;
     close(fread);
end;

{skaičuoja visą patiekalo kainą}
function visaPatiekaloKaina(kiekProduktu:masyvas):integer;
var i:integer;
begin
     visaPatiekaloKaina:=0;
     for i:=1 to N do
         visaPatiekaloKaina:=visaPatiekaloKaina + (kiekProduktu[i] * patiekaloKaina[i]);
end;

{skaičiuoja svečio kainą}
function svecioKaina(patiekalas:patiekaluMasyvas):integer;
var i:integer;
begin
     svecioKaina:=0;
     for i:=1 to P do
         svecioKaina:= svecioKaina + visaPatiekaloKaina(patiekalas[i].kaina);
end;

procedure rasyti();
var fwrite:text; i:integer;
begin
     assign(fwrite, file_out); rewrite(fwrite);
  
  {rašo patiekalą ir jo visą kainą}
     for i:=1 to P do
     begin
         write(fwrite, patiekalas[i].pav, ' ');
         writeln(fwrite, visaPatiekaloKaina(patiekalas[i].kaina));
     end;

     write(fwrite, svecioKaina(patiekalas) div 100, ' '); //litai
     write(fwrite, svecioKaina(patiekalas) mod 100); //centai

     close(fwrite);
end;

begin
     skaityti();
     rasyti();
end.

 

Revise this Paste

Your Name: Code Language: