• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[Pytanie] Amatorskie pytanie dotyczące pętli programowej While

Object Storage Arubacloud
0 głosów
303 wizyt
pytanie zadane 15 maja 2016 w C i C++ przez Konrad Polit Początkujący (410 p.)
Witam, mam takie amatorskie pytanie. Otóz mam taki mały programek, ale nie ogarniam jednej rzeczy w tej pętli. Otóż w kodzie :

while(ile)
     {
        cout<<"*";

        ile=ile-1
     }

 Gdy wykonuje sie pętla, gwiazdek pisze się tyle, ile jest w deklaracji ile. Tzn gdy Int Ile wynosi 50, to napisze się 50 gwiazdek. to znaczy,że deklaracja wykona się tyle ile jest w odpowiedzi Ile. Nie powinno być tak,że dopóki ile=dana liczba to instrukcja wykona się raz, a nie tyle ile jest w tym incie? Niestety nie wyjaśniłem to zbyt jasno, ale mam nadzieje że zrozumiecie. Cały program:

#include <iostream>

using namespace std;

int main()
{
    int ile;
    cout<<"ile gwiazdek ma miec kapitan? : ";
    cin>>ile;
    cout<<endl; cout<<"No to narysujmy wszystkie " << ile << ": ";

     // pętla rysująca gwiazdki
     while(ile)
     {
        cout<<"*";
     }

 

 

}

3 odpowiedzi

+1 głos
odpowiedź 15 maja 2016 przez mrcnsct Nałogowiec (36,390 p.)
Gdy ile stanie się zerem to pętla się przerwie. Pętla przerywa się, gdy warunek ma wartość logiczną 0. Każda liczba różna od 0 ma wartość logiczną 1.
0 głosów
odpowiedź 15 maja 2016 przez Porcupine Nałogowiec (31,560 p.)
Wiąże się to z tym, że C++ jako język słabo typowany dopuszcza niejawne rzutowanie typów. Pętla while wykonuje się dopóki warunek w () jest prawdziwy. A tak się składa, że każda liczba różna od zera rzutuje się w C++ do wartości true. Z kolei 0 rzutuje się do false. Więc wartość zmiennej "ile" będzie się zmniejszać aż dojdzie do 0 i wtedy pętla się przerwie.

 

Pozdrawiam,
0 głosów
odpowiedź 15 maja 2016 przez Konrad Polit Początkujący (410 p.)
Okej, rozumiem.Dziękuje wam :)

Podobne pytania

0 głosów
2 odpowiedzi 210 wizyt
pytanie zadane 15 czerwca 2016 w C i C++ przez niezalogowany
0 głosów
1 odpowiedź 141 wizyt
pytanie zadane 18 października 2016 w C i C++ przez fixed Nowicjusz (220 p.)
0 głosów
1 odpowiedź 247 wizyt
pytanie zadane 19 maja 2021 w C i C++ przez ViniVici Początkujący (300 p.)

92,537 zapytań

141,377 odpowiedzi

319,456 komentarzy

61,922 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...