Zbieznik petli co i jak?
Ostatnio zmodyfikowano 2018-01-09 19:40
ostryprogramer Temat założony przez niniejszego użytkownika |
Zbieznik petli co i jak? » 2018-01-09 19:10:22 Witam mam problem z zadaniem, czytałem o zbieżnikach i niezmiennikach ale nie mogę poradzić sobie z tym przypadkiem, z góry dziękuję 1.Uzasadnij, że poniższy program zatrzymuje się poprzez znalezienie zbieżnika pętli. Oczywiście należy dokładnie uzasadnić, czemu znalezione wyrażenie jest zbieżnikiem. int funkcja( int a, int b ) { while( a >= 0 && b >= 0 ) { if( a < b ) { zamien( a, b ); } else { a = a - 1; } } return a; } |
|
pekfos |
» 2018-01-09 19:18:36 a + b. Tu nawet nie ma czego tłumaczyć. "Dopóki wartości są większe od zera, zmniejszaj wartości". Ten algorytm nawet nie ma żadnego praktycznego sensu, poza byciem łatwym przykładem do takiego zadania. |
|
ostryprogramer Temat założony przez niniejszego użytkownika |
» 2018-01-09 19:27:51 Dziekuje za odpowiedz, mam tylko pytanie po wykonaniu programu niezaleznie od wartosci a i b , a będzie równe -1 i b będzie równe 0 z definicji podanej na wykładzie zbieżnik pętli musi być nieujemny . Po dodaniu a i b wynikiem będzie -1."Dopoki wartosci sa wieksze badz rowne 0". Nie wiem co w tej sytuacji zrobic . Z góry dziekuje za odpowiedz |
|
pekfos |
» 2018-01-09 19:34:19 No to a + b + 1. |
|
ostryprogramer Temat założony przez niniejszego użytkownika |
» 2018-01-09 19:40:01 A jakie jest tego uzasadnienie? |
|
« 1 » |