Buscar

cap 5 Estruturas de repetição - C# e Orientação a Objetos

Prévia do material em texto

24/10/2014 Estruturas de repetição - C# e Orientação a Objetos
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/estruturas-de-repeticao/#5-1-repetindo-um-bloco-de-codigo 1/6
CAPÍTULO 5
Estruturas de repetição
5.1 - REPETINDO UM BLOCO DE CÓDIGO
De volta ao exemplo da aula anterior, suponha agora que o cliente desse mesmo
banco queira saber quanto ele ganhará, ao final de 1 ano, caso ele invista um valor.
O investimento paga 1% do valor investido ao mês.
Por exemplo, se o cliente investir R$ 1000,00, ao final de 12 meses, terá por
volta de R$ 1126,82: no primeiro mês, R$ 1000,00 + R$1000,00 * 1% = R$ 1010,00;
no segundo mês, R$ 1010,00 + R$1010,00 * 1% = R$ 1020,10; e assim por diante. Ou
seja, para calcular o quanto ele terá ao final de um ano, podemos multiplicar o
valor investido 12 vezes por 1%.
Para resolvermos esse problema, precisamos fazer uso de uma estrutura de
controle que repete um determinado bloco de código até que uma condição seja
satisfeita. Essa estrutura recebe o nome de loop.
Para fazer um loop no C#, utilizaremos, inicialmente, a instrução for. O for é
uma instrução que possui três partes:
A primeira parte é a inicialização, na qual podemos declarar e inicializar uma
variável que será utilizada no for;
A segunda parte é a condição do loop. Enquanto a condição do loop for
verdadeira, o loop continuará executando;
A terceira parte é a atualização, na qual podemos atualizar as variáveis que são
utilizadas pelo for.
Cada uma das partes do for é separada por um ;.
for (inicialização; condição; atualização)
{
APOSTILA C# E ORIENTAÇÃO A OBJETOS
 
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/
http://www.caelum.com.br/?utm_source=Apostila_HTML&utm_campaign=FN-13&utm_medium=referral
http://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fwww.caelum.com.br%2Fapostila-csharp-orientacao-objetos%2F
24/10/2014 Estruturas de repetição - C# e Orientação a Objetos
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/estruturas-de-repeticao/#5-1-repetindo-um-bloco-de-codigo 2/6
Veja o código a seguir, por exemplo, em que usamos um for que repetirá o
cálculo 12 vezes:
Veja que nosso for começa inicializando a variável i com 1 e repete o código de
dentro dele enquanto o valor de i for menor ou igual a 12, ou seja, ele só para no
momento em que i for maior do que 12. E veja que, a cada iteração desse loop, o
valor de i cresce (i += 1). No fim, o código de dentro do for será repetido 12
vezes, como precisávamos.
O mesmo programa poderia ser escrito utilizando-se um while, em vez de um
for:
5.2 - PARA SABER MAIS DO WHILE
No C# quando utilizamos o while, a condição do loop é checada antes de todas
as voltas (iterações) do laço, mas e se quiséssemos garantir que o corpo do laço
seja executado pelo menos uma vez? Nesse caso, podemos utilizar um outro tipo de
laço do V# que é o do while:
Com o do while a condição do loop só é checada no fim da volta, ou seja, o
corpo do loop é executado e depois a condição é checada, então o corpo do
do...while sempre é executado pelo menos uma vez.
 // Esse código será executado enquanto a condição for verdadeira
}
double valorInvestido = 1000.0;
for (int i = 1; i <= 12; i += 1)
{
 valorInvestido = valorInvestido * 1.01;
}
MessageBox.Show("Valor investido agora é " + valorInvestido);
double valorInvestido = 1000.0;
int i = 1;
while (i <= 12)
{
 valorInvestido = valorInvestido * 1.01;
 i += 1;
}
MessageBox.Show("Valor investido agora é " + valorInvestido);
do
{
 // corpo do loop
}
while(condição);
24/10/2014 Estruturas de repetição - C# e Orientação a Objetos
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/estruturas-de-repeticao/#5-1-repetindo-um-bloco-de-codigo 3/6
Agora é a melhor hora de aprender algo novo
Se você gosta de estudar essa apostila aberta da Caelum,
certamente vai gostar dos novos cursos online que
lançamos na plataforma Alura. Você estuda a qualquer
momento com a qualidade Caelum.
Conheça a Alura.
5.3 - PARA SABER MAIS INCREMENTO E DECREMENTO
Quando queremos incrementar o valor de uma variável inteira em uma unidade,
vimos que temos 2 opções:
Porém, como incrementar o valor de uma variável é uma atividade comum na
programação, o C# nos oferece o operador ++ para realizar esse trabalho:
Temos ainda o operador -- que realiza o decremento de uma variável.
5.4 - EXERCÍCIOS
1. Qual é o valor exibido no seguinte código:
256
64
128
int valor = 1;
valor = valor + 1;
// ou
valor += 1;
int valor = 1;
valor++;
int total = 2;
for (int i = 0; i < 5; i += 1)
{
 total = total * 2;
}
MessageBox.Show("O total é: " + total);
http://www.alura.com.br/
24/10/2014 Estruturas de repetição - C# e Orientação a Objetos
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/estruturas-de-repeticao/#5-1-repetindo-um-bloco-de-codigo 4/6
512
2. Faça um programa em C# que imprima a soma dos números de 1 até 1000.
3. Faça um programa em C# que imprima todos os múltiplos de 3, entre 1 e 100.
Para saber se um número é múltiplo de 3, você pode fazer if(numero % 3 == 0).
4. (Opcional) Escreva um programa em C# que some todos os números de 1 a 100,
pulando os múltiplos de 3. O programa deve imprimir o resultado final em um
MessageBox.
Qual o resultado?
5. (Opcional) Escreva um programa em C# que imprime todos os números que são
divisíveis por 3 ou por 4 entre 0 e 30.
6. (Opcional) Faça um programa em C# que imprima os fatoriais de 1 a 10.
O fatorial de um número n é n * n-1 * n-2 ... até n = 1.
O fatorial de 0 é 1
O fatorial de 1 é (0!) * 1 = 1
O fatorial de 2 é (1!) * 2 = 2
O fatorial de 3 é (2!) * 3 = 6
O fatorial de 4 é (3!) * 4 = 24
Faça um for que inicie uma variável n (número) como 1 e fatorial (resultado) como
1 e varia n de 1 até 10:
7. (Opcional) Faça um programa em C# que imprima os primeiros números da
série de Fibonacci até passar de 100. A série de Fibonacci é a seguinte: 0, 1, 1, 2, 3,
5, 8, 13, 21 etc... Para calculá-la, o primeiro elemento vale 0, o segundo vale 1, daí
por diante, o n-ésimo elemento vale o (n-1)-ésimo elemento somado ao (n-2)-
ésimo elemento (ex: 8 = 5 + 3).
int fatorial = 1;
for (int n = 1; n <= 10; n++)
{
 
}
24/10/2014 Estruturas de repetição - C# e Orientação a Objetos
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/estruturas-de-repeticao/#5-1-repetindo-um-bloco-de-codigo 5/6
CAPÍTULO ANTERIOR:
Estruturas de controle
PRÓXIMO CAPÍTULO:
Classes e objetos
8. (Opcional) Faça um programa que imprima a seguinte tabela, usando fors
encadeados:
Você encontra a Caelum também em:
1
2 4
3 6 9
4 8 12 16
n n*2 n*3 .... n*n
Blog Caelum
Cursos Online
Facebook
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/estruturas-de-controle/
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/classes-e-objetos/
http://blog.caelum.com.br/?utm_source=Apostila_HTML&utm_campaign=FN-13&utm_medium=referral
http://www.alura.com.br/
http://facebook.com/caelumbr
24/10/2014 Estruturas de repetição - C# e Orientação a Objetos
https://www.caelum.com.br/apostila-csharp-orientacao-objetos/estruturas-de-repeticao/#5-1-repetindo-um-bloco-de-codigo 6/6
Newsletter
Casa do Código
Twitter
http://www.caelum.com.br/newsletter/?utm_source=Apostila_HTML&utm_campaign=FN-13&utm_medium=referral
http://casadocodigo.com.br/?utm_source=Apostila_HTML&utm_campaign=FN-13&utm_medium=referral
http://twitter.com/caelum

Continue navegando