Você está na página 1de 28

INSTITUTO POLITÉCNICO INDUSTRIAL DE LUANDA

Disciplina: TÉCNICAS E LINGUAGENS DE PROGRAMAÇÃO (TLP)


Classe: 10ª Classe

LÓGICA DE PROGRAMAÇÃO
Professor: Linc. Sampaio João André
PROGRAMA DA DISCIPLINA

1. Introdução a Lógica de Programação. 2. Operadores.


1. Apresentação da Disciplina e Noções de T.L.P. 3. Tipos de expressões.
2. Conceito de algoritmos. 4. Avaliação de expressões.
3. Formas de representação de algoritmos. 5. Comandos de entrada e saída de
4. Descrição narrativa. dados.
5. Fluxograma convencional. 1. Escreva ou mostre
6. Pseudocodigo. 2. Leia ou receba
2. Tipos de dados. 6. Estruturas de controlo.
1. Inteiros. 1. Estruturas de decisão.
2. Reais. 2. Estruturas de repetição.
3. Literais e caracteres.
7. Matrizes (homogéneas).
4. Lógicos.
1. Matrizes unidimensionais (vectores).
5. Constantes
2. Matrizes multidimensionais.
3. Variáveis.
8. Modularização.
1. Conceito e utilidade de variáveis.
1. Funções.
2. Definição de variáveis em algoritmos.
2. Procedimentos
3. Mapeamento de variáveis na memória.
9. Registos (heterogéneas).
4. Expressões.
1. Conceito.

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


TIPOS DE DADOS

 Existem três tipos de dados primitivos, e outros


são tipos de dados abstractos, pois são o resultado
da combinação dos tipos primitivos:

1. Dados Numéricos
2. Dados Cadeia de caracteres ou Literal
3. Dados Lógicos

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


NUMÉRICOS

• Os dados numéricos são divididos em duas classes: os inteiros e os reais

 Inteiros: São aqueles que não possuem componentes decimais ou


fraccionários, podendo ser positivo ou negativo.
• Ex: 15 – número inteiro positivo
• - 20 – número inteiro negativo
• 0 – número inteiro neutro

 Reais: São aqueles que podem possuir componentes decimais ou


fraccionários, podem também ser positivo ou negativos.
• Ex: 15.75 número real positivo com duas casas decimais
• - 20.4 número real negativo com uma casa decimal
• 0.0 número real neutro com uma casa decimal

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


CADEIA DE CARACTERES

• O tipo de dados cadeia de caracteres (literal ou string) é constituído por


uma sequência de caracteres contendo letras, dígitos e /ou símbolos
especiais.

• Este tipo de dados é também chamado alfanumérico, do inglês string.

• Usualmente, as cadeia de caracteres são representados nos algoritmos


pela colecção de caracteres, delimitado em seu inicio e termino com o
carácter aspas (“”).

• Diz-se que o dado do tipo de dados cadeia de caracteres possui um


comprimento dado pelo número de caracteres nele contido.

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXEMPLO

• “QUAL ?” – cadeia de caracteres de comprimento 6


• “ ” – cadeia de caracteres de comprimento 1
• “qUaL ?!$” – cadeia de caracteres de comprimento 8
• “1-2+3=4” – cadeia de caracteres de comprimento 7
• “0” – cadeia de caracteres de comprimento 1

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


TIPO DE DADOS LÓGICOS

• O tipo de dado lógico é usado para representar dois únicos valores


possíveis: Verdadeiro (V) e falso (F).

• É comum encontrar-se em outras referências, outros tipos de pares de


valores lógicos como: verdadeiro / falso, sim / não, 1 / 0, true / false.

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


Constantes

• Um dado é constante quando não sofre


nenhuma alteração no decorrer do tempo, ou
seja, seu valor é constante desde o início até ao
fim da execução do algoritmo, assim como é
constante para execução diferentes no tempo.

• Exemplo:
– Pi=3,1414… ; 5, 15272 ... “Não Fume”

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


VARIÁVEIS

 É um espaço em memória cujo o conteúdo varia durante a execução do algoritmo.


 Devemos ver a variável como um endereço na memória onde é guardada uma
determinada informação. Esta informação deve sempre ser de um tipo específico. O
algoritmo pode alterar este valor quantas vezes forem necessárias de acordo com as
instruções.

 Exemplo:
– média, cotação de divisa, altura, nome ou idade de uma pessoa, etc…

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


NOMECLATURA DE VARIÁVEL

• Para atribuirmos um nome a uma variável, também podemos chamar de


identificador da variável, devemos seguir as seguintes regras:

1. O nome de uma variável deve realçar o valor que será armazenado nela.
2. O primeiro caracter do nome de uma variável deverá ser sempre um
alfabeto (letra), ou UNDERSCORE ( _ ).
3. O nome da variável não pode conter espaços.
4. O nome da variável não pode conter caracteres ou símbolos especiais (?,
#, @, !, +, -, %, *, /...), excepto UNDERSCORE ( _ ), que representa espaço

• Exemplo
• SALARIO  correcto Salario_Hora  correcto
• 1 ANO  incorrecto _Desconto  correcto
• Sal/CASA  incorrecto

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


SINTAXE : DECLARAÇÃO

• Todas as variáveis utilizadas em algoritmo devem ser definidas (declaradas) antes de


serem utilizadas. Isto é necessário para permitir que o compilador reserve um
espaço na memória para as mesmas.

• Sintaxe:
• <tipo_de_dado> <nome_da_variavel>
• <tipo_de_dado> <nome_da_variavel>, <nome_da_variavel>, …

• Exemplo:
– string caracter
– inteiro idade, qtd
– real salario
– logico trabalha

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXERCÍCIO

Classifica os dados especificados abaixo de acordo com seu tipo, assinalando


com I os dados do tipo inteiro, com R os reais, com L o litaral ou cadeia de
caracteres, com B os lógicos (booleanos), e com N aqueles para os quais não
e possível definir o tipo de dado

( ) 0.21 ( )1 ( )V ( )”0” ( )1%


( ) “jose” ( ) 0.35 ( )F ( )T () 0.01
( ) +3257 ( ) “- 0.0” ( ) “F” ( ) +3 ()”abc”
( )F ( )C ( ) Maria ( ) +36

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXERCÍCIO

• Identifique os identificadores incorretos e explique o que esta errado.

( ) valor ( ) _b248 ( ) nota *do *aluno ( ) a1b2c3


( ) 3X4 ( ) Maria ( ) Km/h ( ) xyz
( ) nome empresa ( ) sala_04 ( ) ”nota”

• Supondo que as variáveis NB, NA, NMAT e SX sejam utilizadas para


armazenar a nota, o nome, o numero de matricula e o sexo de um aluno,
declare-as correctamente, associando o tipo adequado ao dado que será
armazenado.

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES

O conceito de expressão em termos computacionais esta intimamente ligado


ao conceito de expressão (ou formula) matemática, onde um conjunto de
variáveis e constantes numéricas relacionam-se por meio de operadores
aritméticos compondo uma formula que, uma vez avaliada resulta num valor.

area = base * altura * 0,5


 ou
area = (base * altura) /2

Matemática Computacional

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


OPERADORES

• Operadores são elementos operacionais que actuam sobre operandos e produzem


um determinado resultado.

• Temos três tipos de operadores:


• Aritméticos (+, -, *, /, %, etc)
• Relacionais (=, >, <, >=, <=, !=)
• Lógicos (e, ou, não)

• De acordo com o número de operandos sobre os quais os operadores actuam, os


últimos podem ser classificados em:
• Binários
• unários

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


OPERADORES ARITMÉTICOS

Os operadores aritméticos são utilizados para obter resultados aritméticos. Além da


adição, subtracção, multiplicação e divisão, podem utilizar também o operador para
buscar o resto da divisão.

Operação Símbolo
Adição +
Subtracção –

Multiplicação *
Divisão /
Exponenciação **

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES ARITMÉTICOS

• São aquelas cujo o resultado da avaliação é do tipo numérico, seja ele real ou inteiro.
Somente o uso de operadores aritméticos e variáveis numéricas é permitido em
expressões deste tipo.

Operador Tipo Operação Prioridade

+ binário Adição 4

- binário Subtracção 4

* binário Multiplicação 3

/ binário Divisão 3

** binário Exponenciação 2

+ unário Manutenção de sinal 1

- unário Inversão de sinal 1

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


OP. ARITMÉTICOS: EXEMPLO

Exemplos:
a) 1+7*2**2-1 b) 3*(2+7)/(5+1)

Solução: Solução:

1+7*4-1 3*9/(5+1)
1+28-1 3*9/6
29-1 27/6
28 4.5

c) 3*(1-2)+4*2 (tpc)
d) 4**5*(12**3)/4-5+45-3+(45**3) (tpc)

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


OPERADORES RELACIONAIS

• Os operadores relacionais são utilizados para comparação de números e caracteres.


Estes operadores sempre retornam valores lógicos (Verdadeiro ou Falso/ True ou
False)
• Para se estabelecer prioridade no que diz respeito a qual operação executar
primeiro, utiliza-se os parênteses.
Operador Símbolo
Igual a =

Diferente de <> Ou != ou

Maior que >


Menor que <
Maior ou igual
>=
que
Menor ou Igual
<=
que

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


OP. RELACIONAIS: EXEMPLO

1. Tendo A = 7 e B = 10, temos Símbolo utilizado para comparação entre


expressões.
Expressão Resultado

A=B F
A <> B V
sim
A>B F ano >= 100
A<B V
A >= B F
não
A <= B V

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES LÓGICAS

São aquelas cujo resultado da avaliação é um valor lógico (V ou F)

Operador Tipo Operação Prioridade E (AND): Uma expressão E é verdadeira se


todas condições forem verdadeiras.
OU (OR) BINARIO Disjunção 3
OU/OR: Uma expressão OU é verdadeiras
se pelo menos uma das condições for
E (AND) BINARIO Conjunção 2 verdadeiras.

NÃO(NOT) UNARIO Negação 1 NÃO(NOT): Uma expressão NÃO inverte o


valor da expressão ou condição.
Operadores lógicos e sua relação de prioridade

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES

• Expressões literais: são aquelas cujo o resultado da avaliação é um valor


literal(string em inglês).

• Os tipos de operadores existentes variam de uma linguagem de programação para


outra, não havendo uma padronização.

Ex.:
“ANG”+”OLA” e o resultado da avaliação é ANGOLA.

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES

• Para a construção de algoritmos todas as expressões aritméticas devem ser


linearizadas, ou seja, colocadas em linha.

Ex:
Matemática Computacional

 (2/3+(5-3))+1

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES (MOD - DIV)

• MOD  Retorna o resto da divisão entre 2 números, e pode ser denotado por (%)
• DIV  Retorna o valor inteiro que resulta da divisão entre dois números.

• Ex:
13 DIV 2 = 6
13 MOD 2 = 1

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES (regras)

• Regras são essenciais para a correcta avaliação de expressões.

 Operadores de maior prioridade devem ser avaliados primeiro. Em caso de empate,


a avaliação se faz da esquerda para direita.
 O uso de parênteses em expressões força a avaliação das mesmas com maior
prioridade.
 Os diversos tipos de operadores devem ser avaliados na seguinte sequencia
dentro de uma expressão complexa: primeiro os aritméticos e literais; a seguir, os
relacionais e, por ultimo os lógicos.

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES (exercícios)

• 1. Dada a declaração de variáveis:


inteiro A, B, C
real X,Y,Z
string NOME, RUA
logico L1, L2
Classifique as expressões seguintes de acordo com o tipo de dado do resultado da sua
avaliação, em I (inteiro), R (real), L(literal), B(lógico) ou N (quando não pode defini-la).

a) ( ) A+B+C i) ( ) A + B/C q) ( )X<L1/RUA


b) ( ) A+B+Z j) ( ) A+X/Z
c) ( ) NOME + RUA k) ( ) AB=L1
d) ( ) AB l) ( )(A=B)
e) ( )JAY m) ( )X+Y/A
f) ( )NOME RUA n) ( )X=Z/A
g) ( ) L1 OU L2 o) ( )L1**L2
h) ( )RUA<> NOME p) ( )A+B/L2

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


EXPRESSÕES (exercícios)

Para as mesmas variáveis declaradas no exercício 1, as quais são dadas os valores


seguintes:
A=1, B=2, C=3, X=2.0, Y=10.0, Z=-10, L1=V, L2=F, NOME=“Pedro”, RUA=“Amilcar”

Diga os resultados das alinhas abaixo.

a) A+B/C
b) A+B+C
c) A/B/C
d) X**B
e) -(X**B )
f) NOME + RUA
g) L1 OU L2
h) (L2 E (NÃO L1))

Email: adario.muatelembe@muatsoft.org Telemóvel: 922 222 628 / 997 100 591


FIM

Se pensares todos os
dias como o ultimo da sua
vida, certamente em algum
deles irás acertar.

Steve Jobs

Você também pode gostar