Cod sursa(job #1981684)

Utilizator RightupCalin Cristinel-David Rightup Data 16 mai 2017 14:48:45
Problema Problema rucsacului Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 1.28 kb

   uses crt;
   type  rucsac = record
              m:byte;
              p,c:real;
                  end;
var    a:array [1..200] of rucsac;
       n,g,i,j,k,p,max,q:byte;
       v:real;
       f:rucsac;
begin clrscr;
   n:=0;
   write ('Masa rucsacului='); readln(g);
   write ('Numarul de diamante='); readln(n);
   for i:=1 to n do begin
                        writeln('Masa diamantului ',i,' = '); readln (a[i].m);
                        writeln('Pretul diamantului ',i,' = '); readln (a[i].p);
                        a[i].c:=a[i].p/a[i].m

                   end;

   For i:=1 to n do
         For j:=i+1 to n do
                         If a[j].p > a[i].p then Begin
                                                 f:=a[i];
                                                 a[i]:=a[j];
                                                 a[j]:=f;
                                                 end;

                 p:=1; v:=0;
                 for i:=1 to n do
                  if a[i].m<=g then begin
                                        v:=v+a[i].c;
                                        g:=g-a[i].m;
                                        inc(a[i].m);
                                    end;
      writeln ('Venitul maxim este:' ,v:0:3);
readkey;
end.