Jak rysować rekurencyjnie gwiazdkami?

0

Cześć!

Napisałem program który wyświetla gwiazdki, tyle że od góry jest tych gwiazdek 5 i maleje do jednej. Co muszę zrobić żeby było od 1 gwiazdki i rosło o 1 aż do tych 5?

I jeszcze jedno... jeżeli chciałbym z gwiazdek rysować jakieś figury geometryczne (kwadraty, koła, romby) to można to pewnie zrobić wpisując wzór na pole danej figury (tyle jak to umiejscowić w kodzie?) I czy jest możliwość rysowania takich figur rekurencyjnie?

Oto mój kod:

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication5
{
    class Program
    {
        static void gwiazdki(int n)
        {
            if(n<1)
            return;
            
            gwiazdki(n - 1);
            Console.Write("*");

            
        }
        static void wyswietl(int n)
        {
            if (n < 1)
                return;
            gwiazdki(n);
            Console.WriteLine();
            wyswietl(n - 1);

        }

        static void Main(string[] args)
        {
            
            wyswietl(5);

            Console.ReadKey();
        }
    }
}
 
0

Proponuję taką modyfikację:

        static void wyswietl(int n)
        {
            wyswietl(n, n);
        }

        static void wyswietl(int n, int max)
        {
            if (n < 1)
                return;
            gwiazdki(max - n + 1);
            Console.WriteLine();
            wyswietl(n - 1);
        }

I jeszcze jedno... jeżeli chciałbym z gwiazdek rysować jakieś figury geometryczne (kwadraty, koła, romby) to można to pewnie zrobić wpisując wzór na pole danej figury (tyle jak to umiejscowić w kodzie?) I czy jest możliwość rysowania takich figur rekurencyjnie?

Z samego wzoru nie da się wywnioskować kształtu figury. Rekurencyjnie na pewno można to zaimplementować, gdyż każdą pętlę można łatwo zamienić na rekurencję.

0

Przepraszam że tak późno odpisuje ale dopiero teraz zauważyłem odpowiedź.

Podany kod nie działa.

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