Você está na página 1de 35

Lógica de Programação

Pratica I
Israel Zanata Escorizza –Maio/2017
1. Ferramenta ADVPlayL
2. Variáveis, Operações e Funções
3. Condições e Comparações lógicas
4. Atividade para entrega

2
ADVPlayL

3
ADVPlayL

ADVPlayL
Ferramenta desenvolvida para utilização de um ambiente de desenvolvimento em ADVPL
sem a necessidade de uma interface complexa.

4
Variáveis,
Operações e Funções

5
Variáveis, operações e funções

Variáveis
• São espaços reservados na memória do computador, identificados por um nome único,
para armazenar dados que serão utilizados durante a execução do programa.

• Uma variável possui três atributos:


Nome
Tipo de dado
Informação armazenada

• As variáveis devem ser declaradas no início do código da seguinte maneira


Local < NOME > := < Valor Inicial >

6
Variáveis, operações e funções

Nomeando variáveis
• O nome da variável deve iniciar com um caractere em minúsculo que defina seu tipo,
c (texto [caractere])
n (numérico)
l (lógico)
a (vetor [array])
o (objeto)
x (indefinido/múltiplos formatos)

• Sequencialmente ao identificador de tipo, um nome que represente seu conteúdo, com


a primeira letra em maiúsculo.
• O nome da variável não deve conter acentuação, espaços em branco ou caracteres
especiais além de sublinhado ( _ )

Ex: cNome; cCodFor; nNota_1; lAtuVlr

7
Variáveis, operações e funções

Operadores
:= Atribuição
+ Adição
- Subtração
* Multiplicação
/ Divisão
% Resto de divisão
^ Exponenciação

Exemplos
nNota := 8 + 4 – (6 + 5)
nMedia := nNota / 4
nDelta := nB ^ 2 - ( 4 * nA * nC )

8
Variáveis, operações e funções

Funções
• São trechos de código responsáveis por realizar uma tarefa específica.

• São reutilizáveis, podendo ser ‘chamados’ em diversas partes do programa.

• Possuem:
Nome Identificador único dentro do código.
Entradas Informações necessárias para a execução.
Saídas Retorno da execução (entradas processadas)

9
Variáveis, operações e funções

Funções

• Function Informa que o trecho de código é uma função

• U_Soma Nome da função

• nVar_1 Parâmetro de entrada


• nVar_2 Parâmetro de entrada

• Return Informa final de trecho de função e retorna resultado

10
Variáveis, operações e funções

Exercício 1
• Desenvolver função U_Entrada que receba a entrada padrão STDIN e retorne seu valor
para a função de principal.

• Desenvolver função U_Saida que receba como parâmetro a variável xSaida da função
principal e envie o valor de xSaida para a saída padrão STDOUT.

11
Variáveis, operações e funções

Exercício 1

12
Variáveis, operações e funções

Exercício 2
• Desenvolver código para:
1. Receber dois números de entrada.
2. Retornar a soma dos números recebidos na saída padrão.

* Utilizar as funções U_Entrada e U_Saida desenvolvidas no exercício 1.

13
Variáveis, operações e funções

Exercício 2

14
Variáveis, operações e funções

Exercício 3
• Desenvolver código para:
1. Receber três números ( nA, nB e nC ) pela entrada padrão.
2. Desenvolver função U_Delta que calcule o Delta ( b^2 – 4*a*c )
3. Retornar o resultado do cálculo na saída padrão.

* Utilizar as funções U_Entrada e U_Saida desenvolvidas no exercício 1.

15
Variáveis, operações e funções

Exercício 3

16
Variáveis, operações e funções

Exercício 4
• Desenvolver código para:
1. Receber três números ( nA, nB e nC ) pela entrada padrão e armazenar em um array
de três posições.
2. Desenvolver função U_Delta, que recebe um array de três posições como parâmetro e
retorna o cálculo do Delta ( b^2 – 4*a*c )
3. Retornar o resultado do cálculo na saída padrão.

* Utilizar as funções U_Entrada e U_Saida desenvolvidas no exercício 1.

17
Variáveis, operações e funções

Exercício 4

18
Condições e
Comparações lógicas

19
Condições lógicas

Variáveis lógicas
.T. Verdadeiro

.F. Falso

Operadores lógicos
.AND. (E) Tem retorno verdadeiro quando as duas condições comparadas
são verdadeiras.

.OR. (Ou) Tem retorno verdadeiro quando ao menos uma das duas
condições comparadas é verdadeira.

! (Não) Inverte o valor lógico da variável.

20
Condições lógicas

Operadores lógicos – Tabela verdade


Tabela Verdade ( ! )
lVar_1 ! lVar_1

.F. .T.

.T. .F.

Tabela Verdade (.AND.) Tabela Verdade (.OR.)


lVar_1 lVar_2 lVar_1 .AND. lVar_2 lVar_1 lVar_2 lVar_1 .OR. lVar_2

.F. .F. .F. .F. .F. .F.

.F. .T. .F. .F. .T. .T.

.T. .F. .F. .T. .F. .T.

.T. .T. .T. .T. .T. .T.

21
Comparação lógica

Operadores relacionais
• Exemplos

lNumDez := nValor == 10
lNumImpar := (nNum % 2) != 0
lRepetiu := nMedia < 7
lPassou := nMedia >= 7

lNaLista := “Pedro” $ cListaApr

22
Comparação lógica

IF...ELSE
• A estrutura IF...ELSE (SE/SENÃO) permite a verificar se determinada condição é
verdadeira ou falsa, dividindo o código em duas ramificações distintas até o final da
estrutura, onde o código volta a ser único.

• A estrutura IF...ELSE (SE/SENÃO) permite que criemos desvios no código, não sendo
obrigatório a inclusão de ações vinculadas a cada resultado.

23
Comparação lógica

CODIGO
Ações anteriores
IF <CONDIÇÃO>
...
...
Falso ( .F. ) Condição Verdadeiro ( .T. ) ...
lógica ELSE
...
Ações vinculadas ...
Ações vinculadas
ao resultado ...
ao resultado falso
verdadeiro ENDIF

Unificação do fluxo
ao final da
estrutura

24
Comparação lógica

CODIGO

Ações anteriores IF <CONDIÇÃO>


...
...
...
Condição Verdadeiro ( .T. )
ENDIF
lógica
Ações vinculadas
Falso ( .F. )
ao resultado
verdadeiro

Unificação do fluxo
ao final da
estrutura

25
Variáveis, operações e funções

Exercício 5
• Desenvolver código para:
Receber dois números ( nA, nB ) pela entrada padrão e informar qual o maior.

26
Variáveis, operações e funções

Exercício 5

27
Variáveis, operações e funções

Exercício 6
• Desenvolver código para:
Receber três números ( nA, nB, nC ) pela entrada padrão e informar qual o maior.

28
Variáveis, operações e funções

Exercício 6

29
Variáveis, operações e funções

Exercício 6

30
Variáveis, operações e funções

Exercício 7
• Desenvolver código para:
1. Receber dois números pela entrada padrão
2. Receber um símbolo matemático pela entrada padrão ( +, -, *, / )
3. Retornar o resultado da operação dos dois números.

31
Variáveis, operações e funções

Exercício 7

32
Atividade

33
Atividade

Atividade
• Desenvolver código para receber três números binários ( 0 ou 1 ) e informar qual a
saída baseada na arvore de decisão abaixo:

nA nB nC
A
0

0
1
B
0 0
1

1 0
1
C
1 0

1
D

34
/totvs Israel Zanata Escorizza
@totvs SQUAD GCT/GCP

blog.totvs.com Israel.escorizza@totvs.com.br

company/totvs

fluig.com Obrigado =)

Você também pode gostar