odliczanie czasu
Ostatnio zmodyfikowano 2015-11-06 12:04
mlOOdy Temat założony przez niniejszego użytkownika |
odliczanie czasu » 2015-11-05 19:53:42 Cześć, dlaczego pętla while nie chce się wykonać ? Program gdy go włączę wypisuje oczywiście 0, a następnie czeka aż wykona się pętla while. #include <time.h> #include <iostream>
using namespace std;
int main() { for( int i = 10; i != 0; i-- ) { cout << clock() / CLOCKS_PER_SEC << endl; while( clock() < clock() + CLOCKS_PER_SEC ) { } } } |
|
pekfos |
» 2015-11-05 20:21:19 while( clock() < clock() + CLOCKS_PER_SEC ) { }
|
x zawsze jest mniejsze od x + dodatnia stała. |
|
Rashmistrz |
» 2015-11-05 21:18:41 x zawsze jest mniejsze od x + dodatnia stała. |
... co z założenia zawsze daje prawdę, więc jest to while( true ) . |
|
mlOOdy Temat założony przez niniejszego użytkownika |
» 2015-11-05 22:03:08 ok, teraz już wiem że powinienem zrobić to tak: #include <time.h> #include <iostream>
using namespace std;
int main() { clock_t czas; for( int i = 10; i != 0; i-- ) { czas = clock() + CLOCKS_PER_SEC; cout << clock() / CLOCKS_PER_SEC << endl; while( clock() < czas ) { } } } tylko dlaczego poprzedni zapis while( clock() < clock() + CLOCKS_PER_SEC ) jest błędny ? |
|
Rashmistrz |
» 2015-11-06 12:04:34 tylko dlaczego poprzedni zapis while( clock() < clock() + CLOCKS_PER_SEC ) jest błędny ? |
Nie jest błędny, a jest tautologią... czyli zawsze prawdziwy na mocy swojej formy. |
|
« 1 » |