A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC ESTRUTURAS DE CONTROLE Estruturas de Repetição Estruturas de Repetição Indefinidas.

Apresentações semelhantes


Apresentação em tema: "Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC ESTRUTURAS DE CONTROLE Estruturas de Repetição Estruturas de Repetição Indefinidas."— Transcrição da apresentação:

1 Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC ESTRUTURAS DE CONTROLE Estruturas de Repetição Estruturas de Repetição Indefinidas

2 Considere o seguinte algoritmo para o cálculo da média bimestral de um aluno: E se eu desejar calcular a média dos 25 alunos da turma? Uma solução é repetir o código acima 25 vezes; outra opção é rodar (executar) o programa acima 25 vezes. 2 %Exemplo: P1 = input(Nota do trabalho: ); P2 = input(Nota da prova: ); Media = 0.3*P *P2; disp(Media);

3 No entanto, nem sempre essas soluções são viáveis. A idéia, então, é usar o mesmo trecho do código acima sem a necessidade de reescrevê-lo. As estruturas usadas para implementar essa idéia são chamadas Estruturas de Repetição. Elas podem ser divididas em dois tipos básicos: Estruturas de Repetição Definidas Estruturas de Repetição Indefinidas Essas estruturas são apresentadas na seqüência. 3

4 Estruturas de Repetição indefinidas são estruturas onde não se conhece, a priori, quantas repetições serão realizadas. Sua sintaxe é dada por: 4 while ( condição ) comando 1; comando 2; comando 3; end

5 Exercício 01: Identificar o múltiplo de 7 mais próximo de 500 sem superá-lo. 5 x = 0; while( x <= 500 ) x= x+7; end disp(x-7); Variável de controle de repetições Atualização Workspace repetiçãox …… 72504

6 Exercício 02: Identificar se um número fornecido pelo usuário é primo. 6 x = input(Insira o número); flag=0;m=2; while (( flag == 0 )&(m

7 Uso do contador. Atenção para a definição do valor inicial e do incremento a cada repetição! Exemplo 01: Identificar a menor quantidade de termos até que a soma de múltiplos de 3 supere cont= 0; soma = 0; while ( soma <= 500 ) cont = cont+1; soma = soma + 3*cont; end disp(cont); Contador Elemento- neutro Acumulador

8 As estruturas de repetição indefinidas também podem ser usadas em problemas com número de repetições conhecidas. Exercício 02: Calcular a média anual de 10 alunos usando while. 8 soma = 0; cont = 1; while( cont <= 10 ) m = input(Media: ); soma = soma + m; cont = cont + 1; end media = soma/(cont – 1); disp(media);

9 Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC EXERCÍCIOS COMPLEMENTARES

10 Mané escolhe um número entre 0 e 100. Sem ver qual foi o número, Zé tenta adivinhar o número gerado. Zé não pode dizer o número que ele pensa que Mané escreveu. Zé deve prender o número escolhido por Mané ao dizer seu antecessor e seu sucessor. A cada tentativa, deve-se informar a Zé para chutar mais baixo ou mais alto ou se ele perdeu ou venceu. Se Zé acertar o número, declarar que Mané venceu e mostrar o número de tentativas. Se restar apenas uma opção para chute, declarar que Zé venceu por Mané ter ficado preso. Informar o número escolhido por Mané quando o jogo tiver terminado. 10

11 11 clear, clc disp ('Imprensadinho. Jogo para 2 jogadores, denominados Mané e Zé, onde Mané escolhe') disp (um número num intervalo conhecido e Zé não pode acertar o número. Zé tenta prender') disp('o número escolhido por Mané ao dizer o antecessor e o sucessor do número escolhido'); teste = 0; soma = 0; Min = 0; Max = 100; segredo = input('Mané, escreva um número entre 0 e 100: '); clc while( teste == 0 ) fprintf ('Zé, os limites para chute são %i e %i\n', Min, Max); chute = input('Escolha um número no intervalo especificado: '); if ~((chute Min)) fprintf('Chute direito, Zé!\n'); else soma = soma + 1; if( chute == segredo ), teste = 1; fprintf('Perdeu, Zé! Acertaste em cheio! Número de tentativas: %i\n', soma); elseif( (chute < segredo) ) if( (Max-chute) == 2 ), teste = 1; fprintf('Perdeu, Mané! Ficaste preso! Número de tentativas: %i\n', soma); else disp('Zé, chute mais alto'); Min = chute; end else if( (chute-Min) == 2 ), teste = 1; fprintf('Perdeu, Mané! Ficaste preso! Número de tentativas: %i\n', soma); else disp('Zé, chute mais baixo'); Max = chute; end fprintf('O número escolhido por Mané foi %i\n',segredo);

12 Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC Desafios

13 Exercício 01: Programe o jogo da forca Exercício 02: Monte programa que converta número escrito no sistema decimal para binário Exercício 03: Monte programa que converta número escrito no sistema binário para decimal 13


Carregar ppt "Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC ESTRUTURAS DE CONTROLE Estruturas de Repetição Estruturas de Repetição Indefinidas."

Apresentações semelhantes


Anúncios Google