estruturas de controle prof. alexandre parra carneiro da silva
TRANSCRIPT
![Page 1: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/1.jpg)
Estruturas de Controle
Prof. Alexandre Parra Carneiro da Silva
![Page 2: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/2.jpg)
Índice
Seção 1 – Estruturas de Controle Seção 2 – Representação de
Algoritmos
![Page 3: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/3.jpg)
Estruturas de ControleSeção 1
Estrutura Seqüencial Estruturas de Seleção Estruturas de Repetição
![Page 4: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/4.jpg)
Estrutura Seqüencial
É o conjunto de ações primitivas que serão executadas numa seqüência linear de cima para baixo e da esquerda para a direita, isto é, na mesma ordem em que foram escritas.
inicio
Comando a;
Comando b; ::
Comando N; fim.
![Page 5: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/5.jpg)
Estruturas de Seleção
Uma estrutura de seleção permite a escolha de um grupo de ações e estruturas a ser executado quando determinadas condições, representadas por expressões lógicas, são ou não satisfeitas.
Tipos de estruturas de seleção: Seleção Simples; Seleção Composta; Seleção Encadeada; Seleção Múltipla Escolha.
![Page 6: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/6.jpg)
Estruturas de Seleção: Simples
se <condição>
| então | {bloco ou comando}
fimse;
Sintaxe:
![Page 7: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/7.jpg)
Estruturas de Seleção: Composta
se <condição>
| então | {bloco ou comando} | senão | {bloco ou comando} fimse;
Sintaxe:
![Page 8: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/8.jpg)
Estruturas de Seleção: Encadeada Ocorre quando há necessidade de agruparmos
várias seleções. Tal formação é requerida quando uma determinada ação ou bloco deve ser executado se um grande conj. de possibilidades ou combinações de situações for satisfeito.
se <condição 1> | então | se <condição 2> | então
| :: {bloco ou comando} | senão
| se <condição ...> | então
| :: {bloco ou comando}fimse;
![Page 9: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/9.jpg)
Seleção de Múltipla Escolha
escolha X | caso V1: {bloco A ou comando A};
| caso V2: {bloco B ou comando B}; | caso V3: {bloco C ou comando C}; | ... ... | caso Vn: {bloco N ou comando N}; fimescolha;
![Page 10: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/10.jpg)
Estruturas de Repetição
Estas estruturas permitem a repetição de um comando, ou bloco de comandos, um número determinado de vezes ou tantas vezes quantas uma condição lógica permita.
Tipos de estruturas de repetição:Repetição com teste no inícioRepetição com teste no finalRepetição com variável de controle
![Page 11: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/11.jpg)
Repetição com o teste no início
Nesta estrutura a repetição acontece enquanto uma condição lógica relacionada for verdadeira.
enquanto <condição> faça | {bloco ou comando}
fimenquanto;
![Page 12: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/12.jpg)
Repetição com o teste no final
Nesta estrutura a repetição acontece até uma condição lógica relacionada for verdadeira.
repita
| {bloco ou comando}
até <condição>;
![Page 13: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/13.jpg)
Repetição com variável de controle
Nesta estrutura a repetição acontece um número determinado de vezes, de forma automática.
para V de vi até vf passo p faça
| {bloco ou comando}fimpara;
Onde: V é a variável de controle; vi é o valor inicial da variável V;
vf é o valor final da variável V, ou seja, o valor até o qual
ela pode chegar;p é o valor do incremento dado à variável V.
![Page 14: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/14.jpg)
Representação de AlgoritmosSeção 2
Descrição Narrativa Fluxograma Pseudo-Código
![Page 15: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/15.jpg)
Descrição Narrativa
Representação de algoritmos diretamente em linguagem natural, o português.
Cálculo da média de um aluno - Obter notas da primeira e segunda provas; - Calcular a média aritmética entre as duas
provas; - Se a média for maior que 7.0, o aluno foi
aprovado, senão ele foi reprovado.
![Page 16: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/16.jpg)
Desvantagens
Sujeito a más interpretações, ambigüidades e imprecisões.
![Page 17: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/17.jpg)
Exercício Proposto
Crie um algoritmo em descrição narrativa com o objetivo de trocar um pneu de carro. Seja detalhista!
![Page 18: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/18.jpg)
Fluxograma
Representação gráfica de algoritmos onde formas geométricas diferentes implicam ações (instruções, comandos) distintas.
![Page 19: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/19.jpg)
Símbolos de Representação
Início e Final do fluxograma.
Operação de entrada de dados.
Operação de saída de dados.
Operação de atribuição e controle sub-algoritmo. Tomada de Decisão.
![Page 20: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/20.jpg)
Exemplo
![Page 21: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/21.jpg)
Vantagens e Desvantagens
Padrão mundial;
Figuras representam melhor que palavras;
Representação conhecida e reconhecida;
Trabalhoso e complicado a medida que o algoritmo cresce.
![Page 22: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/22.jpg)
Exercício Exemplo
Faça um algoritmo (representação fluxograma) que leia as quatro notas bimestrais de um aluno. Ao final, o algoritmo deve mostrar a média aritmética das notas do aluno, bem como se foi aprovado ou reprovado. Considerar que para ser aprovado os alunos devem alcançar média superior ou igual a 8.0
![Page 23: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/23.jpg)
Exercício Proposto
Faça um algoritmo que escreva 100 vezes o texto “Não vou fazer mais bagunça”, utilizando um comando de repetição (representação fluxograma).
![Page 24: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/24.jpg)
Pseudo-Código
Representação de algoritmos através de uma pseudo-linguagem de programação, cujos comandos são em português.
![Page 25: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/25.jpg)
Exemplo
Algoritmo Média-Aluno
inicio inteiro: nota1, nota2;
real: media; leia (nota1, nota2);
media := (nota1 + nota2) / 2; se (media >= 7) então escreva “APROVADO”; senão escreva “REPROVADO”; fimse;
fim.
![Page 26: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/26.jpg)
Vantagens e Desvantagens
Usa o português como base;
Pode-se definir quais e como os dados serão estruturados;
Rápida codificação do algoritmo;
Não padronizado.
![Page 27: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/27.jpg)
Exercício
Num frigorífico existem 90 bois. Cada boi traz preso em seu pescoço um cartão contendo seu número de identificação e seu peso. Faça um algoritmo (representação pseudo-código) que escreva o número e o peso do boi mais gordo e do boi mais magro (suponha que não haja bois com mesmo peso).
![Page 28: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva](https://reader036.vdocuments.pub/reader036/viewer/2022062418/552fc10c497959413d8c396e/html5/thumbnails/28.jpg)
Exercício Proposto
Faça um algoritmo (em pseudo-código) que calcule a multiplicação de dois números inteiros sem utilizar o operador “*”. Utilize apenas o operador “+”.