matematykaszkolna.pl
Analiza złożoności czasowej kodu Mariusz: Mamy daną procedurkę procedure proc(var A:tablica;i,n:integer); var l,r,m:integer; temp:real; b:boolean; begin b:=true; while ((i<=n) and b) do begin left:=2*i; right:=2*i+1; if(l<=n) and (A[l]>A[i]) then m:=l else m:=i; if(r<=n) and (A[r]>A[m]) then m:=r; b:=(m<>i); if(b) then begin temp:=A[i]; A[i]:=A[m]; A[m]:=temp; i:=m; end; end; end; Ile razy wykona się pętelka w tej procedurze ?
5 gru 13:29
jc: Skąd bierzesz wartość zmiennej l?
5 gru 14:10
Mariusz: Pierwotnie zmienne l oraz r nazywały się left i right i zapomniałem wykasować starą nazwę tych zmiennych
5 gru 14:56
Mariusz: Gdyby użyć pętli repeat until to można by się obyć bez zmiennej logicznej (aby skonstruować warunek logiczny trzeba by skorzystać z prawa de Morgana) Oprócz tego ile razy wykona się pętelka ciekawy jestem czy może nastąpić przekroczenie zakresu typu integer i jak temu zapobiec
6 gru 00:09