Pascal i C
Czy ktoś umiałby przetłumaczyć ten kod z Pascala na C?
Muszę go zrozumieć, a Pascala nie znam.. A oto on:
Z góry dziękuję za wszelką pomoc.
Mary.
Muszę go zrozumieć, a Pascala nie znam.. A oto on:
procedure TrwalePary(n:integer; PrefChlop,PrefDziew:TablicaI;
var Pary:WektorI);
{Dla preferencji chlopcow i dziewczat danych w tablicach PrefChlop i PrefDziew, procedura znajduje trwaly uklad par i umieszcza go w tablicy Pary
W programie glownym nalezy zdefiniowac typy danych:
TablicaI=array[1..n,1..n] of integer;
WektorI =array[1..n] of integer; }
var Wolny :Boolean;
i,j,KolDziew :integer;
ModPrefDziew :TablicaI;
WyborChlop,WyborDziew,Odmowa:WektorI;
procedure UstawieniePrefDziew;
{Procedura ta tworzy tablice ModPrefDziew, w ktorej
element (i,j) jest numerem preferencji chlopca j
na liscie dziewczyny i.}
var i,j:integer;
begin
for i:=1 to n do
for j:=1 to n do
ModPrefDziew[i,PrefDziew[i,j]]:=j
end; {UstawieniePrefDziew}
begin
{Inicjalizacja}
for i:=1 to n do begin
Pary:=0;
Odmowa:=0;
WyborChlop:=1;
WyborDziew:=0
end;
UstawieniePrefDziew;
Wolny:=true;
while Wolny do begin
Wolny:=false;
for i:=1 to n do
if Pary=0 then begin
KolDziew:=PrefChlop[i,WyborChlop];
WyborChlop:=WyborChlop+1;
if WyborDziew[KolDziew]=0 then begin
Pary:=KolDziew;
WyborDziew[KolDziew]:=i
end
else begin
Wolny:=true;
if ModPrefDziew[KolDziew,i]<
ModPrefDziew[KolDziew,WyborDziew[KolDziew]] then begin
Pary:=KolDziew;
Odmowa[WyborDziew[KolDziew]]:=1;
WyborDziew[KolDziew]:=i
end
else Odmowa:=1
end
end {if , for };
for i:=1 to n do
if Odmowa=1 then begin
Pary:=0;
Odmowa:=0 end
end {while Wolny }
end; {TrwalePary}
Z góry dziękuję za wszelką pomoc.
Mary.
Odpowiedzi: 0
Strona 0 / 0