Curso Técnico em Informática para Internet Instituto Federal de Santa Catarina Aula 4 –...

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

Transcript of Curso Técnico em Informática para Internet Instituto Federal de Santa Catarina Aula 4 –...

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

Curso Técnico em

Informática para Internet

Instituto Federal de Santa Catarina

Aula 4 – ESTRUTURA DE CONTROLE

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

Informática para Internet

2

Introdução:• Os algoritmos são criados para solucionar

problemas propostos utilizando conceitos debloco 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.

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

Informática para Internet

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

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

Informática para Internet

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

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

Informática para Internet

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.

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

Informática para Internet

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.

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

Informática para Internet

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.

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

Informática para Internet

8

Estrutura de Controle Condicional ou de Seleção

• Seleções Simples (Se... Então)

se <condição> então

// início do bloco verdade

comando 1; comando 2; ... comando n; // fim do bloco

verdade fimse;

Sintaxe Geral:

• Quando a <condição> for verdadeira o “bloco verdade” é executado • Quando a <condição> for falsa o “bloco verdade” não é executado

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

Informática para Internet

9

Exemplo:

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

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.

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

Informática para Internet

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.

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

Informática para Internet

11

Estrutura de Controle Condicional ou de Seleção

• Seleção Composta (Se...então...senão)

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 comando 1; comando n; // fim do bloco falsidade

fimse;

Sintaxe Geral:

• Quando a <condição> for verdadeira o “bloco verdade” é executado • Quando a <condição> for falsa o “bloco falsidade” é Executado

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

Informática para Internet

12

Exemplo:

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”!

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.

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

Informática para Internet

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.

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

Informática para Internet

14

Exemplo:

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

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”); senão

escreva (“Triangulo Escaleno”);

fimse; fimse;

senão escreva (“Estes valores não formam

um triângulo”); fimse;

fim.

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

Informática para Internet

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.

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

Informática para Internet

16

Estrutura de Controle Condicional ou de Seleção

• Seleção Composta (Se...então...senão)

escolha X caso V1:

C1; caso V2:

C2; caso V3:

C3; caso V4:

C4; fimescolha;

Sintaxe Geral:

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

Informática para Internet

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.

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

Informática para Internet

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 10..20: escreva (Preço, “ – produto do

Centro- Oeste”); caso 5, 6, 25..50: escreva (Preço, “ – produto do

Nordeste”); caso contrário: escreva (Preço, “ – produto

importado”); fimescolha;

fim.

Exemplo:

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

Informática para Internet

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.

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

Informática para Internet

20

Estrutura de Controle de Repetição

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

Informática para Internet

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:

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

Informática para Internet

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

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

Informática para Internet

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.

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

Informática para Internet

24

Exemplo: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.

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

Informática para Internet

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.

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

Informática para Internet

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.

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

Informática para Internet

27

Repetição com Teste no Final (Repita...até)

repita comando 1; comando 2; ... comando n;

até <condição>;

• 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:

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

Informática para Internet

28

Exemplo:

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.

• 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é)

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

Informática para Internet

29

• Repetição com Variável de Controle (para...faça)

para V de vi até vf passo p faça comando 1; comando 2; ... comando n;

fimpara;

É 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:

Decremento É o inverso do Incremento, ou seja, reduz-se o valor existente. Ex: x=x-1

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

Informática para Internet

30

Exemplo:

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

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.

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

Informática para Internet

Síntese

31

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

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

Informática para Internet

Atividades de Aprendizagem

32

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

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

Informática para Internet

Atividades de Aprendizagem

33

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

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

Informática para Internet

Atividades de Aprendizagem

34

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

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

Informática para Internet

Atividades de Aprendizagem

35

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ê?

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

Informática para Internet

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