Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva.

28
Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva

Transcript of Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva.

Page 1: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva.

Estruturas de Controle

Prof. Alexandre Parra Carneiro da Silva

Page 2: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva.

Í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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

Representação de AlgoritmosSeção 2

Descrição Narrativa Fluxograma Pseudo-Código

Page 15: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva.

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.

Desvantagens

Sujeito a más interpretações, ambigüidades e imprecisões.

Page 17: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva.

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.

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.

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.

Exemplo

Page 21: Estruturas de Controle Prof. Alexandre Parra Carneiro da Silva.

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.

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.

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.

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.

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.

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.

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.

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 “+”.