Pętla w pętli - rysowanie wzorków

0

Witam.
mam problem z utworzeniem takiego wzoru. Proszę o pomoc. A najbardziej już chodzi o to jak je ustawic, żeby z obu stron się zmniejszała ilosc znakow o jeden.

5555555
 44444
  333
   2
0

Od tyłu łatwiej: a_1 = 2; a_{n+1} = 100 \cdot a_n + \sum_{i = 0}^{2n} 10^i. Od przodu… to by było jakoś tak: b_1 = 5555555; b_{n+1} = \lfloor b_n / 100 \rfloor - \sum_{i = 0}^{\lfloor \log_{10} b_n - 2 \rfloor} 10^i. Chyba.

Ale w ogóle, po co się tak męczysz? Nie łatwiej by Ci było, zamiast się zastanawiać, jakie liczby wypisywać, po prostu drukować odpowiednią liczbę cyfr? Tzn. najpierw siedem piątek, potem pięć czwórek itd.

EDYCJA: To ja zapomniałem, jak się w LaTeX-u pisze, czy coś jest z forum nie tak? Zresztą, sprawdźmy:

a^2 + b^2 = c^2
0

dzięki za odpowiedź . Szkoda tylko , że nie działają Twoje pomoce ;)

1
#include <iostream>
using namespace std;

void draw_triangle(int base, int dec, int startnum) {
	for(int times = 0; base > 0; ++times) {
		for(int i = 0; i < times*dec/2; ++i) {
			cout << " ";
		}
		
		for(int i = 0; i < base; ++i) {
			cout << (startnum-times);
		}
		cout << endl;
		base -= dec;
	}
}

int main() {
	draw_triangle(7, 2, 5);
	return 0;
}

http://ideone.com/fLV2ma

5555555
 44444
  333
   2

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