Divide et Impera, "Oszd meg es uralkodj"--modszer magyarazat, Pascal nyelv (? )
Adott a kovetkezo maximum kereso algoritmus, Pascalban, Divide et Impera modszerrel megoldva, amit csak felig ertettem meg, ezert szeretnem, ha elmegyaraznatok hogy is mukodik. (+a Function magyarazata is, ha lehet).
program maxszamitas_divide_et_impera;
uses crt;
var a:array[1..5] of integer;
i,n:integer;
FUNCTION maximum(bal,jobb:byte):integer;
Var max1,max2,kozepe:integer;
begin {function begin}
if bal=jobb then maximum:=a[bal]
else begin
kozepe:=(bal+jobb) div 2;
max1:=maximum(bal,kozepe);
max2:=maximum(kozepe+1,jobb);
if max1<max2 then maximum:=max2
else maximum:=max1;
end;
end;
BEGIN
clrscr;
writeln('A szamok=');
for i:=1 to 5 do begin
write('a[',i,']=');
readln(a[i]);
end;
writeln('Max szam=',maximum(1,5));
readln;
end.
Szia.
Próbáld meg ezt (ugyanaz mint a Tied, csak kiegészitettem egy két writeln-vel + változóval, hogy lehessen látni, milyen értékekkel hivódik meg a "FUNCTION maximum", bal és jobb értékek, és hogy hányszor ):
Sok sikert.
Üdv.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!