lightinside utworzono 5 lutego 2014 utworzono 5 lutego 2014 (edytowane) Mam takie pytanie, gdy wywoła się funkcja sort_scal(A,p,q) Sort_scal(A,p,r) if p<r then q<-(p+r)div2 Sort_scal(A,p,q) Sort_scal(A,q+1,r) scal(A,p,q,r) to będzie to wyglądać tak? sort_scal(A,p,q) if p< r then ?<-(p+q)div 2 sort_scal(A,p,q) sort_scal(A,q+1,r) scal(A,p,q,r) I jaka zmienna zamiast '?' ?? r? ps zamiast r tam w ifie to oczywiście q
torreado komentarz 5 lutego 2014 komentarz 5 lutego 2014 Nie bardzo wiem o co Ci chodzi - praktycznie dwa razy przepisałeś to samo, tylko z inną zmienną....
rafalluz komentarz 5 lutego 2014 komentarz 5 lutego 2014 Zapewne ma być r, ale wtedy wywołania rekurencyjne mają argumenty w niepoprawnej kolejności. Wtedy miałoby być: sort_scal(A,p,q) if p< q then r<-(p+q)div 2 sort_scal(A,p,r) sort_scal(A,r+1,q) scal(A,p,r,q)
lightinside komentarz 6 lutego 2014 Autor komentarz 6 lutego 2014 Chodzi mi o to co się dzieję gdy funkcja wywoła funkcję którą ma w sobie i co tam zachodzi.... Czemu? Aby łatwiej to zrozumieć. Rafalluz dzięki :) Sprawdzę to na kartce czy wychodzi jak powinno ;)
torreado komentarz 6 lutego 2014 komentarz 6 lutego 2014 A więc nie chodzi Ci o kod algorytmu, ale o to w jaki sposób działa rekurencja - bo jeżeli to pojmiesz, to będziesz wiedział jak działa algorytm który napisałeś. Proponuję, żebyś przeanalizował sobie jak działa silnia -> http://www.algorytm.edu.pl/rekurencja-zadania/73-silnia-rekurencyjnie.html
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.