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

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

Instituto Federal de Santa Catarina

Apresentações semelhantes


Apresentação em tema: "Instituto Federal de Santa Catarina"— Transcrição da apresentação:

1 Instituto Federal de Santa Catarina
Curso Técnico em Informática para Internet Aula 4 – ESTRUTURA DE CONTROLE Instituto Federal de Santa Catarina 1

2 Introdução: 2 Os algoritmos são criados para solucionar
problemas propostos utilizando conceitos de bloco lógico, entrada e saída de dados, constantes, variáveis, expressões lógicas, atribuições e comandos. Dentro do algoritmo, existe a necessidade de tomadas de decisões que vão interferir diretamente no andamento do programa. As estruturas básicas de controle do fluxo de execução são as seguintes: seqüencial, condicional/ de seleção e repetição. 2 2

3 Estrutura de Controle Sequencial
Refere-se ao conjunto de comandos que são executados numa seqüência linear, de cima para baixo, ou seja, na mesma ordem em que aparecem. Cada comando é executado somente após o término do comando anterior. 3 3

4 Estrutura de Controle Sequencial
Uma estrutura de Controle Seqüencial é delimitada pelas palavras reservadas Inicio e Fim e é constituída de comandos de atribuição, comandos de entrada e comandos de saída. Sintaxe Geral: inicio Comando 1; Comando 2; Comando 3; .... Comando n fim 4 4 4

5 Estrutura de Controle Condicional ou de Seleção
Esta estrutura permite a escolha de um grupo de ações (blocos) a serem executadas de acordo com a aceitação ou não, de certas condições representadas por expressões lógicas ou relacionais. 5 5

6 Estrutura de Controle Condicional ou de Seleção
São testados os parâmetros e dependendo dos seus valores, toma-se um caminho ou outro. As condições que são testadas num algoritmo são do tipo lógica booleana (Verdadeiro ou Falso). Portanto, a seleção de ações pode ter, no máximo, duas alternativas: uma se a condição for verdadeira e outra se a condição testada for falsa. 6 6 6

7 Estrutura de Controle Condicional ou de Seleção
Tipos de Seleção: seleção simples, seleção composta, seleção encadeada/aninhada, seleção de múltipla escolha. 7 7 7

8 Estrutura de Controle Condicional ou de Seleção
Seleções Simples (Se... Então) Sintaxe Geral: se <condição> então // início do bloco verdade comando 1; comando 2; ... comando n; // fim do bloco verdade fimse; Quando a <condição> for verdadeira o “bloco verdade” é executado Quando a <condição> for falsa o “bloco verdade” não é executado 8 8 8

9 Exemplo: início // declaração de variáveis real: N1, N2, N3, N4, // notas bimestrais MA; // média anual // entrada de dados leia (N1, N2, N3, N4); // processamento MA = (N1 + N2 + N3 + N4) / 4; // saída de dados escreva (MA); se (MA >= 7) então escreva (“Aluno Aprovado !”); fimse; fim. Construir um algoritmo que obtenha 4 notas, calcule sua média e apresente a mensagem “Aprovado” caso a média seja igual ou maior que 7. 9 9 9

10 Estrutura de Controle Condicional ou de Seleção
Seleção Composta (Se...então...senão) Nesta estrutura uma única condição (expressão lógica) é avaliada e dependendo do resultado, um comando ou um conjunto de comandos serão executados se a avaliação for verdadeira ou não serão executados se a avaliação for falsa. 10 10 10

11 Estrutura de Controle Condicional ou de Seleção
Seleção Composta (Se...então...senão) Sintaxe Geral: se <condição> então // início do bloco verdade comando 1; comando n; // fim do bloco verdade senão // início do bloco falsidade // fim do bloco falsidade fimse; Quando a <condição> for verdadeira o “bloco verdade” é executado Quando a <condição> for falsa o “bloco falsidade” é Executado 11 11 11

12 Exemplo: início // declaração de variáveis real: N1, N2, N3, N4, // notas bimestrais MA; // média anual leia (N1, N2, N3, N4); MA = (N1 + N2 + N3 + N4) / 4; escreva (MA); se (MA >= 7) então escreva (“Aluno Aprovado !”); escreva (“Parabéns !”); senão escreva (“Aluno Reprovado !”); escreva (“Estude mais !”); fimse; fim. Construir um algoritmo que obtenha 4 notas, calcule er mostre sua média e, se a média>=7, emitir a mensagem “Aluno Aprovado”, caso contrário escreva a mensagem “Aluno Reprovado”! 12 12 12

13 Estrutura de Controle Condicional ou de Seleção
Seleção Encadeada ou Aninhada Esta estrutura apresenta um grande conjunto de possibilidades ou combinações formando uma seleção encadeada ou aninhada. Ocorre quando uma seleção tem como ação, uma outra seleção. 13 13 13

14 Exemplo: início inteiro: A, B, C; // tamanho dos lados leia (A, B, C); se (A<B+C) e (B<A+C) e (C<A+B) então se (A=B) e (B=C) então escreva (“Triangulo Equilátero”); senão se (A=B) ou (B=C) ou (A=C) então escreva (“Triângulo Isósceles”); escreva (“Triangulo Escaleno”); fimse; escreva (“Estes valores não formam um triângulo”); fim. Construa um algoritmo que leia os três lados de um triângulo e determine se o triângulo é equilátero (3 lados iguais), isóceles (2 lados iguais) ou escaleno (3 lados diferentes). 14 14 14

15 Estrutura de Controle Condicional ou de Seleção
Seleção de Múltipla Escolha Esta estrutura é uma generalização da construção SE, onde somente uma condição é avaliada e dois caminhos podem ser seguidos. Nesta estrutura de Seleção de Múltipla Escolha pode haver uma ou mais condições a serem testadas e um comando diferente associado a cada uma dessas. 15 15 15

16 Estrutura de Controle Condicional ou de Seleção
Seleção Composta (Se...então...senão) Sintaxe Geral: escolha X caso V1: C1; caso V2: C2; caso V3: C3; caso V4: C4; fimescolha; 16 16 16

17 Exemplo: Construa um algoritmo que leia o preço e a origem de um produto e na seqüência, mostre o preço juntamente com a especificação da região conforme a origem. A origem está definida como segue. 1 - Produto do Sul 2 - Produto do Norte 3 - Produto do Leste 4 - Produto do Oeste 7 ou 8 ou 9 - Produto do Sudeste de 10 à 20 - Produto do Centro-oeste 5 ou 6 ou de 25 à 50 - Produto do Nordeste Caso a origem não esteja contemplada nas citadas acima, o produto é importado. 17 17 17

18 Exemplo: 18 início real: Preço; inteiro: Origem; leia (Preço, Origem);
escolha Origem caso 1: escreva (Preço, “ – produto do Sul”); caso 2: escreva (Preço, “ – produto do Norte”); caso 3: escreva (Preço, “ – produto do Leste”); caso 4: escreva (Preço, “ – produto do Oeste”); caso 7, 8, 9: escreva (Preço, “ – produto do Sudeste”); caso : escreva (Preço, “ – produto do Centro- Oeste”); caso 5, 6, : escreva (Preço, “ – produto do Nordeste”); caso contrário: escreva (Preço, “ – produto importado”); fimescolha; fim. 18 18 18

19 Estrutura de Controle de Repetição
A estrutura de Controle de Repetição é utilizada quando desejamos que um mesmo conjunto de instruções ou comandos sejam executados mais de uma vez. As estruturas de repetição são também chamadas de Laços ou Loops. Quanto ao critério de parada, os laços podem utilizar: Repetição com Teste no Início, Repetição com Teste no Final ou Repetição com Variável de Controle. 19 19

20 Estrutura de Controle de Repetição
20 20 20

21 Repetição com Teste no Início (enquanto...faça)
Verifica antes de cada execução, se é “permitido” executar o trecho do algoritmo. Trata-se de um laço que se mantém repetindo enquanto uma dada condição permanecer verdadeira. enquanto <condição> faça comando 1; comando 2; ... comando n; fimenquanto; Sintaxe Geral: 21 21

22 Repetição com Teste no Início (enquanto...faça)
A elaboração de algoritmos com estas estruturas torna-se necessário o uso de dois tipos de variáveis: as variáveis contadoras e as acumuladoras. Uma variável contadora é uma variável que recebe um valor inicial antes do início de uma estrutura de repetição e é incrementada no interior da estrutura de um valor constante, geralmente 1 (um), conforme o exemplo a seguir: início inteiro: CON; CON = 0; //Contadora => inicialização com valor 0 (zero) enquanto CON < 3 faça CON = CON + 1; //Contadora é incrementada da //constante 1 (um) fimenquanto; fim. Incremento Significa aumentar o que já existe em uma variável. Normalmente o incremento é de 1. Ex: x=x+1 22 22 22

23 Exemplo: Calcular a média aritmética para 50 alunos sendo que são fornecidos suas 4 notas. Espera-se, para cada aluno, o cálculo e resultado da sua média e a mensagem “Aluno aprovado, Parabéns!” Quando a média for >=7 ou “Aluno reprovado, estude mais!” quando contrário. Utilize o enquanto faça. 23 23 23

24 Exemplo: 24 início // declaração de variáveis
real: N1, N2, N3, N4, // notas bimestrais MA; // média anual inteiro: CON; // contador CON = 0; // inicialização do contador enquanto (CON < 50) faça // teste da condição de parada leia (N1, N2, N3, N4); MA = (N1 + N2 + N3 + N4) / 4; escreva (MA); se (MA >= 7) então escreva (“Aluno Aprovado. Parabéns !”); senão escreva (“Aluno Reprovado. Estude mais !”); fimse; COM = CON + 1; // incremento do contador fimenquanto; fim. 24 24 24

25 Repetição com Teste no Início (enquanto...faça)
Uma variável acumuladora é uma variável que recebe um valor inicial, geralmente 0 (zero) antes do início de uma estrutura de repetição, e é incrementada no interior da estrutura de um valor variável, geralmente a variável usada na estrutura de controle, conforme o exemplo abaixo: início inteiro: CON, X, ACM; CON = 0; ACM = 0; //ACM é o acumulador enquanto CON < 3 faça CON = CON + 1; leia (X); ACM = ACM + X; fimenquanto; fim. 25 25 25

26 Exemplo: Obter a média aritmética para 50 alunos, sendo que é lido a média da cada aluno. Utilize a estrutura de repetição enquanto - faça. 26 26 26

27 Repetição com Teste no Final (Repita...até)
Esta estrutura verifica depois de cada execução, se é “permitido” continuar executando o trecho do algoritmo. Trata-se de um laço que se mantém repetindo até que uma dada condição se torne verdadeira. Sintaxe Geral: repita comando 1; comando 2; ... comando n; até <condição>; 27 27 27

28 Exemplo: Obter a média aritmética para 50 alunos, sendo que é lido a média da cada aluno. Utilize a estrutura de repetição com teste no final (repita...até) início // declaração de variáveis real: MA, // média anual de dado aluno ACM, // Acumulador MAT; // Média Anual da Turma inteiro: CON; // contador CON = 0; // inicialização do contador ACM = 0; // inicialização do acumulador repita leia (MA); ACM = ACM + MA; // soma em ACM os valores lidos em MA CON = CON + 1; // incremento do contador até (CON >= 50); // teste da condição de parada MAT = ACM / 50; // calculo da média anual da turma escreva (“média anual da turma = “, MAT); fim. 28 28 28

29 Repetição com Variável de Controle (para...faça)
Decremento É o inverso do Incremento, ou seja, reduz-se o valor existente. Ex: x=x-1 Repetição com Variável de Controle (para...faça) É o Laço simplificado para utilização em repetições de quantidade predeterminada. Incorpora internamente o funcionamento de um contador de repetições (incremento/decremento) Sintaxe Geral: para V de vi até vf passo p faça comando 1; comando 2; ... comando n; fimpara; 29 29 29

30 Exemplo: Obter a média aritmética para 50 alunos, sendo que é lido a média da cada aluno. Utilize a estrutura de repetição para-faça. início // declaração de variáveis real: MA, // média anual de dado aluno ACM, // Acumulador MAT; // Média Anual da Turma inteiro: V; // contador ACM = 0; // inicialização do acumulador para V de 1 até 50 passo 1 faça leia (MA); ACM = ACM + MA; // soma em ACM os valores lidos em MA fimpara; MAT = ACM / 50; // calculo da média anual da turma escreva (“média anual da turma = “, MAT); fim 30 30 30

31 Síntese Estrutura de Controle Sequencial, refere-se ao conjunto de comandos que são executados numa seqüência linear, de cima para baixo, ou seja, na mesma ordem em que aparecem. Cada comando é executado somente após o término do comando anterior. Esta estrutura permite a escolha de um grupo de ações (blocos) a serem executadas de acordo com a aceitação ou não, de certas condições representadas por expressões lógicas ou relacionais. A estrutura de Controle de Repetição é utilizada quando desejamos que um mesmo conjunto de instruções ou comandos sejam executados mais de uma vez. As estruturas de repetição são também chamadas de Laços ou Loops. 31

32 Atividades de Aprendizagem
1) Elabore um algoritmo que gere e escreva os números ímpares inteiros entre 100 e 200. 2) Elabore um algoritmo que dada a idade de um nadador classifique-o em uma das seguintes categorias: Infantil A = 5 a 7 anos Infantil B = 8 a 11 anos Juvenil A = 12 a 13 anos Juvenil A = 14 a 17 anos Adultos = Maiores de 18 anos 32

33 Atividades de Aprendizagem
3) Faça um algoritmo que gere os valores de 1 a 100 e a cada múltiplo de 10 emita uma mensagem: “Múltiplo de 10”. 4) Faça um algoritmo que determine o maior entre N números. A condição de parada é a entrada de um valor 0, ou seja, o algoritmo deve ficar o maior até que a entrada seja igual a 0 (ZERO). 5) Construa um algortimo que leia 500 valores inteiros e positivos e: a) Encontre o maior valor b) Encontre o menor valor c) Calcule a média dos números lidos 33

34 Atividades de Aprendizagem
6) Observe o algoritmo a seguir e responda: X, N : inteiro inicio leia (N , X) Y = 1 enquanto ( X > 0 ) faça Y = Y * N X = X - 1 fim enquanto escreva ( Y ) fim 34 34

35 Atividades de Aprendizagem
a) Qual o objetivo do algoritmo acima ou qual o problema que ele está solucionando? b) O algoritmo está correto? Como você fez para testá-lo? c) Altere o algoritmo, utilizando a Estrutura Repita ... Até d) Altere o algoritmo, utilizando a Estrutura Para ... Faça e) Qual das três opções de algoritmo é a melhor em sua opinião? Por quê? 35 35

36 Bibliografia Forbellone, André L. V.; Eberspächer, Henri Frederico, Lógica de Programação, 2ª Edição. Editora Pearson Education, São Paulo, 2001 Berg, Alexandre; Figueiró, Joice Pavek, Lógica de Programação, 3ª Edição, Editora Ulbra,Canoas, 2000 Moraes, Paulo Sérgio de, Lógica de Programação, Unicamp - Centro de Computação – DSC, Ultima Atualização: 04 de Abril de 2000 36


Carregar ppt "Instituto Federal de Santa Catarina"

Apresentações semelhantes


Anúncios Google