15

Click here to load reader

Algoritmos Aula 08

Embed Size (px)

Citation preview

Page 1: Algoritmos Aula 08

Estruturas de repetiçãoEnquanto/faça (while)

Page 2: Algoritmos Aula 08

Estruturas de repetição

Usadas quando é preciso repetir um bloco de comandos um certo número de vezes.

São denominadas laços ou loops

Cada repetição do bloco de comandos é denominada iteração

Page 3: Algoritmos Aula 08

Exemplos

•Folha de pagamentos: o cálculo do salário e dos encargos é realizado para cada um dos funcionários da empresa

•Cálculo da média dos alunos: o mesmo cálculo é repetido para cada aluno

Page 4: Algoritmos Aula 08

Classificação

•Laços contados – quando se conhece previamente quantas vezes o bloco de comandos será executado.

Para <condição> faça <comandos> - for

•Laços condicionais – quando não se conhece previamente previamente quantas vezes o bloco de comandos será executado. Neste caso, a cada iteração, uma condição (expressão lógica) é avaliada para determinar se o loop continuará ou não.

Enquanto (<condição>) faça <comandos> - whileFaça <comandos> enquanto (<condição>) - do / while

Page 5: Algoritmos Aula 08

Enquanto / faça - while

O bloco de comandos é executado enquanto a condição for verdadeira.

Pseudocódigo:

Enquanto (<condição>) faça

<instruções>

FimEnquanto

Java:

while (<condição>)

<comando>;

while (<condição>)

{

<comandos>;

}

Page 6: Algoritmos Aula 08

Contador

É uma variável auxiliar usada para contar o nº de ocorrências de um evento, como por exemplo, a quantidade de iterações ou repetições de um laço.

Page 7: Algoritmos Aula 08

Contador – Exemplo com while

Contagem e apresentação dos números de 1 a 100.

Pseudocódigo:

Declarar i numérico_inteiro;i ← 1;Enquanto i <= 100 faça

Escrever(i);i ← i + 1;

FimEnquanto

Java:

int i = 1;

while (i <= 100)

{

System.out.println(i);

i++;

}

Page 8: Algoritmos Aula 08

Exemplo

Algoritmo para mostrar os números ímpares entre 30 e 80, em ordem decrescente.

Page 9: Algoritmos Aula 08

Exercício

Elaborar um algoritmo que obtenha dois números inteiros fornecidos pelo usuário e apresente os números compreendidos por eles (inclusive).Por exemplo, se o usuário digitar 20 e 10, a saída do programa será 10, 11, 12, 13, ..., 20.Suponha que o primeiro número digitado pelo usuário é menor que o segundo.

Page 10: Algoritmos Aula 08

Acumulador

É uma variável auxiliar usada para acumular ou totalizar valores processados num laço.

Page 11: Algoritmos Aula 08

Acumulador – Exemplo com while

Cálculo e apresentação da soma dos números de 1 a 100.

Pseudocódigo:

Declarar i,soma numérico_inteiro;

i ← 1;soma ← 0;Enquanto i <= 100 faça

soma ← soma + i;i ← i + 1;

FimEnquantoEscrever (soma);

Java:

int soma = 0, i = 1;

while (i <= 100)

{

soma = soma + i;

i++;

}

System.out.println(soma);

Page 12: Algoritmos Aula 08

Exercício

Elaborar um algoritmo que obtenha dois números inteiros fornecidos pelo usuário e apresente a soma dos números compreendidos por eles (inclusive).Por exemplo, se o usuário digitar 20 e 10, a saída do programa ser a soma dos números de 10 até 20.

Page 13: Algoritmos Aula 08

Repetição condicional com while

Pseudocódigo:Declarar resp alfanumérico;resp ‘S’;Enquanto resp = ‘S’ faça...Escrever (“Deseja continuar?(S/N)”);Ler(resp);

FimEnquanto;

Java:char resp = ‘S’;while (resp == ‘S’){...resp = JOptionPane.showInputDialog(“Deseja continuar?(S/N)”).charAt(0);

}

Page 14: Algoritmos Aula 08

Exercício 1

Adaptar o algoritmo de cálculo da massa ideal para que ele seja repetido até que o usuário não deseje mais.Cálculo da massa ideal:

•Homens: (72.7 * altura) – 58•Mulheres: (62.1 * altura) – 44.7

Page 15: Algoritmos Aula 08

Exercício 2

Elaborar um algoritmo que leia:•o rendimento médio mensal da poupança

•o valor que uma pessoa consegue poupar mensalmente

•o valor total que a pessoa pretende juntar

e determine quantos meses a pessoa terá que poupar.