Piramida liczb

0

Napisz program, który pobierze od użytkownika liczbę od 0 do 9, a następnie wyświetli na
ekranie „piramidę” w taki sposób, że:
jeśli podana cyfra to 0, program wyświetli:
0
jeśli podana cyfra to 1, program wyświetli:

 0
010

jeśli podana cyfra to 2, program wyświetli:

  0
 010
01210

pomozecie napisac funkcje tej piramidy nie wiem nawet od czego zaczac

0

Co dalej, jak będzie przy trójce? Nie jest to jakaś wersja Trójkata Pascala?
https://en.wikipedia.org/wiki/Pascal%27s_triangle

0

z 3 powinno byc 0
010
01210
0123210

0

W C++

#include <iostream>

using namespace std;

string build( int size ){
    string result;
    for( auto i {0} ; i<size ; ++i ) result += to_string(i);
    return result+to_string(size)+string(rbegin(result),rend(result));
}

int main(){
    cout << build(3);
}
0

@TomaszLiMoon:
buid(3) -> 0123210, a powinno piramidkę drukować, (to jej ostatni rząd tylko)

0

W C można to też zrobić topornymi voidami i printfami:), jak komuś sie nudzi, to może się w rekurencję pobawić.

void printLine(int m) {
  for (int i = 0; i < m; ++i) {
      printf("%d", i);
  }
  printf("%d", m);
  for (int i = m - 1; i >= 0; --i) {
      printf("%d", i);
  }
}

void printTriangle(int n) { 
    for (int line = 0; line <= n; line++) {  
            printLine(line); 
            printf("\n"); 
    } 
} 
0

Może jednolinijkowiec?

#include <stdio.h>

int main(int n)
{
	if(scanf("%d",&n)>0) for(int y=0;y<=n;++y,printf("\n")) for(int x=0;x<=y<<1;++x) printf("%*d",x?1:n-y+1,x<=y?x:(y<<1)-x);
	return 0;
}

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