Vous êtes sur la page 1sur 25

EXCEL VBA (aula 3)

Lgica de Programao
prof. Gustavo Zimmermann
Excel VBA - Lgica de Programao
Estruturas de Controle

SE ... ENTO

V
Condio

1. SE <condio> ENTO
2. <comandos> F
3. FIM SE Comandos

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Controle

SE ... ENTO
EXEMPLO: Imagine um algoritmo que deve verificar se um nmero positivo e exibir na tela
Nmero positivo.

Incio

1. PROGRAMA Exemplo_se
2. VARIVEL
num
3. num: INTEIRO
4. INCIO
5. LEIA num
num >= 0
V 6. SE (num >= 0) ENTO
7. ESCREVA O nmero positivo
8. FIM SE
9. FIM
F O nmero positivo

Fim

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Controle

SE ... ENTO ... SENO

F V
Condio

1. SE <condio> ENTO
2. <comandos 1>
3. SENO Comandos 2 Comandos 1
4. <comandos 2>
5. FIM SE

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Controle

SE ... ENTO ... SENO


EXEMPLO: algoritmo de um programa que exiba na tela se o nmero digitado pelo usurio
par ou mpar.

Incio

1. PROGRAMA Exemplo_se_senao
2. VARIVEL
num
3. num, verifica : INTEIRO
4. INCIO
5. LEIA num
6. verifica num mod 2
verifica num mod 2
7. SE (verifica = 0) ENTO
8. ESCREVA O nmero par
9. SENO
10. ESCREVA O nmero mpar
F V 11. FIM SE
verifica = 0
12. FIM

O nmero mpar O nmero par

Fim

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Controle

SELECIONE ... CASO


Condio 1
V Comandos 1

Condio 2
V
Comandos 2

F
1. SELECIONE <condio>
2. CASO V1: <comandos> Comandos n
F
Condio 3
V
Comandos 3
3. CASO V2: <comandos>
4. CASO V3: <comandos>
5. FIM SELECIONE

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Controle

SELECIONE ... CASO


EXERCCIO: monte um algoritmo que leia dois nmeros e execute com eles uma das quatro
operaes bsicas de matemtica: adio, subtrao, multiplicao e diviso.
1. PROGRAMA Exemplo_caso 1. PROGRAMA Exemplo_se_entao
2. VARIVEL 2. VARIVEL
3. num1, num2, total: INTEIRO
3. num1, num2, total: INTEIRO 4. operador: CARACTERE
operador: CARACTERE 5. INCIO
4. INCIO 6. LEIA num1 e num2
5. LEIA num1 e num2 7. LEIA operador
8. SE (operador = +) ENTO
6. LEIA operador 9. total num1 + num2
7. SELECIONE operador 10. ESCREVA total
8. CASO +: 11. SENO
9. total num1 + num2 12. SE (operador = -) ENTO
10. ESCREVA total 13. total num1 - num2
14. ESCREVA total
11. CASO -: 15. SENO
12. total num1 - num2 16. SE (operador = *) ENTO
13. ESCREVA total 17. total num1 * num2
14. CASO *: 18. ESCREVA total
19. SENO
15. total num1 * num2 20. SE (operador = /) ENTO
16. ESCREVA total 21. total num1 / num2
17. CASO /: 22. ESCREVA total
18. total num1 / num2 23. SENO
19. ESCREVA total 24. ESCREVA Operao errada!
25. FIM SE
20. CASO CONTRRIO: 26. FIM SE
21. ESCREVA Opo errada! 27. FIM SE
22. FIM SELECIONE 28. FIM SE
23. FIM 29. FIM

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Deciso Encadeadas

FLUXOGRAMA PORTUGOL

F V 1. SE <condio> ENTO
Condio 1
2. <comandos 1>
3. SENO
4. SE <condio 2> ENTO
F V 5. <comandos 2>
Condio 2 Comandos 1

6. SENO
7. <comandos 3>
Comandos 3 Comandos 2 8. FIM SE
9. FIM SE

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Deciso Encadeadas
EXERCCIO: elaborar um programa que l o valor dos trs lados de um tringulo e verifica se
ele equiltero, issceles ou escaleno.
Incio

A, B, C

F A<B+CE V
B<A+CE
C<A+B
A=B V
F E
B=C

F A = B OU
V
Essas medidas no A = C OU
Tringulo Equiltero
formam um tringulo. C=B

Tringulo Escaleno Tringulo Issceles

prof. Gustavo Zimmermann | contato@gust4vo.com Fim


Excel VBA - Lgica de Programao
Estruturas de Repetio

ENQUANTO ... FAA

F
Condio

1. ENQUANTO <condio> FAA


2. <comandos> V
3. FIM ENQUANTO

Comandos

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio

ENQUANTO ... FAA


EXEMPLO: construir um algoritmo para o clculo do fatorial do nmero 3 (3!).

1. PROGRAMA Exemplo_enquanto01 1. PROGRAMA Exemplo_enquanto02


2. VARIVEL 2. VARIVEL
3. contador, fatorial: INTEIRO 3. dias, salario: INTEIRO
4. INCIO 4. resposta: LOGICO
5. fatorial 1 5. INCIO
6. contador 1 6. resposta verdadeiro
7. ENQUANTO (contador <= 3) FAA 7. ENQUANTO (resposta = verdadeiro) FAA
8. fatorial fatorial * contador 8. LEIA dias
9. contador contador + 1 9. salario dias * 10
10. FIM ENQUANTO 10. ESCREVA salario
11. ESCREVA O fatorial de 3 =, fatorial 11. ESCREVA Deseja continuar?
12. FIM 12. LEIA resposta
13. FIM ENQUANTO
14. FIM

EXERCCIO: construir o fluxograma de um dos Portugols acima.

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio

REPITA ... AT QUE


Comandos

1. REPITA
2. <comandos>
3. AT QUE <condio> F
Condio

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio

REPITA ... AT QUE


EXEMPLO: nmeros inteiros de 1 a 100.

1. PROGRAMA Exemplo_repita01 1. PROGRAMA Exemplo_enquanto2


2. VARIVEL 2. VARIVEL
3. num: INTEIRO 3. media, num1, num2: INTEIRO
4. INCIO 4. resposta: LOGICO
5. num 1 5. INCIO
6. REPITA 6. resposta verdadeiro
7. ESCREVA num 7. REPITA
8. num num +1 8. ESCREVA Digite os nmeros
9. AT QUE (num > 100) 9. LEIA num1 e num2
10. FIM 10. media (num1 + num2)/2
11. ESCREVA media
12. ESCREVA Deseja continua?
13. LEIA resposta
14. AT QUE (resposta = falso)
15. FIM

EXERCCIO: construir o fluxograma de um dos Portugols acima.

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio

PARA ... DE ... AT ... PASSO ... FAA

1. PARA <varivel> DE <valor inicial> AT <valor final> PASSO <incremento>


2. FAA
3. <comandos>
4. FIM PARA

Var inicio,
fim,
incremento

Comandos

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio

PARA ... DE ... AT ... PASSO ... FAA


EXEMPLO: algoritmo de programa que calcula e exibe a tabuada do 9.

Incio
1. PROGRAMA Exemplo_para
2. VARIVEL
3. cantador, resultado: INTEIRO
contador
4. INCIO 1, 10, 1
5. PARA contador DE 1 AT 10 PASSO 1 FAA
6. resultado contador * 9
7. ESCREVA resultado
resultado
8. FIM PARA contador *9
9. FIM

resultado

Fim

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

ENQUANTO COM ENQUANTO


F
Condio 1

1. ENQUANTO <condio 1> FAA V


2. ENQUANTO <condio 2> FAA
3. <comandos>
4. FIM ENQUANTO
5. FIM ENQUANTO F
Condio 2

V
EXERCCIO:
Criar algoritmo que calcula a tabuada de qualquer
nmero quantas vezes o usurio desejar, utilizando a Comandos

estrutura ENQUANTO com ENQUANTO.

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

ENQUANTO COM REPITA


F
Condio 1

1. ENQUANTO <condio 1> FAA V


2. REPITA
3. <instrues>
4. AT QUE <condio 2>
5. FIM ENQUANTO Comandos

EXERCCIO:
Criar algoritmo que calcula a tabuada de qualquer F
Condio 2
nmero quantas vezes o usurio desejar, utilizando a
estrutura ENQUANTO com REPITA.
V

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

ENQUANTO COM PARA


F
Condio 1
1. ENQUANTO <condio> FAA
2. PARA <varivel> DE <valor inicial> AT <valor final> PASSO <incremento>
V
3. FAA
4. <comandos> Var inicio,
5. FIM PARA fim,
incremento
6. FIM ENQUANTO

EXERCCIO: Comandos
Criar algoritmo que calcula a tabuada de qualquer
nmero quantas vezes o usurio desejar, utilizando a
estrutura ENQUANTO com PARA.

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

REPITA COM REPITA

1. REPITA
2. REPITA
3. <instrues>
4. AT QUE <condio 2>
5. AT QUE <condio 1>

EXERCCIO:
Criar algoritmo que calcula a tabuada de qualquer
nmero quantas vezes o usurio desejar, utilizando a
estrutura REPITA com REPITA.

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

REPITA COM ENQUANTO

1. REPITA
2. ENQUANTO <condio 2> FAA
3. <comandos>
4. FIM ENQUANTO
5. AT QUE <condio 1>

EXERCCIO:
Criar algoritmo que calcula a tabuada de qualquer
nmero quantas vezes o usurio desejar, utilizando a
estrutura REPITA com ENQUANTO..

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

REPITA COM PARA

1. REPITA
2. PARA <varivel> DE <valor inicial> AT <valor final> PASSO <incremento>
3. FAA
4. <comandos>
5. FIM PARA
6. AT QUE <condio>

EXERCCIO:
Criar algoritmo que calcula a tabuada de qualquer
nmero quantas vezes o usurio desejar, utilizando a
estrutura REPITA com ENQUANTO..

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

PARA COM PARA

1. PARA <varivel> DE <valor inicial> AT <valor final> PASSO <incremento>


2. FAA
3. PARA <varivel> DE <valor inicial> AT <valor final> PASSO <incremento>
4. FAA
5. <comandos>
6. FIM PARA
7. FIM PARA

EXERCCIO:
Criar algoritmo que calcula 3 vezes a tabuada de
qualquer nmero, utilizando a estrutura PARA com
PARA..

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

PARA COM ENQUANTO

1. PARA <varivel> DE <valor inicial> AT <valor final> PASSO <incremento>


2. FAA
3. ENQUANTO <condio>FAA
4. <comandos>
5. FIM ENQUANTO
6. FIM PARA

EXERCCIO:
Criar algoritmo que calcula 3 vezes a tabuada de
qualquer nmero, utilizando a estrutura PARA com
ENQUANTO..

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Estruturas de Repetio Encadeadas

PARA COM REPITA

1. PARA <varivel> DE <valor inicial> AT <valor final> PASSO <incremento> FAA


2. REPITA
3. <comandos>
4. AT QUE <condio>
5. FIM PARA

EXERCCIO:
Criar algoritmo que calcula 3 vezes a tabuada de
qualquer nmero, utilizando a estrutura PARA com
REPITA..

prof. Gustavo Zimmermann | contato@gust4vo.com


Excel VBA - Lgica de Programao
Comparao das Estruturas

ENQUANTO
A Estrutura ENQUANTO faz a verificao do teste lgico no incio e a repetio da
estrutura s ocorre se o resultado da condio for verdadeira.

REPITA
A Estrutura REPITA verifica a condio no final e o looping s continua se a resposta da
condio for falsa.

PARA
Estrutura menos verstil, pois ela no consegue substituir a estrutura ENQUANTO ou
REPITA, quando essas estruturas utilizam como condio de repetio uma resposta do
usurio. Por outro lado, as estruturas ENQUANTO e REPITA podem ser substitudas uma
pela outra, alm de substituir a estrutura PARA.

prof. Gustavo Zimmermann | contato@gust4vo.com

Vous aimerez peut-être aussi