Programik w C++ (Zrobienie piramidy)

0

Witam wszystkich programistów :P
Od nie dawna zacząłem przygodę z C++ i teraz jestem w temacie pętli for, while, do..while.
Chcę zrobić program, który będzie pokazywał piramidę z cyfer "0", po wpisaniu przez nas wysokości. Na razie wyszło mi coś takiego, ale kiedy kompiluje i włączam program to mi wyświetla nieskończoną ilość "zer" (w to jest wysokość)


#include <iostream>

using namespace std;

int w,j,z;

int main()
{
    cin>>w;
    z=w;
    for(int i=1;i<=w;i++)
    {
        while(z>=i)
        {
            z=z-1;
            cout<<" ";
        }
        for(i=1;i=i+2;i++)
        {
            cout<<"0";
        }


        cout<<endl;
    }


    return 0;
}

0

for(i=1;i=i+2;i++) warunek w tej pętli jest zawsze true.

0

Okej dzięki wielkie, a masz pomysł na jakiś warunek, który za każdą następną pętlą powtórzy poprzednią instrukcję więcej o dwa od poprzedniego?

0

A także: Jest tu gdzieś jeszcze błąd?

0
#include <cstdio>

int main() {
    int _h = 10;
    int h, h1;
    h=h1=_h;
    for(int i=0;i<h;++i) {
        for(int z=0;z<h1;z++)printf(" ");
        for(int c=0;c<2*(h-h1+1);c++)printf("0");
        printf("\n");
        h1--; 
    }
}
0
#include <iostream>
 
using namespace std;
 

int main()
{
	int w;
    cin>>w;
    for (int i=0; i< w; ++i){
    	
	    for(int j=0;j<w-i;++j)
	    {
	        cout<<" ";
	    }    	
	    for(int k=0;k<=i*2;++k)
	    {
	        cout<<"0";
	    }
	    cout << endl;
    }

 
 
    return 0;
}
0

Dzięki wielkie! Przez ten czas jak czekałem na odpowiedź udało mi się samemu napisać :P
Mój jest może jest nieco dłuższy, ale bardziej zrozumiały dla mnie :)

#include <iostream>
#include <windows.h>
#include <cstdlib>

using namespace std;

int w,j,z;

int main()
{
    cin>>w;
    z=w;
    for(int i=1;i<=w;i++)
    {
        for (int z=w-1; z>=i; z--)
        {

            cout<<" ";
        }

        for(j=1;i*2-1>=j;j++)
        {
            cout<<"X";
        }


        cout<<endl;
    }


    return 0;
}
1

Może też wstawię rozwiązanie:

#include <iostream>
using namespace std;

int main()
  {
   int Y;
   cin>>Y;
   for(int y=0;y<Y;++y,cout<<endl) for(int x=-Y;x<y;++x) cout<<" 0"[x>-y];
   return 0;
  }

1 użytkowników online, w tym zalogowanych: 0, gości: 1