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

Pętla do while, while, for - kiedy jaką używamy?

VPS Starter Arubacloud
0 głosów
3,075 wizyt
pytanie zadane 27 lutego 2019 w C i C++ przez de1vee Nowicjusz (220 p.)
Cześć, mam dosyć kłopotliwy dla mnie problem, ponieważ nie wiem kiedy powinienem użyć jakiej pętli (do while - while - for) Jeśli chodzi o "budowę" pętli to wiem jak napisać taką pętle lecz nie wiem w jakich sytuacjach powinienem użyć tą, a w których tą. Z góry bardzo dziękuje za wszystkie odpowiedzi, są one dla mnie przydatne, ponieważ zaczynam przygodę z programowaniem :)

4 odpowiedzi

+5 głosów
odpowiedź 27 lutego 2019 przez DeBos123 Nałogowiec (44,950 p.)
wybrane 28 lutego 2019 przez de1vee
 
Najlepsza

Pętli while używa się jeżeli nie potrzebujesz iteratora.

Pętli do while używa się jeżeli nie potrzebujesz iteratora i jesteś pewny, że wykonasz kod, który jest w pętli przynajmniej raz bez względu na wartość warunku.

Pętli for używa się kiedy potrzebujesz iteratora.

komentarz 28 lutego 2019 przez de1vee Nowicjusz (220 p.)
Bardzo dziękuje za pomoc. Pozdrawiam :)
+2 głosów
odpowiedź 27 lutego 2019 przez Michał Gibas Pasjonat (19,610 p.)
Wszystko zależy od tego jak będzie ci wygodniej ;)

Np. pętli for użyjesz jak będziesz chciał coś odliczać, albo mieć dostęp do kokejnych elementów tablicy itd.

Nie ma żadnych sztywnych  konwencji jakiej pętli trzeba użyć do danego problemu, bo ten sam problem można rozwiązać właściwie każdą pętlą.

Pozdrawiam!
komentarz 28 lutego 2019 przez de1vee Nowicjusz (220 p.)
Dziękuje bardzo :) Również pozdrawiam.
+1 głos
odpowiedź 27 lutego 2019 przez Eminiox Obywatel (1,500 p.)

@edit ehh miałem kartę otwartą długo i nie zobaczyłem, że już Pan DeBos123 powiedział w sumie to samo co ja

To co Pan Michał powiedział + zauważ, że pętla while jest taka podstawowa. Masz warunek i tyla.

Pętla for została zaprojektowana tak aby było ci wygodniej utworzyć jakiś licznik, czyli zamiast pisać tak:

int i = 0;
while(i != 10) i++


Piszesz tak:

for(int i = 0; i != 10; i++)


Wygodniej, szybciej (szybciej w sensie szybkości pisania, a nie działania, bo dla obu pętli pewnie wygeneruję się ten sam kod) i czytelniej, nie ma żadnej ukrytej magii.

A pętla do ... while - zapewne jak wiesz wykona się przynajmniej jeden raz. Czasami jest taka potrzeba i gdybyśmy jej nie mieli to jakieś boole musielibyśmy tworzyć i odrazu bałagan w kodzie by się zaczął tworzyć.

Także używasz odpowiedniego rodzaju pętli do takiego celu do jakiego zostały stworzone, proste.

komentarz 28 lutego 2019 przez de1vee Nowicjusz (220 p.)
Bardzo dziękuje za pomoc. Pozdrawiam :)
0 głosów
odpowiedź 9 czerwca 2020 przez Ania2019 Użytkownik (530 p.)
Składnia pętli FOR jest idealna, gdy wiemy, ile razy pętla powinna sie wykonac, ale nie zawsze wiemy o tym wcześniej. Pomyśl o pętli WHILE jak o jedzeniu: kiedy zaczynasz jesc, nie znasz dokładnej liczby kesow, ktore musisz wykonac aby zaspokoic glod. Bedziesz jadl tak dlugo az sie nasycisz. W sytuacjach, gdy chcemy, aby pętla wykonała sie nieokreśloną liczbę razy, najlepszym rozwiązaniem sa pętle WHILE.

pozdrawiam

Ania
komentarz 10 czerwca 2020 przez DeBos123 Nałogowiec (44,950 p.)

Dobry przykład z tym jedzeniem, ponieważ będziesz jeść dopóki się nie najesz jednak w drugiej części nie mogę się zgodzić, ponieważ pętla while może wykonywać się określoną ilość razy, a pętla for może wykonać się nieokreśloną ilość razy. Na przykład:

Pętla while wykonująca się określoną ilość razy:

int a=10;
int b=20;
while(a<b){
    a++;
}

pętla wykona się dokładnie 10 razy.

Pętla for wykonująca się nieokreśloną ilość razy:

char a;
char b='a';
for(;a!=b;){
    a=getchar();
}

pętla będzie wykonywać się dopóki użytkownik nie wpisz litery a czyli nieokreśloną ilość razy. Oczywiście w tym przypadku powinno się użyć pętli while jednakże da się użyć też pętli for co zaprzecza temu co napisałaś.

Podobne pytania

0 głosów
2 odpowiedzi 186 wizyt
pytanie zadane 24 listopada 2019 w C i C++ przez eweline Nowicjusz (120 p.)
0 głosów
1 odpowiedź 430 wizyt
pytanie zadane 25 marca 2020 w C i C++ przez Ola_00 Nowicjusz (210 p.)
0 głosów
1 odpowiedź 439 wizyt
pytanie zadane 16 maja 2018 w PHP przez intoksynator Gaduła (3,450 p.)

92,451 zapytań

141,261 odpowiedzi

319,073 komentarzy

61,853 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...