terça-feira, 26 de fevereiro de 2008

PDA - Aula 05: Operadores e Expressões 1

* Esta obra é uma adptação do autor desse blog da disciplina de Fundamento de Algoritmo para Computação do curso de Tecnologia em Sistemas de Computacão/Cederj UFF das aulas originais cujo os autores são: Adriano Cruz e Jonas Knopman.

Índice


1. Objetivos
2. O que são Expressões?
3. Constantes
4. Tipos de Operadores
5. Operadores Aritméticos
6. Expressões Aritméticas
7. Bibliografia

1. Objetivos
  • Apresentar os diversos tipos de operadores e expressões.
  • Mostrar como as expressões devem ser escritas em pseudo-código.
  • Mostrar as regras de avaliação de expressões.
  • Apresentar o conceito de atribuição de resultados.
2. O que são Expressões?
  • Expressões combinam variáveis, operadores e constantes para produzir um resultado.
  • Variáveis são nomes usados para representar posições na memória onde estão dados que serão processados.
  • Constantes são símbolos usados para representar dados.
  • Operadores são usados para combinar as variáveis e constantes fornecendo um valor como resposta.
  • Notar que as regras variam de linguagem para linguagem de programação.
  • O conjunto de regras definido para este pseudo-código permite que o programador mude facilmente para outra linguagem de programação.
Exemplos de Expressões
  • 0.5 * base * altura
  • (nota1 + nota2) / 2.0
  • (temperatura > 0) e (quantidade <>
  • 4 mod 3 + 5
  • A > B
Observações nas Expressões
  • Observar que as expressões são escritas sempre em uma mesma linha.
  • Observar os símbolos usados para multiplicação (*) e divisão (/).
  • Avaliar primeiro as operações de maior prioridade, por exemplo (multiplicação e divisão).
  • Se temos de escolher entre operadores de mesma prioridade então escolher o que está mais à esquerda.
  • Ex. 4/2*3 -- primeiro divide-se 4 por 2 e em seguida multiplica-se o resultado por 3, dando como resultado 6
  • Caso queira trocar a prioridade use parênteses.
  • Não são permitidos outros símbolos para esta função tais como { } e [ ].
3. Constantes
  • Constantes aparecem em expressões do tipo
  • (lado1 + lado2) / 2
  • Nesta expressão temos a variável lado1 somada à variável lado2 e o resultado dividido pela constante 2.
  • Cada variável representa uma posição de memória.
  • As constantes são armazenadas junto com o código do programa, não ocupando espaço da área onde estão os dados.
  • Constantes podem ser do mesmo tipo que os dados que já estudamos e devem ser representados do mesmo modo.
  • Constantes podem ser dos seguintes tipos:
.: Inteiras
.: Reais
.: Caracteres
.: Cadeias de caracteres
  • Constantes inteiras como já visto para os dados inteiros têm o seguinte formato:
.: Inteiro = [‘+’ | ‘-’]algarismo{algarismo}
  • Exemplos de constantes inteiras:
+256
128
-32768
555
-12345
  • Constantes reais, também como já visto para os dados reais têm o seguinte formato:
Real =
[‘+’ | ‘-’]algarismo{algarismo}.algarismo{algarismo}
  • Exemplos de constantes reais:
3.141516
-22.354
+0.567
128.0
  • Constantes do tipo caractere serão representadas em nossos algoritmos pelo caractere entre ‘s.
  • Exemplos de constantes caractere são:
‘a’
‘0’
‘+’
‘ ’
‘A’
‘@’

  • Constantes cadeias de caracteres são conjuntos de caracteres e também devem ser representados entre ‘s.
  • Exemplos de cadeia de caracteres são:
‘Projeto de sistemas’
‘Pedro Silva’
’125’
‘Onde ela foi?’
  • Constantes do tipo lógica serão representadas em nossos algoritmos por verdadeiro e falso
4. Tipos de Operadores
  • Operadores são símbolos que indicam a operação que deve ser realizada entre os operandos (constantes e/ou variáveis).
  • Exemplos de operadores são: + e -
  • De acordo com o número de operandos envolvidos na expressão, os operadores podem ser classificados em:
.: Binários, quando atuam sobre dois operandos. Exemplo: soma
nota1 + nota2

.: Unários, quando modificam um único operando: Exemplo: sinal de –
-352
  • Operadores também podem ser classificados de acordo com o tipo dos operandos envolvidos.
  • De acordo com esta classificação os operadores podem ser divididos em:
.: Aritméticos, quando os operandos são dados aritméticos.
.: Exemplos:

a + b

4.0 * raio

.: Lógicos, quando os operandos são dados lógicos.

.: Exemplos:

optou ou saiu

maior e aprovado

não terminou

.: Relacionais, quando comparamos dados de tipos compatíveis e o resultado é um valor lógico.

Exemplos:

a > 10

x < -1 .: Caracteres, quando os operandos são dados do tipo caractere. .: Este tipo de operador não é padronizado e varia de linguagem para linguagem. .: Em nosso estudo não utilizaremos nenhum operador de caractere.
.: Um exemplo de operação comum em várias linguagens é a concatenação de duas cadeias de caracteres.

.: Símbolo + é usado em algumas linguagens para representar esta operação.

.: Considere as cadeias ‘dia’, ‘ ’, ‘de’ e ‘semana’

.: A operação

‘dia’ + ‘ ’ + ‘de’ + ‘ ’ + ‘semana’

.: cria a cadeia

‘dia de semana’

5. Operadores aritméticos



6. Expressões Aritméticas
  • Resultado é um valor numérico.
  • Os operadores aritméticos mostrados na tabela anterior estão classificados por prioridade.
  • Números baixos indicam maior prioridade, operações que devem ser executadas primeiro.
  • Os símbolos para multiplicação e divisão mostrados na tabela são os únicos permitidos na maioria das linguagens.
Expressões Aritméticas Representação



  • Não existem operações implícitas como em 4ac, que significa 4 vezes a vezes c.
  • A solução deve ser 4*a*c
  • Cuidado com expressões do tipo
  • A maneira correta é (a+b)/(c-d)‏
  • a + b / c – d equivale a


Observações nas Expressões Aritméticas
  • Expressões aritméticas que envolvem operandos inteiros fornecem resultados inteiros.
  • Expressões aritméticas que envolvem operandos reais fornecem resultados reais.
  • Em operações com dados de tipos diferentes (inteiro e real) os operandos são convertidos para o tipo real.
  • 1 / 4 – resultado 0
  • 1.0 / 4 – resultado 0.25
  • 1 / 4 + 7.1 – resultado 7.1
  • 1a. Operação: 1 / 4 = 0
  • 2a. Operacão: 0 + 7.1 = 7.1
  • (2 + 4)/(3 – 1) – resultado 3
    • 1a. Operação: 2 + 4 = 6
    • 2a. Operação: 3 – 1 = 2
    • 3a. Operação: 6 / 2 = 3

  • 10 mod 3 – resultado 1
.: O resto da divisão de 10 por 3 é igual a 1.

7. Bibliografia

dfaf

Nenhum comentário: