Problema na lógica de um exercício envolvendo laço de repetição

7 respostas
E

Bom dia
Este é meu primeiro tópico então me desculpe qualquer coisa

Tenho que fazer o seguinte programa em java :
Crie um programa que imprima na tela um triângulo de ?*?. Veja o exemplo abaixo:
*
**




Eu queria fazer o contador vezes o caractere (*)
Por exemplo… se eu uso um for
na primeira volta o contador vale 1 e eu tenho que imprimir na tela um *
na segunda volta o contdor vale 2 e eu tenho que imprimir na tela 2 *
ou seja a lógica seria contador vezes *
mas…como eu faço isso ? não da para multiplicar caractere por int

Att

7 Respostas

S

edubranquinho:
Bom dia
Este é meu primeiro tópico então me desculpe qualquer coisa

Tenho que fazer o seguinte programa em java :
Crie um programa que imprima na tela um triângulo de ?*?. Veja o exemplo abaixo:
*
**




Eu queria fazer o contador vezes o caractere (*)
Por exemplo… se eu uso um for
na primeira volta o contador vale 1 e eu tenho que imprimir na tela um *
na segunda volta o contdor vale 2 e eu tenho que imprimir na tela 2 *
ou seja a lógica seria contador vezes *
mas…como eu faço isso ? não da para multiplicar caractere por int

Att

Você vai ter que usar 2 fors e realizar a quebra de linha no for de fora.

Lembrando que out.print() imprime sem quebra de linha e out.println() imprime com quebra de linha.

E

É…deu pra fazer assim como um amigo meu me indicou :

for(int i=0;i<6;i++){

for(int x=0;x<i;x++){

System.out.print("*");

}

System.out.print("\n");

}

E a resposta “oficial” que estava na apostila é :

String linha = <em>";

for ( int contador = 1; contador <= 10; contador ++) {

System . out . println ( linha );

linha += "</em>”;

}
E

Mas de qualquer forma obrigado Sem_Nome !

InicianteJavaHenriqu

:idea: Use 2 for (i e j, por exemplo) e a cada iteração do segundo for (j, por exemplo) atribua que a condição limite deste seja o valor atual da variável do primeiro for (i, por exemplo), assim você incrementa em +1 a duas variáveis do for, dentro do segundo for você exibe o caracter ‘*’ e ao final de cada for você pula uma linha. :idea:

:thumbup:

JuniorMaia

String retorno = ""; int i=0; for(i=1; i<15;i++){ for(int j=0;j<i;j++){ retorno += "*"; } retorno += "\n"; } System.out.print(retorno);

JuniorMaia

o codigo acima vai de 1 a 14, se quiseres, pode editar o numero no for ou criar uma variável para atribuir o valor que quiser, ou até mesmo uma entrada para o usuário digitar, fica a tua critério

E

OBrigado junior maia !

A resposta “oficial” da apostila é essa
mas o mais importante é fazer o exercicio.

String linha = "*";
for ( int contador = 1; contador <= 10; contador ++) {
System . out . println ( linha );
linha += "*";
}
Criado 14 de maio de 2012
Ultima resposta 14 de mai. de 2012
Respostas 7
Participantes 4