![Page 2: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/2.jpg)
2
Estruturas de ControleTomada de Decisão
• Desvio Condicional Simples (se... então... fim_se.)
• Sendo a condição verdadeira serão executadas as instruções entre a instrução então e a instrução fim_se.
• Sendo a condição falsa serão executadas as instruções após a instrução fim_se.
se <condicao> entãoinstrucoes para condicao verdadeira
fim_seinstrucoes para condicao falsa ou
após ser verdadeira
![Page 3: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/3.jpg)
3
Estruturas de ControleTomada de Decisão
• Desvio Condicional Simples
condição
Instruções executadas quando condição
verdadeira
Instruções executadas quando condição
falsa ou após ser verdadeira
SN
![Page 4: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/4.jpg)
4
Desvio condicional SimplesExemplo
• Leia dois valores numéricos, somá-los e apresentar o resultado caso este seja maior que 10.
programa SOMANUMEROSvar
X: inteiroA: inteiroB: inteiro
inícioleia Aleia BX ← A + Bse (X > 10) então
escreva Xfim_se
fim
![Page 5: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/5.jpg)
5
Operadores Relacionais = Igual a
<> Diferente de> Maior que< Menor que
>= Maior ou igual a<= Menor ou igual a
![Page 6: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/6.jpg)
6
Estruturas de ControleTomada de Decisão
• Desvio Condicional Composto (se... então... senão... fim_se.)
• Sendo a condição verdadeira serão executadas as instruções entre a instrução então e a instrução senão.
• Sendo a condição falsa serão executadas as instruções entre a instrução senão e a instrução fim_se.
se <condicao> entãoinstrucoes para condicao verdadeira
senãoinstrucoes para condicao falsa
fim_se
![Page 7: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/7.jpg)
7
Estruturas de ControleTomada de Decisão
• Desvio Condicional Composto
condição
Instruções executadas quando condição
verdadeira
SN
Instruções executadas quando condição
falsa
![Page 8: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/8.jpg)
8
Desvio condicional CompostoExemplo
• Leia dois valores numéricos e efetuar a adição. Caso o valor somado seja maior ou igual a 10, deverá ser apresentado somando a ele mais 5; caso o valor somado não seja maior ou igual a 10, ele deverá ser apresentado subtraindo 7.
programa SOMANUMEROSvar
X: inteiroA: inteiroB: inteiro
R: inteiroinício
leia A,BX ← A + Bse (X >= 10) então
R ← X + 5senão
R ← X – 7fim_seescreva R
fim
![Page 9: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/9.jpg)
9
Estruturas de ControleTomada de Decisão
• Desvio Condicional Encadeado ou Aninhado– Equivale a uma estrutura condicional dependente de outra, ou
ainda, dentro da outra.se <condicao1> então
instrucoes para condicao1 verdadeirasenão
se <condicao2> entãoinstrucoes para condicao2
verdadeira, porém condicao1 falsa
senãoinstrucoes para condicao1 e condicao2
falsafim_se
fim_se
![Page 10: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/10.jpg)
10
Estruturas de ControleTomada de Decisão
• Desvio Condicional Encadeado ou Aninhado
condição1
Instruções executadas quando condição1
verdadeira
Instruções executadas quando condição1 e
condição2 Falsa
SN
Instruções executadas quando condição1 é
falsa, mas a condição2é verdadeira
condição2
![Page 11: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/11.jpg)
11
Desvio condicional Encadeado Exemplo
• Elaborar um programa que efetue o cálculo do reajuste de salário de um funcionário. Considere que o funcionário deverá receber um reajuste de 15% caso seu salário seja menor que 500. Se o salário for menor ou igual a 500, mas menor ou igual a 1000, seu reajuste será de 10%; caso seja ainda maior que 1000 o reajuste deverá ser de 5%.
programa REAJUSTE_SALÁRIOvar
NOVOSALARIO: realSALARIO: real
inícioleia SALARIOse (SALARIO < 500) então
NOVOSALARIO ← SALARIO * 1.15senão
se (SALARIO <= 1000) entãoNOVOSALARIO ← SALARIO * 1.10
senãoNOVOSALARIO ← SALARIO * 1.05
fim_sefim_seescreva NOVOSALARIO
fim
![Page 12: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/12.jpg)
12
Operadores Lógicos
• Viabiliza a utilização de mais de uma condição na mesma instrução se;
• .e. , .ou. e .não.• Pode evitar o uso de instruções se
encadeadas
![Page 13: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/13.jpg)
13
Operador Lógico .e.
• Utilizado quando dois ou mais relacionamentos lógicos de uma determinada condição necessitam ser verdadeiros.
Condição1 Condição2 ResultadoFalsa Falsa Falso
Verdadeira Falsa FalsoFalsa Verdadeira Falso
Verdadeira Verdadeira Verdadeiro
![Page 14: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/14.jpg)
14
Operador Lógico .e.se <condicao1> .e. <condicao2> entãoinstrucoes executadas se condicao1 e condicao2 verdadeiras
fim_se
![Page 15: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/15.jpg)
15
Operador Lógico .e.Exemplo
programa TESTA_LOGICA_EvarNUMERO: inteiro
inícioleia NUMEROse (NUMERO >= 20) .e. (NUMERO <= 90) então
escreva "O número está na faixa de 20 a 90"senão
escreva "O número está fora da faixa de 20 a 90"fim_se
fim
![Page 16: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/16.jpg)
16
Operador Lógico .ou.
• Utilizado quando pelo menos um dos relacionamentos lógicos de uma determinada condição necessita ser verdadeiro.
Condição1 Condição2 ResultadoFalsa Falsa Falso
Verdadeira Falsa VerdadeiroFalsa Verdadeira Verdadeiro
Verdadeira Verdadeira Verdadeiro
![Page 17: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/17.jpg)
17
Operador Lógico .ou.se <condicao1> .ou. <condicao2> entãoinstrucoes executadas se condicao1 verdadeira ou condicao2 verdadeira
fim_se
![Page 18: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/18.jpg)
18
Operador Lógico .ou.Exemplo
programa TESTA_LOGICA_OUvarSEXO: caractere
inícioleia SEXOse (SEXO = “masculino”) .ou. (SEXO = “feminino”) então
escreva "O seu sexo é valido"senão
escreva "O seu sexo é inválido"fim_se
fim
![Page 19: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/19.jpg)
19
Operador Lógico .não.
• Utilizado quando houver necessidade de se inverter o resultado lógico de uma condição.
• Se a condição for verdadeira será considerada falsa e se for falsa será considerada verdadeira.
Condição ResultadoVerdadeira Falso
Falsa Verdadeiro
![Page 20: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/20.jpg)
20
Operador Lógico .ou.se .não.<condicao1> entãoinstrucoes executadas se condicao for falsa
fim_se
![Page 21: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/21.jpg)
21
Operador Lógico .ou.Exemplo
programa TESTA_LOGICA_NAOvarA, B, C, D: inteiro
inícioleia A, B, Xse .não.(X > 5) então
C (A + B) * Xsenão
C (A - B) * Xfim_seescreva C
fim
![Page 22: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/22.jpg)
22
Exercícios1. Determine o resultado lógico das expressões abaixo. Considere
os seguintes valores: X=1, A=3, B=5, C=8 e D=7.
a) .não.(X > 3) Verdadeiro( ) Falso( )
b) (X < 1) .e. .não. (B > D)Verdadeiro( ) Falso( )
c) .não.(D < 0) .e. (C > 5)Verdadeiro( ) Falso( )
d) .não. (X > 3) .ou. (C < 7)Verdadeiro( ) Falso( )
e) (A > B) .ou. (C > B)Verdadeiro( ) Falso( )
![Page 23: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/23.jpg)
23
Exercíciosf) (X >= 2)Verdadeiro( ) Falso( )
g) (X < 1) .e. (B >= D)Verdadeiro( ) Falso( )
h) (D < 0) .ou. (C > 5)Verdadeiro( ) Falso( )
i) .não.(D > 3) .ou. .não.(B < 7)Verdadeiro( ) Falso( )
j) (A > B) .ou. .não. (C > B)Verdadeiro( ) Falso( )
![Page 24: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/24.jpg)
24
Exercícios2. Indique o valor da variável X nos trechos de programas abaixo. Considere A=2, B=3, C=5 e D=9.
a) se .não. (D > 5) então X ← (A + B) * Dsenão X ← (A - B) / Cfim_seescreva X
b) se (A > 2) .e. (B < 7) então X ← (A + 2) * (B - 2)senão X ← (A + B) / D * (C + D)fim_seescreva X
c) se (A = 2) .ou. (B < 7) então X ← (A + 2) * (B - 2)senão X ← (A + B) / D * (C + D)fim_seescreva X
![Page 25: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/25.jpg)
25
Exercícios
d) se (A > 2) .ou. .não.(B < 7) então X ← A + B - 2senão X ← A - B fim_seescreva X
e) se .não.(A > 2) .ou. .não.(B < 7) então X ← A + Bsenão X ← A / B fim_seescreva X
f) se .não.(A > 3) .e. .não.(B < 5) então X ← A + Dsenão X ← D / B fim_seescreva X
![Page 26: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/26.jpg)
26
Exercíciosg) se (C >= 2) .e. (B <= 7) então
X ← (A + D) / 2 senão X ← D * C fim_se escreva X
h) se (A >= 2) .ou. (C <= 1) então X ← (A + D) / 2 senão X ← D * C fim_se escreva X
![Page 27: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/27.jpg)
27
Exercícios3. Informe se é verdadeiro (V) ou falso (F) o que se afirma sobre o
diagrama de blocos abaixo. A seguir, indique a opção com a sequência correta.
C1
I1 I2
C2
I3 I4
Considere:C1 e C2 são condições.I1, I2, I3 e I4 são instruções.
( ) I1 executa se C1 for falsa.( ) I2 somente executa se C2 for verdadeira( ) Se C1 e C2 forem falsas a I3 executa( ) I4 sempre executa, independente de C1 e C2
a) V – F – V – V b) F – F – F – V c) V – F – V – Fd) F – V – V – F
S
S
N
N
![Page 28: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/28.jpg)
28
Exercícios4. Verifique o resultado lógico das expressões de programação mencionadas
abaixo, marque se é verdadeiro (V) ou falso (F). A seguir, assinale a opção com a sequência correta. Considere para as respostas os seguintes valores: X=1; Y=5.
( ) (X < 1) .e. (X > Y) ( ) (Y > 5) .ou. (X = 1) ( ) .não.(X >= Y)
a) F – V – V b) V – F – F c) F – V – Fd) V – F – V
5. Marque a alternativa que identifica o tipo de operador lógico utilizado na tabelaAbaixo.
Condição1 Condição2 ResultadoFalsa Falsa Falso
Verdadeira Falsa Falso
Falsa Verdadeira Falso
Verdadeira Verdadeira Verdadeiro
a) .ou. b) .if. c) .e.d) .não.
![Page 29: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/29.jpg)
29
Exercícios6. Indique a opção que contém o valor final da variável X, após a execução do
trecho de programa em português estruturado mostrado abaixo. Considere os seguintes valores para as variáveis: A=3; B=2; C=8; D=7.
se .não.(A > 3) .e. .não.(B < 5) entãoX ← 10
senãose (A >= 2) .ou. (C <= 1) então
X ← (A + D) / 2senão
se (A = 2) .ou. (B < 7) entãoX ← (A + 2) * (B - 2)
senãoX ← ((A + C) / B) * (C + D)
fim_sefim_se
fim_se
a) 10 b) 0 c) 15d) 5
![Page 30: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/30.jpg)
30
Gabarito
1. a) Verdadeirob) Falsoc) Verdadeirod) Verdadeiroe) Verdadeirof) Falsog) Falsoh) Verdadeiroi) Falsoj) Falso
2. a) -0.2b) 7.77c) 4d) -1e) 0.66f) 3g) 45h) 4.5
3. C4. A5. C6. D
![Page 31: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/31.jpg)
31
Estruturas de ControleLaços ou Malhas de Repetição
• Utilizado quando é necessário efetuar a repetição de um trecho de programa um determinado numero de vezes.
• Também chamado de looping ou iteração
![Page 32: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/32.jpg)
32
Repetição com teste lógico no início do looping
• Um teste lógico é efetuado no início de um looping, verificando se é permitido executar um trecho de instruções subordinado a esse looping.
• enquanto... faça... fim_enquanto
N
S
![Page 33: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/33.jpg)
33
Repetição com teste lógico no início do looping
programa LOOPING_EXEMPLO1var
X, R : inteiroCONT : inteiro
inícioCONT ← 1enquanto (CONT <= 5) faça
leia XR ← X * 3escreva RCONT ← CONT + 1
fim_enquantofim
![Page 34: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/34.jpg)
34
Repetição com teste lógico no início do looping
programa LOOPING_EXEMPLO2var
X, R : inteiroRESP : caractere
inícioRESP ← “SIM”enquanto (RESP = “SIM”) faça
leia XR ← X * 3escreva Rescreva “Deseja continuar?”leia RESP
fim_enquantofim
![Page 35: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/35.jpg)
35
Repetição com teste lógico no fim do looping
• Efetua um teste lógico no fim de um looping.• As instruções subordinadas a condição estabelecida serão executadas pelo
menos uma vez antes ser feito o primeiro teste lógico.• repita... até_que... • A instrução repita tem seu funcionamento em sentido contrário a
enquanto, pois sempre irá processar um conjunto de instruções até que uma condição se torne verdadeira, isto é, instruções são executadas enquanto uma condição é falsa e até que se torne verdadeira.
N
S
![Page 36: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/36.jpg)
36
Repetição com teste lógico no fim do looping
programa LOOPING_EXEMPLO3var
X, R : inteiroCONT : inteiro
início CONT ← 1repita
leia XR ← X * 3escreva RCONT ← CONT + 1
até_que (CONT > 5)fim
![Page 37: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/37.jpg)
37
Repetição com teste lógico no fim do looping
programa LOOPING_EXEMPLO4var
X, R : inteiroRESP : caractere
iníciorepita
leia XR ← X * 3escreva Rescreva “Deseja continuar?”leia RESP
até_que (RESP <> “SIM”)fim
![Page 38: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/38.jpg)
38
Repetição com Variável de Controle
• Normalmente usamos o enquanto e o repita quando não sabemos previamente a quantidade de vezes que queremos executar um looping.
• Quando conhecemos a quantidade de vezes que queremos executar o looping, isto é, quando o looping é finito utilizamos a instrução para.
• para... de... até... passo... faça... fim_para
![Page 39: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/39.jpg)
39
Repetição com Variável de Controle
var ←Inicio, fim
incremento
Instruções
para <variável> de <início> até <fim> passo <incremento> faça<instruções>
fim_para
![Page 40: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/40.jpg)
40
Repetição com Variável de Controle (Exemplo)
• Pedir a leitura de um valor para a variável X, multiplicar esse valor por 3, implicando à variável de resposta R e apresentar o valor obtido, repetindo esta sequência por cinco vezes.
programa LOOPING_PARAvar
X, R : inteiroCONT : inteiro
iníciopara CONT de 1 até 5 passo 1 faça
leia XR ← X * 3escreva R
fim_parafim
![Page 41: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/41.jpg)
41
Repetição com Variável de Controle (Exemplo)
• Pedir a leitura de um valor para a variável X, multiplicar esse valor por 3, implicando à variável de resposta R e apresentar o valor obtido, repetindo esta sequência por cinco vezes.
programa LOOPING_PARAvar
X, R : inteiroCONT : inteiro
iníciopara CONT de 1 até 5 passo 1 faça
leia XR ← X * 3escreva R
fim_parafim
![Page 42: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/42.jpg)
42
Repetição com Variável de Controle (Exemplo)
início
CONT ← 1,5,1
X
R ← X * 3
R
fim
![Page 43: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/43.jpg)
43
Exercícios1. Qual será o valor de X no momento da escrita.
programa CALCULOvar
X : inteiroCONT : inteiro
inícioX ← 1CONT ← 1enquanto (CONT <= 5) faça
X ← X * CONTCONT ← CONT + 1
fim_enquantoescreva "O valor de X é igual a: ", X
fim
![Page 44: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/44.jpg)
44
Exercícios2. Apresentar o resultado de uma tabuada de 5.
5 x 1 = 55 x 2 = 10...5 x 10 = 50
3. Apresentar o total da soma dos 100 primeiros números inteiros.(1 + 2 + 3 + 4 + ... + 98 + 99 + 100)
4. Elaborar um programa que apresente o somatório dos números pares existentes na faixa de 1 até 500.
![Page 45: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/45.jpg)
45
Exercícios5. Qual sequência numérica será impressa no programa abaixo.
programa PROVAvar
X ,R : inteiroCONT : inteiro
inícioCONT ← 1
X ← 0enquanto (CONT <= 5) faça
R ← X * 3
escreva ← R
CONT ← CONT + 1
X ← X + 1fim_enquanto
fim
![Page 46: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/46.jpg)
46
Gabarito
1. 1205. 0,3,6,9,12
![Page 47: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/47.jpg)
47
Estruturas de Controle Encadeadas
• enquanto com enquantoenquanto <condicao1> faça
enquanto <condicao2> faça<intrucoes>
fim_enquantofim_enquanto
C1
C2
Inst.
N
N
S
S
![Page 48: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/48.jpg)
48
Estruturas de Controle Encadeadas
• enquanto com repitaenquanto <condicao1> faça
repita<intrucoes>
até_que <condicao2>fim_enquanto
C1
C2
Inst.
N
N
S
S
![Page 49: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/49.jpg)
49
Estruturas de Controle Encadeadas • enquanto com paraenquanto <condicao> faça
para <var> de <inicio> até <fim> passo <incr> faça<intrucoes>
fim_parafim_enquanto Cond N
S
var ← inicio, fim,incremento
instruções
![Page 50: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/50.jpg)
50
Estruturas de Controle Encadeadas • repita com repita
repitarepita
<instrucoes>até_que <condicao2>
até_que <condicao1>
Cond1
instruções
Cond2N
S
S
N
![Page 51: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/51.jpg)
51
Estruturas de Controle Encadeadas • repita com enquanto
repitaenquanto <condicao2> faça
<instrucoes>fim_enquanto
até_que <condicao1>
Cond1
instruções
Cond2 N
S
S
N
![Page 52: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/52.jpg)
52
Estruturas de Controle Encadeadas • para com parapara <var1> de <inicio> até <fim> passo <incr> faça
para <var2> de <inicio> até <fim> passo <incr> faça<instrucoes>
fim_parafim_para <condicao>
instruções
var1 ← inicio, fim,incremento
var2 ← inicio, fim,incremento
![Page 53: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/53.jpg)
53
Estruturas de Controle Encadeadas • para com enquantopara <var> de <inicio> até <fim> passo <incr> faça
enquanto <condicao> faça<instrucoes>
fim_enquantofim_para
instruções
var ← inicio, fim,incremento
CondN
S
![Page 54: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/54.jpg)
54
Estruturas de Controle Encadeadas • para com repitapara <var> de <inicio> até <fim> passo <incr> faça
repita<instrucoes>
até_que <condicao>fim_para
instruções
var ← inicio, fim,incremento
CondN
S
![Page 55: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/55.jpg)
55
Exercícios1. Assinale a alternativa que o valor final da variável X, após a
execução do trecho de programa em Português Estruturado mostrado abaixo. Considere os seguintes valores iniciais para as variáveis: X=1;A=5.
enquanto (A < 9) façase (X < 6) então
X ← X * 2fim_seA ← A + 1
fim_enquantoescreva X
![Page 56: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/56.jpg)
56
Exercícios
2. Elaborar um programa que apresente a tubuada de 1 a 10.
![Page 57: 1 Lógica de Programação EAGS SIN – Módulo II Prof. Filipe Estrela filipe80@gmail.com](https://reader036.vdocuments.net/reader036/viewer/2022081502/5706384a1a28abb8238f5012/html5/thumbnails/57.jpg)
57
Gabarito
1. 8