Bom não sei se entendi direito suas perguntas, mas vamos lá…
Primeiro: Eu no seu caso, usaria um switch…case, como são 20 casos, fica mais facil de gerenciar,
Segundo: Se você utilizar o switch case, não precisa converter o valor de char para int e como vc vai limitar a 20 asteriscos, fica mais facil.
O problema de fazer isso no console é porque dá muita diferença entre a distância entre um caracter na mesma linha e a distância entre caracteres em linhas separadas, isso é, para uma mesma quantidade de caracteres para o lado do quadrado, o resutlado não é bem um quadrado, mas sim um retângulo de altura maior que a largura… Porém o algorítmo é esse ai de cima
Abraço!
cassio
Emerson Bolsoni:
Olá,
Bom não sei se entendi direito suas perguntas, mas vamos lá…
Primeiro: Eu no seu caso, usaria um switch…case, como são 20 casos, fica mais facil de gerenciar,
Segundo: Se você utilizar o switch case, não precisa converter o valor de char para int e como vc vai limitar a 20 asteriscos, fica mais facil.
Acredito ter te ajudado.
Abraços
Um switch com 20 casos?! Pelamordedeus!
Como eu fiz, o tamanho do lado é variável e aceita qualquer valor
Abraços!
1
1koala
cara não sei se é o que vc deseja mas para conversão de valores para inteiro use:
aux = Integer.parseInt(variavel_a_ser_convertida);
Filipe_Cruz
Olá pessoal…
Estou construindo um aplicativo que me pede para solicitar do usuario o tamanho do lado de um quadrado… pegar esse numero e fazer um quadrado com esse tamanho composto por asteriscos … tentei fazer com if…else
importjava.util.Scanner;publicclassQuadrado{/** * @param args */publicstaticvoidmain(String[]args){// TODO Auto-generated method stubScannerinput=newScanner(System.in);intnumero;System.out.print("Entre com o tamanho do lado de seu quadrado: ");numero=input.nextInt();if(numero==1){System.out.print("*");}elseif(numero==2){System.out.print("*\t*\n");System.out.print("*\t*");}elseif(numero==3){System.out.print("***\n");System.out.print("* *\n");System.out.print("***");}elseif(numero==4){System.out.print("****\n");System.out.print("* *\n");System.out.print("* *\n");System.out.print("****\n");}elseif(numero==5){System.out.print("*****\n");System.out.print("* *\n");System.out.print("* *\n");System.out.print("* *\n");System.out.print("*****\n");}}}
… soh que tenho que trabalhar com quadrados de tamos diferentes e de lados possiveis entre 1 e 20…
como eu faço isso… penssei em fazer utilizando while… soh que eu teria que converter char para int … ? como eu faço isso ?