Triangulo com caracteres

Olá,

Para construir um triangulo com caracteres queria implementar o metodo Triangulo aqui em baixo, h é a altura/base e c o caractere escolhido pelo utilisador, por exemplo o *.
Alguém sabe como fazer? :roll:

public void Triangulo(int h, char c)
{

}

Obrigada a todos. :wink:

Amiguinho, por acaso seu triângulo é algo como:

*
**
*  *
*   *
*    *
*****

?
Ou algo como

  *
 *  *
*****

O primeiro triângulo é mais fácil de fazer, e seria o que eu recomendaria que você fizesse.

Bom dia,

O que eu quero obter é um triangulo rectangulo. Eu criei este metodo, em que o h é a altura/base e o c é um caractere escolhido pelo utilizador.

[b]public void Triangulo(int h, char c)
{
int i=1;
while(i<=h)
{
for(int j=0;j<1;j++)
System.out.println©;

 for(int j=0;j<i*1;j++)
 System.out.print(c);
 i++;

}
}[/b]

O problema é que ele repete a ultima linha. Por exemplo para h=4 e c=*, ele faz-me isto: :roll:

**




Alguem sabe o q é q preciso por/modificar?

Obrigado.

Sou muito preguiçoso para analisar seu programa. Em vez disso, veja o que fiz:

class Triangulo {
	private int h;
	private char c;
	public Triangulo (int h, char c) {
		this.h = h; this.c = c;
	}
	public void desenhar () {
	    for (int i = 1; i <= h; ++i) {
		    for (int j = 1; j <= i; ++j) {
			    System.out.print (c);
			}
			System.out.println();
		}
	}

    public static void main (String[] args) {
	    Triangulo t = new Triangulo (5, '*') ;
		t.desenhar();
	}
}

Perfeito :smiley: Aproveitando a tua ajuda tao rapida :D, tambem sabes como fazer para um isosceles? é preciso modificar muito aquele que me mostraste?

Mais uma vez obrigado.

Acho que é melhor você pensar um pouco.

(No Brasil a gente diz algo como “dei a mão e agora quer o braço todo…”)

Na nossa profissão, a gente lê mais os programas dos outros que escreve os nossos próprios*; comece a fazer isso agora, e pense como é que se faz um triângulo isósceles.

Dica: pegue um papel quadriculado e desenhe o tal triângulo, e conte os quadradinhos. Contando esses quadradinhos (brancos e com asteriscos) você consegue saber o que fazer no seu programa.

*E é por isso que fiquei com preguiça de analisar o seu programa :stuck_out_tongue:

Obrigado pela dica, tens razao! Acho que estou bem pertinho da solucao:)

Entao aqui vai a obra de arte possivel ate agora :stuck_out_tongue:

[code]class Triangulo
{
private int h;
private char c;

public Triangulo (int h, char c) 
{   
    this.h = h; this.c = c;   
}   
public void desenhar () 
{   
       for (int i = 1; i <= h; ++i) 
       {   
		
           for (int j = 1; j <= h-i; j++) 
        	System.out.print(" ");
        	
           for(int j=0;j<i*1;j++)
           {
        	 System.out.print(c);
        	 System.out.print(" ");	
           }
         System.out.println();
       }
}   

public static void main (String[] args) 
{   
    Triangulo t = new Triangulo (4, '*') ;   
    t.desenhar();   
}   

} [/code]

é isto que quero mas por exemplo supondo que h=4, a unica maneira que encontrei para centrar por exemplo a segunda linha que contem 2 asteriscos em relacao à primeira linha que tem 1, foi pôr um espaco no intervalo dos dois asteriscos da segunda linha. Só mesmo pondo um espaco como eu fiz é que dá?

Alguém me pode ajudar? :frowning: