Pereiti prie turinio

Pascal'is uzdavinys reikia pagalbos


Rekomenduojami pranešimai

Baldus gaminancioje firmoje per diena gaunama n uzsakymu baldams pagaminti (1 < n 100).Kiekviena uzsakyma stalius atlieka trimis etapais.Kuri laika jis rengia detales, paskui renka balda, dar kuri laika ji dazo arba lakuoja.Parasykite programa, kuri apskaiciuotu, per kiek minuciu stalius atliks ilgiausiai trunkanti uzsakyma, ir nustatytu jo eiles numeri.Naudokite proceduras ir funkcijas.(Uzsakovai 15 simboliu).

 

bald.txt

 

5

uzsakymas 1 30 15 20

uzsakymas 2 10 10 10

uzsakymas 3 50 20 30

uzsakymas 4 15 15 20

uzsakymas 5 40 15 15

 

Rezultatas turi gautis:

 

baldrez.txt

 

uzsakymas 3 100

 

uzsakymas 2 30

uzsakymas 4 50

uzsakymas 1 65

uzsakymas 5 70

uzsakymas 3 100

 

Mano programa

program Baldai;

const CDuomenys   = 'bald.txt';
     CRezultatai = 'baldrez.txt';
     Cn          = 100;

type  Tzodis  = string[15];
     Tvienas = record
     pav  : Tzodis;
     viso : integer;
     end;

     Tsar = array[1..Cn] of Tvienas;

var   A : Tsar;
     n : integer;

{------------------------------------------------------------------------------}

procedure Duomenys;

var fd : text;
   i  : integer;
   rg, rk, dz : integer;

begin
assign(fd, CDuomenys); reset(fd);
readln(fd, n);
for i := 1 to n do
begin
readln(fd, A[i].pav, rg, rk, dz);
A[i].viso := rg + rk + dz;
end;
close(fd);
end;

{------------------------------------------------------------------------------}

function DaugiausiaL : integer;

var k, i : integer;

begin
k := 1;
for i := 1 to n do
if A[i].viso > A[k].viso
then
k := i;
DaugiausiaL := k;
end;

{------------------------------------------------------------------------------}

var i, k : integer;
   fr : text;

begin
 Duomenys;
 k := DaugiausiaL;
 assign(fr, CRezultatai); rewrite(fr);
 writeln(fr, A[k].pav, A[k].viso);
 writeln(fr);
 for i := 1 to n do
 writeln(fr, A[i].pav, A[i].viso);
 close(fr);
 Readln;
end.

 

Mano gaunamas txt atrodo:

 

baldrez.txt

 

uzsakymas 3 100

 

uzsakymas 1 65

uzsakymas 2 30

uzsakymas 3 100

uzsakymas 4 50

uzsakymas 5 70

 

Klausymas toks kaip surikiuoti didejimo tvarka nuo 1 iki 5 uzsakymo?

Aciu uz pagalba.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Tam reikalingas rikiavimo algoritmas

 

procedure Burbulas(var a:array of integer; N:integer);

var i, j, t: integer;

begin

for i:=N downto 1 do

for j:=2 to i do

if a[j-1]>a[j] then

begin

t:=a[j-1];

a[j-1]:=a[j];

a[j]:=t;

end

end;

 

http://lt.wikipedia.org/wiki/Burbulo_rikiavimo_algoritmas

Redagavo raima220
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ą...