Assim como o for, o while gera uma loop de repetição de
código. O que o diferencia do for é que ele é utilizado
quando você não sabe exatamente quantas vezes o ciclo deve acontecer. No
for, se você se lembra da sintaxe, o segundo bloco de execuções era um teste para verificar
se a variável de controle já tinha atingido um valor previamente estabelecido, ou seja, quando montamos o comando já
sabemos quantas vezes ele acontecerá. No while isso não é necessário.
Eu vou começar a falar dele com um primeiro exemplo que faz exatamente a mesma coisa do que criamos no tópico sobre
for, ou seja, um programinha que exibirá um número de 1 a 5 na tela.
A sintaxe do while para isso é:
Executando, teremos:
Agora vou comentar o comando while:
Bem, nesse exemplo também sabemos, mesmo antes do ciclo começar, que ele acontecerá por 5 vezes, então ele parece ter
exatamente a mesma função do for, mas vou dar um exemplo agora para demonstrar seu
funcionamento quando não sabemos quantas vezes o ciclo acontecerá.
Crei um pequeno código para receber a idade do usuário a armazená-la numa variável de mesmo nome, conforme imagem
abaixo:
Vejam como ficou a execução desse código:
Percebam que o programa foi perguntando a minha idade e eu fui inserindo vários valores, mas enquanto não inseri o 25, ele não saiu do loop. Vejam o código comentado:
Como ficou claro neste último exemplo, mesmo sem saber quantas iterações seriam necessárias, conseguimos criar um
loop no código. Isso é o que diferencia o comando for do
while. Com o primeiro você deve saber o número de repetições
para estabelecer seu término. Com o segundo essa informação não precisa ser conhecida no
início da execução.
Essas foram as duas estruturas de repetição do C# que selecionei para comentar nesse momento. Existe uma terceira, que
é, na verdade, uma variação do for, chamada de foreach, e
falarei dela no momento adequado, não se preocupem.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Final Fantasy X
O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!
Senhas
Digitar senhas em computadores de uso coletivo é extremamente perigoso, pois além de softwares de monitoramento, existem dispositivos de hardware que podem capturar suas senhas. Evite ao máximo acessar sites de bancos a partir destes computadores. Veja mais aqui.
Ultima Online
Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras
Asteroids
O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.
Duck Hunt
Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".
Mega Man
A primeira versão do clássico Mega Man, para Nintendo 8 bits, tem seu recorde de pontos estabelecido em 03/11/2006, por David Archey, que cravou 2.396.700 pontos, terminando o jogo.