Poznaj C++ w$ godziny0121

Poznaj C++ w$ godziny0121



Zaawansowane sterowanie programem 109

W liniach 12-15 wprowadzamy wartości zmiennych. Linia 20 rozpoczyna pętlę while powtarzaną tak długo jak prawdziwe są trzy warunki:

□    mała nie jest większa niż duża

□    duża nie jest ujemna

□    mała nie przekroczyła dopuszczalnego zakresu (MAXMALA)

W linii 23 obliczamy resztę z dzielenia zmiennej mała przez 5000. Nie zmienia to wartości zmiennej. Jeśli jest ona wielokrotnością 5000, to warunek jest spełniony i na ekranie zostaje wypisana kropka. W linii 25 zmienna mała jest zwiększana o 1, w linii 28 odejmujemy 2 od zmiennej duża.

Jeśli któryś z trzech warunków w instrukcji while nie będzie prawdziwy, to pętla przestanie być wykonywana i program przejdzie do linii 31.

continue i break

Zdarza się, że chcesz powrócić do początku pętli while jeszcze przed zakończeniem aktualnego powtórzenia. Instrukcja continue oferuje taką możliwość.

Możesz również chcieć wyjść z pętli wcześniej, niż na to zezwoli warunek. Pozwala na to instrukcja break. Przechodzi ona do instrukcji po pętli.

Listing 8.4. demonstruje działanie obydwu instrukcji. Tym razem gra z poprzedniego przykładu jest bardziej skomplikowana. Użytkownik wprowadza wartości: mała, duża, cel i pomiń. Zmienna mała będzie zwiększana o 1, zmienna duża będzie zmniejszana o 2. Zmniejszanie będzie pominięte, gdy zmienna mała będzie wielokrotnością zmiennej pomiń. Gra kończy się, gdy zmienna mała przyjmie większą wartość niż zmienna duża. Jeśli zmienna duża osiągnie wartość zmiennej cel to wyświetlany jest komunikat i gra również się kończy.

Zadaniem użytkownika jest podać taką wartość zmiennej cel (odpowiednią dla zmiennej duża), aby gra się zakończyła zanim zmienna mała stanie się większa niż duża.

Listing 8.4. break i continue

1:    // Listing 8.4

2:    // Demonstracja break    i continue

3:

4:    tinclude <iostream.h>

5:

6:    int main()

7:    {

8:    unsigned    short mała;

9:    unsigned    long    duża;

10:    unsigned    long    pomiń;

11:    unsigned    long    cel;

12:    const unsigned short MAXMALA=65535;

13:

14:    cout « "Podaj mała liczbę: ";

15:    cin » mała;

W liniach 12-15 wprowadzamy wartości zmiennych. Linia 20 rozpoczyna pętlę while powtarzaną tak długo jak prawdziwe są trzy warunki:

□    mała nie jest większa niż duża

□    duża nie jest ujemna

□    mała nie przekroczyła dopuszczalnego zakresu (MAXMALA)

W linii 23 obliczamy resztę z dzielenia zmiennej mała przez 5000. Nie zmienia to wartości zmiennej. Jeśli jest ona wielokrotnością 5000, to warunek jest spełniony i na ekranie zostaje wypisana kropka. W linii 25 zmienna mała jest zwiększana o 1, w linii 28 odejmujemy 2 od zmiennej duża.

Jeśli któryś z trzech warunków w instrukcji while nie będzie prawdziwy, to pętla przestanie być wykonywana i program przejdzie do linii 31.

continue i break

Zdarza się, że chcesz powrócić do początku pętli while jeszcze przed zakończeniem aktualnego powtórzenia. Instrukcja continue oferuje taką możliwość.

Możesz również chcieć wyjść z pętli wcześniej, niż na to zezwoli warunek. Pozwala na to instrukcja break. Przechodzi ona do instrukcji po pętli.

Listing 8.4. demonstruje działanie obydwu instrukcji. Tym razem gra z poprzedniego przykładu jest bardziej skomplikowana. Użytkownik wprowadza wartości: mała. duża. ceł i pomiń. Zmienna mała będzie zwiększana O 1, zmienna duża będzie zmniejszana o 2. Zmniejszanie będzie pominięte, gdy zmienna mała będzie wielokrotnością zmiennej pomiń. Gra kończy się, gdy zmienna mała przyjmie większą wartość niż zmienna duża. Jeśli zmienna duża osiągnie wartość zmiennej cel to wyświetlany jest komunikat i gra również się kończy.

Zadaniem użytkownika jest podać taką wartość zmiennej cel (odpowiednią dla zmiennej duża), aby gra się zakończyła zanim zmienna mała stanie się większa niż duża.

Listing 8.4. break i continue

1:    // Listing 8.4

2:    // Demonstracja break    i continue

3:

4:    #include <iostream.h>

5:

6:    int main()

7:    {

8:    unsigned    short mała;

9:    unsigned    long    duża;

10:    unsigned    long    pomiń;

11:    unsigned    long    cel;

12:    const unsigned short MAXMALA=65535;

13

cout « "Podaj mała liczbę: cin » mała;


14

15


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0119 Zaawansowane sterowanie programem 107Pętle while Pętla while pozwala na po
Poznaj C++ w$ godziny0123 Zaawansowane sterowanie programem 111 W linii 32 obliczana jest reszta z d
Poznaj C++ w$ godziny0125 Zaawansowane sterowanie programem Listing 8.6. Pomijanie pętli while 1:
Poznaj C++ w$ godziny0127 Zaawansowane sterowanie programem 115Listing 8.8. Jeszcze raz pętla while
Poznaj C++ w$ godziny0129 Zaawansowane sterowanie programem 117Listing 8.10. Demonstracja wielokrotn
Poznaj C++ w$ godziny0131 Zaawansowane sterowanie programem 119EFEKT DZIAŁANIA: No to ile razy sie p
Poznaj C++ w$ godziny0133 Zaawansowane sterowanie programem 121 Jaki znak?
Poznaj C++ w$ godziny0135 Zaawansowane sterowanie programem 153 20:    break; 21: &nb
Poznaj C++ w$ godziny0009 viii Poznaj C++ w 24 godziny 8    Zaawansowane sterowanie p
Poznaj C++ w$ godziny0117 Godzina 8Zaawansowane sterowanie programem Działanie każdego większego pro
Poznaj C++ w$ godziny0202 Zaawansowane funkcje 193 W liniach 53 i 54 wypisywany jest wiek obydwu KOT
Poznaj C++ w$ godziny0081 Funkcje 67 Program wraca do funkcji main(), do linii 13. Okazuje się, że w
Poznaj C++ w$ godziny0158 Zaawansowane wykorzystanie wskaźników 147 32:    } 33: 34:
Poznaj C++ w$ godziny0160 Zaawansowane wykorzystanie wskaźników 149Do czego służy wskaźnik this Gdyb
Poznaj C++ w$ godziny0162 Zaawansowane wykorzystanie wskaźników 151 Zaawansowane wykorzystanie wskaź
Poznaj C++ w$ godziny0182 Zaawansowane referencje i wskaźniki 171 int PobierzWiek() const { return j
Poznaj C++ w$ godziny0184 Zaawansowane referencje i wskaźniki 173 Ponieważ wiemy, że obiekt nie będz
Poznaj C++ w$ godziny0190 Zaawansowane referencje i wskaźniki 179 ZAWSZE NIGDY Zawsze przekazuj p
Poznaj C++ w$ godziny0194 Zaawansowane funkcje 185 57: Prost.RysujKsztalt(); 58: cout «

więcej podobnych podstron