Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Piramida z gwiazdek
Forum PHP.pl > Forum > Przedszkole
masttiv
Witam!
Nie wiem jak napisac zagnieżdzone pętle zeby wyszło mi coś takiego:

*
**
***
****

W cpp napisalem (bo to jest w sumie proste) ale jakos w php nie moge tego dobrze napisać...


void main()
{
int x,y;
cout << "Ile gwiazdek ma miec trojkat \n";
cin >> x ;

for (int j=x;j>0;j--)
{
for(y=1;y<=j;y++)
cout << "*";
cout <<" \n";
}

getchar();
}
maryaan
pokaz co napisales to poprawimy...
pbnan
  1. <?php
  2. for ($j=10; $j>0; $j--) {
  3. for($y=1; $y<=$j; $y++) {
  4. echo '*';
  5. }
  6. echo '<br>'."rn";
  7. }
  8. ?>
masttiv
  1. <?php
  2. $ilosc_wierszy=10;
  3. $zmienna=0;
  4.  
  5. while($ilosc_wierszy>0){
  6.  
  7. for($zmienna; $zmienna <= $ilosc_wierszy; $zmienna++){
  8.  
  9. echo "* n";
  10.  
  11. }
  12.  
  13. $ilosc_wierszy--;
  14.  
  15. }
  16. ?>
maryaan
prawie dobrze winksmiley.jpg
  1. <?php
  2. $ilosc_wierszy=10;
  3. $zmienna=0; //to mozesz wywalic
  4.  
  5. while($ilosc_wierszy>0){
  6.  
  7. for($zmienna = 0; $zmienna < $ilosc_wierszy; $zmienna++)
  8.  
  9. echo "*";
  10.  
  11. echo "n";
  12.  
  13. $ilosc_wierszy--;
  14.  
  15. }
  16. ?>
tylko ze teraz masz 10 na gorze a jedna na dole, zeby zrobic na odwrot musisz zrobic cos takiego:
  1. <?php
  2. $ilosc_wierszy = 10;
  3. $ktory_wiersz = 0;
  4.  
  5. while($ktory_wiersz++ < $ilosc_wierszy){
  6.  
  7. for($zmienna = 0; $zmienna < $ktory_wiersz; $zmienna++)
  8.  
  9. echo "*";
  10.  
  11. echo "n";
  12. }
  13. ?>

kombinuj a jak nie bedziesz pewny jaka w danym momencie zmienna ma wartosc to sobie ja wrzuc do echo i bedziesz wiedzial w ktorym miejscu popelniasz blad winksmiley.jpg
ania1260
A możecie mi wytłumaczyć, czemu musi być pętla w pętli?

  1.  
  2. $wysokosc = 13;
  3.  
  4. for ($i = 1; $i <= $wysokosc; $i++) {
  5. for ($j = 1; $j <= $i ; $j++) {
  6. echo '*';
  7. }
  8. echo "\n";


kujol
Wydaje mi się że pierwsza pętla odpowiada za wysokość piramidy a druga za szerokość. \n jest to odpowiednik <br / > w html
markonix
  1. <?php
  2. $g = '*';
  3. for ($i = 0; $i < 10; $i++) {
  4. $t .= $g;
  5. echo $t .'<br />';
  6. }
_Borys_
  1. <?php
  2.  
  3. for ($i = 1; $i <= 10; $i++)
  4. {
  5. echo str_repeat('*', $i) . '<br />';
  6. }
  7.  
  8. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.