À titre de rappel, l'énoncé (informel) du problème était : écrire une petite classe Triangle telle que le programme suivant :
// ...
Triangle t = new(5, 'A');
t.Dessiner();
// ...
... affichera à la console la chose suivante :
A
AAA
AAAAA
AAAAAAA
AAAAAAAAA
Une solution possible suit (voir https://dotnetfiddle.net/AvrSBS pour une version incluant le programme principal) :
using System;
class Triangle
{
public int Hauteur
{
get; private set;
}
public char Symbole
{
get; private set;
}
public Triangle(int hauteur, char symbole)
{
Hauteur = hauteur;
Symbole = symbole;
}
public void Dessiner()
{
// pour chaque ligne
for (int ligne = 1; ligne <= Hauteur; ++ligne)
{
// afficher blancs
int nbBlancs = Hauteur - ligne;
for(int i = 0; i < nbBlancs; ++i)
{
Console.Write(' ');
}
// afficher symboles
int nbSymboles = 2 * ligne - 1;
for (int i = 0; i < nbSymboles; ++i)
{
Console.Write(Symbole);
}
Console.WriteLine();
}
}
}