#include <iostream>
using namespace std;
int main(void) {
int n;
cout << "wersja 1" << endl;
n = 3;
while(1+n--) {
cout << "n: " << n << endl;
}
cout << "wersja 2 (zmierza do 0)" << endl;
n = 3;
do {
cout << "n: " << n << endl;
} while(n --> 0);
cout << "wersja 3 (czytelniejsza wersja pierwszej)" << endl;
n = 3;
do {
cout << "n: " << n << endl;
} while((n--)> 0);
cout << "wersja 4 (czytelna, uruchamia się tyle razy ile potrzeba)" << endl;
n = 3;
do {
cout << "n: " << n << endl;
} while((--n)> 0);
cout << "wersja 5 (jajcarska, poprawna)" << endl;
n = 3;
do {
cout << "n: " << n << endl;
} while(0 <-- n);
cout << "wersja 6 (styl K&R, poprawna)" << endl;
n = 3;
while(n--) {
cout << "n: " << n << endl;
}
cout << "wersja 7 (while, równoważnik pierwszej wersji)" << endl;
n = 3;
while((n--)>=0) {
cout << "n: " << n << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IG1haW4odm9pZCkgewoJaW50IG47CgkKCWNvdXQgPDwgIndlcnNqYSAxIiA8PCBlbmRsOwoJbiA9IDM7Cgl3aGlsZSgxK24tLSkgewoJICBjb3V0IDw8ICJuOiAiIDw8IG4gPDwgZW5kbDsKCX0KCSAgCgljb3V0IDw8ICJ3ZXJzamEgMiAoem1pZXJ6YSBkbyAwKSIgPDwgZW5kbDsKCW4gPSAzOyAgCglkbyB7CgkJY291dCA8PCAibjogIiA8PCBuIDw8IGVuZGw7Cgl9ICB3aGlsZShuIC0tPiAwKTsKCQoJY291dCA8PCAid2Vyc2phIDMgKGN6eXRlbG5pZWpzemEgd2Vyc2phIHBpZXJ3c3plaikiIDw8IGVuZGw7CgluID0gMzsgIAoJZG8gewoJCWNvdXQgPDwgIm46ICIgPDwgbiA8PCBlbmRsOwoJfSAgd2hpbGUoKG4tLSk+IDApOwoKCWNvdXQgPDwgIndlcnNqYSA0IChjenl0ZWxuYSwgdXJ1Y2hhbWlhIHNpxJkgdHlsZSByYXp5IGlsZSBwb3RyemViYSkiIDw8IGVuZGw7CgluID0gMzsgIAoJZG8gewoJCWNvdXQgPDwgIm46ICIgPDwgbiA8PCBlbmRsOwoJfSAgd2hpbGUoKC0tbik+IDApOwoKCWNvdXQgPDwgIndlcnNqYSA1IChqYWpjYXJza2EsIHBvcHJhd25hKSIgPDwgZW5kbDsKCW4gPSAzOyAgCglkbyB7CgkJY291dCA8PCAibjogIiA8PCBuIDw8IGVuZGw7Cgl9ICB3aGlsZSgwIDwtLSBuKTsKCgljb3V0IDw8ICJ3ZXJzamEgNiAoc3R5bCBLJlIsIHBvcHJhd25hKSIgPDwgZW5kbDsKCW4gPSAzOyAgCgl3aGlsZShuLS0pIHsKCQljb3V0IDw8ICJuOiAiIDw8IG4gPDwgZW5kbDsKCX0gIAoKCWNvdXQgPDwgIndlcnNqYSA3ICh3aGlsZSwgcsOzd25vd2HFvG5payBwaWVyd3N6ZWogd2Vyc2ppKSIgPDwgZW5kbDsKCW4gPSAzOyAgCgl3aGlsZSgobi0tKT49MCkgewoJCWNvdXQgPDwgIm46ICIgPDwgbiA8PCBlbmRsOwoJfSAgCgkKCXJldHVybiAwOwp9Cg==