Proszę o rozwiązanie 3 zadań do poniższej procedury:
procedure SortWyb; var i, j, min: integer; tymcz: real;
begin for i:=1 to n-1 do begin min:=i; for j:=i+1 to n do if B[j] < B[min] then min:=j; tymcz:= B[i]; B[i]:= B[min]; B[min]:= tymcz; end; end;
Zad1. Zinterpretuj szczegółowo, co dzieje się w pętli 1. Zad2. Jaką funkcję pełni zmienna tymcz? Zad3. Przedstaw algorytm procedury SortWyb.
stw
Pętla wykonuje się n-1 razy, gdzie n to liczba elementów do posortowania. W pętli wewnętrznej, która wykonuje się n*(n-1) razy, sprawdza się czy element j-ty iteracji jest mniejszy od elementu minimalnego, który na początku równa się pierwszemu elementowi. Jeśli jest mniejszy to zmienna j przyjmuje jeso index (numer w wektorze). Zmienna tymcz przyjmuje wartość obecnej iteracji B[i], następnie zmienna B[i] przyjmuje wartość elementu minimalnego, a element minimalny przyjmuje wartość ze zmiennej tymcz. w skrócie te trzy linijki kodu: tymcz:= B[i]; B[i]:= B[min]; B[min]:= tymcz; zamieniają miejscami elementy jeżeli element B[j] jest mniejszy od elementu B[min]. Zmienna tymcz ma chwilowo przechować wartość, bo nie da się na raz zamienić wartości dwóch zmiennych, dlatego wartość jednej zapisuje się w tymcz, potem ją nadpisuje inną zmienną, a następnie trzecią zmienna nadpisuje się wartością tymcz.
Zmienna tymcz ma chwilowo przechować wartość, bo nie da się na raz zamienić wartości dwóch zmiennych, dlatego wartość jednej zapisuje się w tymcz, potem ją nadpisuje inną zmienną, a następnie trzecią zmienna nadpisuje się wartością tymcz.