z1emniak
#cpp #programowanie

cześć, wczoraj pytałem o program wypisujący choinkę, dziś chciałem napisać go z użyciem pętli do while, i oczywiście mi nie działa :<

https://gist.github.com/anonymous/2bc571198f62f58ec68d

dlaczego?
  • Najlepsze
  • Wszystkie komentarze
l.....l
l.....l
@z1emniak: Ok, teraz pomyśl, jaka będzie wartość zmiennej x, kiedy pętla for zacznie drugi obrót?
RRybak
@z1emniak: no to kolejna podpowiedź, tak jak wyżej - patrz na warunek "while". Gdzie zmienia się "i" , gdzie "x".

l.....l
l.....l
@z1emniak: Symfonia jest bardzo spoko. Nie wiem czy idealna na start, ale jak Cię będzie przerastać, to poszukaj jakiejś szkolnej.
l.....l
l.....l
@z1emniak: Bo "x" w pętli do-while nie zmienia się, więc pętla kręci się w nieskończoność.
l.....l
l.....l
@z1emniak: Tak BTW. Zmienne mogą być zadeklarowane poza funkcją main - są to tzw "zmienne globalne", dostępne z każdego miejsca kodu, ale generalnie nie rób tak - to zła praktyka (nie będę wchodził w szczegóły, bo zrozumesz je w swoim czasie : ) ).
z1emniak
z1emniak Autor
0
@losiul: jak to się nie zmienia :|? program ma inkrementować x w każdej iteracji pętli (tej pierwszej)
RRybak
@z1emniak: przyjrzyj się dokładnie gdzie zmienia ci się "i" gdzie " x " ... i teraz się zastanów jak długo będzie lecieć do..while...
z1emniak
z1emniak Autor
0
@RRybak: @losiul: dobra, zrozumiałem, choć tak:

https://gist.github.com/anonymous/6613d49a320ee4a2ff3c

też nie działa
z1emniak
z1emniak Autor
0
@losiul: 2?
l.....l
l.....l
@z1emniak: Nie : ).
z1emniak
z1emniak Autor
0
l.....l
l.....l
@z1emniak: To jest po drugim ; D! Na początku drugiego jest 1. Teraz pytanie: jaką liczbę powinno wypisać w drugim rzędzie, żeby program działał jak powinien?
z1emniak
z1emniak Autor
0
@losiul: nie mam pojęcia. co do "na początku drugiego jest 1" też nie rozumiem, jak dla mnie to powinno dzialac przy takim kodzie:

http://puu.sh/81Y6P.png

a nie
l.....l
l.....l
@z1emniak: Jak w takim razie chcesz, żeby to działało : )? Konkretniej: jaki chcesz uzyskać efekt na ekranie?
z1emniak
z1emniak Autor
0
@losiul: chciałem zrobić to:

http://puu.sh/81YCZ.png

ale za pomocą do..while ;)
l.....l
l.....l
@z1emniak: ok, ale jaki chcesz uzyskać efekt na ekranie : ) - chcę żebyś to nazwał.
RRybak
@z1emniak: @losiul: pionowa linia gwiazdek ;) gdyby tylko Jasio wiedział ile miał jabłek na początku... :P
z1emniak
z1emniak Autor
0
@losiul: chcę wypisać "*" tyle razy, ile wynosi i (czyli tyle razy ile wykonała się pętla, właściwie to i+1 bo i inkrementuje się dopiero po wykonaniu pętli), zakończyć wiersz i zapętlić to wszystko tyle razy ile podał użytkownik
l.....l
l.....l
chcę wypisać "*" tyle razy, ile wynosi i


@z1emniak: Świetnie. Ile musi wynosić wartość "x" na początku pętli do-while, żeby pętla wykonała się "i" razy?

[EDITed]