No post anterior sobre while eu mostrei como fazer um laço simples.
Agora você aprenderá a mais uma maneira de controlar um laço de repetição usando o do while, não é dificil tem a mesma simplicidade do while.
Mas primeiro eu recomendo você que está no começo a dar uma lida nos posts anteriores sobre java:
1º programa Java
Java Usando o else
Java Usando o While
Tipos Primitivos
Continuando..
Até agora você sabe utilizar o while dessa maneira:
public class whilerepete {
public static void main(String[] args) {
byte n = 22;
while (n>=12){
System.out.println(n);
n–;
}}}
O Do While funciona da seguinte maneira lógica, executar um bloco de comando, e após executá-lo fazer com que repita o comando na condição do laço.
Vamos trabalhar isso em portugol:
repita{
esses comandos;
}enquanto (<isso for verdadeiro>);
Agora está mais claro, vamos fazer um programinha pra testar isso, a idéia é criar um programa que imprime a tabuada do 9 da seguinte maneira:
9 x 1 = 9
Desenvolvendo a lógica:
Teremos que criar três variáveis, uma será fixa onde estará armazenado o valor 9, a outra estará variando de 1 em 1 para ser o multiplicado, e última armazenará o resultado;
Dessa maneira o Algoritimo;
Variáveis
resultado: inteiro;
fixo, multiplicador: byte;
fixo ← 9;
multiplicador ← 1;Inicio
repita{
resultado←fixo*multiplicador;
escreva (fixo+”x”+multiplicador+”=”+ resultado);
multiplicador←multiplicador+1;
}enquanto (multiplicador>fixo+1);//é adicionado 1 ao fixo para poder imprimir a tabuada até o valor 10
fim.
Transformando isso em java fica assim:
byte fixo=9, mult=1;
int result=1;
do{
result = fixo*mult;
System.out.println(fixo + ” x ” + mult + ” = ” + result);
mult++;
}while(mult<=fixo+1);
//também se pode usar o 10 ano lugar de “fixo+1″
edentado:
Simples não? E você pode usar de diversas maneiras esse laço.
Dica:
Tente ao máximo simplificar o código, será que o código acima pode ser mais simples? Veja, Nós não precisamos da variável resultado, de maneira que se multiplique os valores na hora de escrever, isso fica assim:
public class dowhile {
public static void main(String[] args) {
byte fixo=9, mult=1;
do{
System.out.println(fixo + ” x ” + mult + ” = ” + fixo*mult);
mult++;
}while(mult<=10);
}
}
Agora imagine isso mais simples, se pensarmos bem não precisamos da variável o fixo também.
public class dowhile {
public static void main(String[] args) {
byte mult=1;
do{
System.out.println(“9″+ ” x ” + mult + ” = ” + 9*mult);
mult++;
}while(mult<=10);
}
}
Agora tente imprimir a tabuada do 1 até o 9, é da mesma simplicidade, brincando dessa maneira com o código se aprende muito, e se aprimora bastante. Veja a tabuada do 1 até o 9 em java:
public class dowhile {
public static void main(String[] args) {
byte mult, tabuada=1;
do{
mult = 1;
//acima é onde o multiplicador é igualado a 1
System.out.println(“Tabuada do “+tabuada);
//abaixo é a repetição que gera os valores
//pelo que são multiplicados as tabuadas
do{
System.out.println(tabuada + ” x ” + mult + ” = ” + tabuada*mult);
mult++;
}while(mult<=10);
tabuada++;
//acima é onde é adicionado +1 a tabuada.
}while(tabuada<10);
}
}
faça testes, brinque com o código, desenvolva novas lógicas e tente implementa-las.
Downloads:





olá meu nome é luciano e agradeço pelo exemplo que o site disponibilizou, ajudou e muito a tirar minhas duvidas, obrigado e um abraço!
Muito boa matéria ! parabéns!
Keith muito obrigado :)