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

Apresentações semelhantes


Apresentação em tema: "Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC"— 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 Estruturas de Repetição Definidas

2 Estruturas de Repetição Definidas
São estruturas de controle para repetição de comandos por um número conhecido de repetições. Sua sintaxe é dada por: para i de vi até vf com passo p faça comando 1; comando 2; comando 3; fim i = variável de controle; vi = valor inicial atribuído a i; vf = valor final atribuído a i (condição de parada); p = incremento dado à variável i. for i=vi:p:vf comando 1; comando 2; ... comando n; end

3 Estruturas de Repetição Definidas
São estruturas de controle para repetição de comandos por um número conhecido de repetições. Sua sintaxe é dada por: % Para p>0 i=vi; while (i<=vf) comandos i=i+p; end i=i-p; % Para p<0 i=vi; while (vf<=i) comandos i=i+p; end i=i-p; for i=vi:p:vf comando 1; comando 2; ... comando n; end

4 Estruturas de Repetição Definidas
Exercício 01: Calcular a média bimestral de 10 alunos, sabendo que a nota do trabalho vale 30% e a nota da prova vale 70%. for i = 1:1:10 p1 = input(‘Nota do Trabalho: ’); p2 = input(‘Nota da Prova: ’); media = 0.3*p *p2; fprintf(‘Media = %5.2f’,media); end

5 Estruturas de Repetição Definidas
Os valores de i dependem da seguinte análise para execução / repetição de comandos internos à estrutura: Na prática, i assume um novo valor a cada repetição dos comandos internos. Em “for i=1:2:6”, teremos: repetição valor de i 1a 1=vi 2a 3=vi+p 3a 5=vi+2*p Valor de p valor condição positivo i<=vf negativo vf<=i for i=vi:p:vf comando 1; comando 2; ... comando n; end Se a condição não for satisfeita, os comandos internos à estrutura não são executados. Para vi =vf, os comandos internos não são repetidos.

6 Estruturas de Repetição Definidas
Uso da variável de controle nos comandos internos à estrutura de repetição Exercício 02: Imprima na tela o aluno que o usuário fornecerá a nota for j = 1:1:10 fprintf(‘%2io aluno’, j); p1 = input(‘Insira a nota do Trabalho: ’); p2 = input(‘Insira a nota da Prova: ’); media = 0.3*p *p2; fprintf(‘Media do %2io aluno = %5.2f’,j,media); end

7 Estruturas de Repetição Definidas
Uso do acumulador. Atenção para a definição do valor inicial! Dica: elemento-neutro Exemplo 01: Calcular a média anual de 10 alunos. Acumulador s = 0; for k = 1:1:10 m = input(‘media: ‘); s = s + m; end media = s / 10; fprintf(‘A média da turma é %5.2f’,media); Bloco que será repetido

8 Estruturas de Repetição Definidas
Funcionamento do acumulador: Variável de controle Entrada s = 0; for i = 1:1:10 m = input(‘media: ‘); s = s + m; end media = s / 10; disp(media); Acumulador i m s 1 10 2 5 15 3 20 4 8 28 7 35 6 45 50 56 9 60 63 Ao final da execução, a variável média vai armazenar o valor 63/10 = 6.3.

9 Estruturas de Repetição Definidas
Exercício 03: Dado um número qualquer, calcular o seu fatorial. 2! = 2*1 = 2 3! = 3*2*1 = 6 4! = 4*3*2*1 = 24 5! = 5*4*3*2*1 = 120 x = input(‘Entre com um numero: ‘) fat = 1; for i = 1:1:x fat = fat * i; end fprintf(‘O fatorial de %2i é %6i’,x,fat); Por que 1?

10 Estruturas de Repetição Definidas
Exercício 04: Calcular a soma dos 5 primeiros números pares não-negativos. soma = 0; for i = 1:1:4 x=2*i; soma = soma + x; end disp(soma); Por que 4?

11 Estruturas de Repetição Definidas
E se desejássemos calcular a soma dos 50 primeiros números pares não-negativos? A alteração seria apenas no limite da estrutura de repetição. soma = 0; for i = 1:1:49 soma = soma + 2*i; end disp(soma); O x sumiu?

12 Estruturas de Repetição Definidas
Para agilizar cálculos, os valores de vi, vf e p podem ser definidos de maneira que a variável controle i seja usada diretamente no comando interno. para i de vi até vf com passo p faça comando 1; comando 2; comando 3; fim i = variável de controle; vi = valor inicial atribuído a i; vf = valor final atribuído a i (condição de parada); p = incremento dado à variável i. for i=vi:p:vf comando 1; comando 2; ... comando n; end

13 Estruturas de Repetição Definidas
Exemplo 02: Calcular a soma dos 5 primeiros números pares não-negativos. soma = 0; for i = 1:1:4 soma = soma + 2*i; end disp(soma); soma = 0; for i = 2:2:8 soma = soma + i; end disp(soma); Pra onde foi o 2?

14 Estruturas Aninhadas for i=vi:p:vf if ( condição1 ) comando a1;
comando an; elseif ( condição 2 ) comando b1; for j=vi2:p2:vf2 comando b1a; comando b2a; comando bna; end comando b2; else comando c1; comando c2; comando cn; Estruturas Aninhadas if ( condição1 ) comando a1; comando a2; comando an; elseif (condição 2 ) comando b1; for i=vi:p:vf comando b1a; comando b2a; comando bna; end comando b2; else comando c1; comando c2; comando cn; for i=vi:p:vf comando a1; comando a2; ... comando an; for j=vi2:p2:vf2 comando an1a; comando an2a; comando anma; end comando an+1; comando an+2; comando an+q;

15 Estruturas de Repetição Definidas
Exercício 05: Calcular a soma dos fatoriais dos 5 primeiros números inteiros não-negativos. Por que 1? soma = 1; for i = 1:1:4 fat=1; for j = 1:1:i fat=fat*j; end soma = soma + fat; disp(soma);

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

17 Exercício 01: No programa “Topa tudo por dinheiro”, o jogo do pin premiava os participantes que ao contar os números a partir de “1” substituíssem corretamente os múltiplos de 4 ou números terminados em 4 por “pin”. Exemplo: 1, 2, 3, pin, 5, 6, 7, pin, 9, 10, 11, pin, 13, pin, 15, pin, 17, Crie um programa que informe quantos “pin” existem entre 1 e 50, inclusive.

18 Exercício 02: A série de FETUCCINE é gerada da seguinte forma: os dois primeiros termos são fornecidos pelo usuário; a partir daí, os termos são gerados com a soma ou subtração dos dois termos anteriores, ou seja: para i ímpar; para i par. Criar um programa que imprima os 10 primeiros termos dessa série.

19 A1 = input(‘Digite o primeiro termo’)
A2 = input(‘Digite o segundo termo‘) Ai = 0; % Imprime primeiro e segundo termo disp(A1); disp(A2); for i=3:1:10 % Verifica se o número é par ou ímpar if ( mod(i,2) == 0 ) Ai = A2 – A1; else Ai = A2+ A1; end % Atualiza os valores de A1 e A2 A1 = A2; A2 = Ai; % Imprime termos disp(Ai);

20 Exercício 03: Calcule o valor do cosseno de x (em radianos) usando os 20 primeiros termos da série
x = input(‘Entre com o valor do ângulo: ‘); c = 0; sinal = 1; for i = 0:1:19 fat = 1; for j = 1:1:2*i; fat = fat * j; end c = c + sinal * x^(2*i)/fat; sinal = -1 * sinal; disp(c);


Carregar ppt "Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC"

Apresentações semelhantes


Anúncios Google