Java para Iniciantes #3 – Comando While

Hoje veremos sobre o comando WHILE, é bem simples de usar e facilita um muito vida dos programadores, no primeiro post foi visto que foi preciso inserir várias vezes a expressão dessa forma:

nume = nume+2;
System.out.println(nume);
nume = nume+2;
System.out.println(nume);
nume = nume+2;
System.out.println(nume);
nume = nume+2;
System.out.println(nume);
nume = nume+2;
System.out.println(nume);

Mas imagine se você tivesse que escrever isso umas 500 vezes.. é ia ser bem difícil, cansativo, chato e ocuparia muitas linha de código atoa..

Agora entra a utilização do comando while.
Java Para Iniciantes 1

Java Para Iniciantes 2

Primeiro vamos entender o comando em portugol:

Enquanto (<isso for valido>) repita

<comandos e/ou expressões>;

fim Enquanto

em java:

while(true){

//comandos e/ou expressões

}

Usarei a seqüência de Fibonacci para o comando while.

A seqüência de Fibonacci é a seguinte:

1,1,2,3,5,8,13,21,34,55,89,144,233,377,…

Funciona assim, o termo atual mais o termo anterior gera o próximo termo, e como isso fica matematicamente?

valor(1) + valor(2) = valor(3)
valor(2) + valor(3) = valor(4)
valor(3) + valor(4) = valor(5)
valor(4) + valor(5) = valor(6)

Se você não entendeu a acesse esse link ele explica melhor ;)

Bom continuando, Agora vamos aplicar isso:

/**primeiro declaramos as variáveis
vamos precisar declarar valor atual, anterior, soma e a variável para o contador
vejamos
**/

int anterior = 0, atual = 0, soma = 1, contador = 1;

//todas variáveis como valor inteiro

/**a soma já começa com 1

pois este será nosso primeiro resultado

**/

Agora Precisaremos criar um contador para não deixar passar de 14 resultados:

se (contador <= 14) faça

Contador <= Contador +1;

//acima estamos atribuindo ao contado um valor a mais

//do que ele ja tem

fimse.

Em Java:

if (contador<= 14){

//contador

}

Até aqui ta fácil, é hora de criar a lógica para realizar as contas;

de acordo com a fórmula o valor atual se transforma no anterior podemos fazer isso por atribuição:

anterior=atual;

//aqui ‘atual e ‘anterior passam a ter o mesmo valor

Em seguida temos que atribuir o resultado da soma que declaramos com o valor 1 anteriormente;

atual = soma;

/**’atual deixa de ter o valor igual o ‘anterior e assume o valor do resultado no caso a ‘soma **/

Agora usaremos uma expressão para atribuir a soma a adição de atual+anterior dessa maneira:

soma=atual+anterior;

/**soma deixa de ter o mesmo valor de atual e passa a ter um novo valor**/

o código está assim:

int anterior = 0, atual = 0, soma = 1, contador = 1;

if (contador <= 14){

anterior = atual;
atual = soma;
soma = atual + anterior;

}

para while usaremos a condição (true) ou seja ele executará tudo que estiver dentro do while até que você mande parar. para controlar isso usaremos o break que sai do laço em que está inserido.

Dessa forma, repetirá tudo dentro do while até que a condição do if se torne falso e caia no else onde terá o break.

veja o código agora:

int anterior = 0, atual = 0, soma = 1, contador = 1;

while (true){

if (contador <= 14){

anterior = atual;
atual = soma;
soma = atual + anterior;

}else{

break;

}

Só que ainda não temos um contador para fazer com que a condição do if se torne falso

para isso dentro do if teremos que atribuir +1 para a variável contador existem duas maneira de fazer isso

a primeira:

contador = contador+1;

ou a melhor, mais simples e fácil:

contador++;

Não podemos esquecer de imprimir os resultados no console

System.out.print (soma + “, “);

Dessa forma acima os resultados sairão assim 1, 1, 2, 3, 5, ….

o resultado completo:

public class Fibonacci {
public static void main(String[] args) {

int anterior = 0, atual = 0, soma = 1, contador = 1;
while (true){
if (contador <= 14){
System.out.print(soma+”,”);
anterior = atual;
atual = soma;
soma = atual + anterior;
contador ++;//ou contador=contador+1;
}
else {
break;
}
}
}
}

veja o código edentado:

fibonacci

Dica:

para economizar linhas no caso de termos apenas uma linha do bloco do podemos como no mesmo caso do else acima podemos fazer assim:

sem precisar de nenhuma chave para o comando.

else break;

Veja Também:

3 thoughts on “Java para Iniciantes #3 – Comando While

  1. Ótima explicação! A lógica é complicada para se explicar de modo simples como você faz. Só faltou corrigir a dica final onde está escrito “else brak;” na verdade é “else break;” um erro de digitação.
    Mas muito bom esses seus tutoriais.

Deixe um Comentário

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>