Programação Computacional
Aula 7: Operadores e Expressões
Profa. Madeleine Medrano
[email protected]
Objetivo

O objetivo desta aula é apresentar os
operadores existentes na linguagem C e
a forma correta de construir expressões
que envolvam estes operadores
constantes e variáveis.
Roteiro

Operadores de Atribuição

Operadores aritméticos

Operadores Relacionais e Lógicos

Operadores com Bits

Operadores de Atribuição Composta

Operador virgula

Operador sizeof()

Conversão de tipos
Regras de Precedência

Operadores de Atribuição

Este é o operador usado para transferir o resultado de
uma expressão para uma variável.



Em C este operador é o sinal (=)
Exemplos :
 Soma = a+b;
 Pi = 3.1416;
 a=b=c=1.0
Operadores Aritméticos:





Os 5 primeiros são do tipo binário
Incidem sobre duas variáveis (ex. A + B, A – B, etc.)
Os 2 últimos são unários
Incidem apenas sobre uma variável (ex. A++, B--, etc.)
Nota: O operador “ % “ é apenas sobre inteiros
Operadores Aritméticos:




Operadores Aritméticos:
– Hierarquia
“ ** “ é uma simbologia para indicar a operação de
exponenciação
Em C, a exponenciação não tem um “símbolo” definido
Operadores Aritméticos:

Hierarquia – Precedência dos
operadores em C
Operadores Aritméticos:
Os 5 primeiros são do tipo binário
 • Exemplo de uso:



• Nota: Em C, o símbolo “ // “ é interpretado como comentário
– Usado pelo programador p/ melhorar o entendimento do código
» Explicando o código
Operadores Aritméticos:

–Os 2 últimos são unários
•Exemplo de uso:

–Nota: Os exemplos são equivalentes

Operadores Aritméticos e Atribuições:
Exemplo Completo dos
Conceitos Apresentados:

Desenvolver a lógica para um programa que efetue o cálculo da
área de uma circunferência:






Equação: A = PI * R2
Algoritmo em linguagem natural:
Ler um valor para o raio, neste caso á variável R
Estabelecer o valor de PI (3.14159.....)
Efetuar o cálculo da área, elevando ao quadrado o valor de R e
multiplicando por PI
Apresentar o valor de A
Exemplo Completo dos Conceitos
Apresentados:



Desenvolver a lógica para um programa que efetue o cálculo da
área de uma circunferência:
Equação: A = PI * R2
Fluxograma:
Exemplo Completo dos Conceitos
Apresentados:



Desenvolver a lógica para um programa que efetue o cálculo da
área de uma circunferência:
Equação: A = PI * R2
Pseudocódigo:
Atividade – Operadores Aritméticos:
1) Tendo como dados de entrada a altura de uma pessoa, construa
um algoritmo que calcule seu peso ideal, utilizando a seguinte
fórmula:
peso ideal = (72.7*h) – 58
2) Faca um algoritmo que receba como entrada uma determinada
temperatura em graus Celsius e mostre a temperatura em
fahrenheit
OBS: Fahrenheit = (9/5)*(Celsius) + 32
3) Tendo como entrada o total vendido por um funcionário no mês
de abril, faça um algoritmo que mostres a sua comissão e salário
bruto neste mês, sabendo que o seu salário base é R$1.200,00 e
sua comissão é de 10% sobre o total vendido.
Operadores Relacionais e Lógicos:





Operadores Relacionais:
Refere-se às relações que os valores podem ter uns
com os outros (geralmente, retorna um valor V ou F)
Operadores Lógicos:
Refere-se às maneiras como essas relações podem
ser conectadas (combinam resultados lógicos)
Nota: Em programação C são usados os símbolos
abaixo
Operadores Relacionais e
Lógicos:
Operadores Relacionais:

Operadores relacionais são muito usados quando
temos que tomar decisões nos algoritmos.

Com eles fazemos testes, comparações, que
resultam em valores lógicos (verdadeiro ou falso):

Exemplo: Tendo duas variáveis, A = 5 e B = 3:
Operadores Lógicos:







Operadores Lógicos: Criar operações lógicas (V ou F)
“AND”, é igual a operação de “multiplicação”
1 X 1 =1; 1 X 0 = 0; etc.
“ OR”, é igual a operação de “soma”
1 + 1 =“1”; 1 + 0 = 1; 0 + 0 = 0; etc.
“NOT”, é o inverso
-1 = 0; 0 = 1
Operadores Lógicos
Operadores Lógicos

Exemplos conceituais:

Carteira de Habilitação:
Idade maior ou igual que 18 anos
 Aprovação nos exames
 Combinação E / AND


Cargo de boa remuneração:
Excelente currículo profissional
 Indicação de uma pessoa influente


Alternativa OU / OR
Operadores Relacionais e
Lógicos:

Combinando operadores relacionais e operadores lógicos
criamos operações lógicas, que produzirão resultados lógicos
(verdadeiro ou falso). Por exemplo, se A = 5, B = 8 e C = 1:

(A = B) E (B > C) é falso (f e v)
(A <> B) OU (B < C) é verdadeiro (v ou f)
NÃO (A > B) é verdadeiro (não f)
(A < B) E (B > C) é verdadeiro (v e v)
(A >= B) OU (B = C) é falso (f ou f)
NÃO (A <= B) é falso (não v)







Nota: Usando os símbolos da linguagem natural
São usadas em decisões nos algoritmos...
Operadores Relacionais e Lógicos:
Exemplos:
 (10 > 5)
Verdadeiro
 (10 < 9)
Falso
 (9 == 9)
Verdadeiro
 (9 != 9)
Falso
 (10 > 5) && ( ! (10 < 9) ) || (3 <=4)
 Qual o valor dessa expressão???? V

Atividade - Operadores Relacionais e
Lógicos:
– 1) Tendo as variáveis SALARIO, IR e SALLIQ, e considerando os
valores abaixo. Informe se as expressões são verdadeiras ou
falsas.
– 2) Sabendo que A=3, B=7 e C=4, informe se as expressões
abaixo são verdadeiras ou falsas.
a) (A+C) > B
b) B >= (A + 2)
c) C = (B –A)
d) (B + A) <= C
e) (C+A) > B
()
()
()
()
()
Atividade - Operadores Relacionais e
Lógicos:
3) Considere a seguinte atribuição de valores para as variáveis:
A=3, B=4, C=8. Avalie as expressões a seguir indicando o
resultado final: verdadeiro ou falso.
1) (A > 3) E (C = 8)
()
2) (A <> 2) OU (B <= 5)
()
3) ((A = 3) OU (B >= 2)) E (C = 8)
()
4) ((A = 3) E (NÃO (B <= 4))) E (C = 8) ( )
5) ((A <> 8) OU (B = 4)) E (C > 2)
()
6) (B > A) E (C <> A)
()
7) (A > B) OU (B < 5)
()
8) (A <> B) E (B = C)
()
9) (C > 2) OU (A < B)
()
10) ((A > B) OU (B > A)) E (C <> B)
()
Atividade - Operadores Relacionais e
Lógicos:
4) Sabendo que A=5, B=4 e C=3 e D=6, informe se as expressões abaixo
são verdadeiras ou falsas.
a) (A > C) E (C <= D)
()
b) (((A+B) > 10) OU (A+B)) = (C+D)
()
c) (A>=C) E (D >= C)
()
5) Reescrever a atividade 3 e 4 usando os símbolos da linguagem C.
6) Sabe-se que o uso incorreto da precedência de operadores ocasiona
erros. Determine o resultado das expressões abaixo (A= 8, B = 5, C = -4,
D = 2)
a) Delta = B2 – 4 * A * C
b) J = “Hoje” != “HOJE”
c) Media = (A + B + C + D) / 4
d) Media = A + B + C + D / 4
e) Resultado = A + B – 10 * C
Operadores Lógicos
Operadores Bit a Bit


Refere-se a testar, atribuir ou deslocar os bits efetivos de um
byte ou uma palavra
Não confundir com as outras (ex. &&, ||, ....)
Operadores Bit a Bit
Operadores Bit a Bit

Exemplo do deslocamento de bit “>>” ou
“<<“
Nota: Todos os operadores do C têm um nível de
precedência

Os operadores de nível mais elevado são avaliados antes dos operadores de nível mais
baixo. Veja a ordem completa na tabela abaixo:
Operadores Associatividade
() [] -> .
esquerda para a direita
! - ++ -- * &
direita para a esquerda
*/%
esquerda para a direita
+esquerda para a direita
<< >>
esquerda para a direita
< <= > >=
esquerda para a direita
== !=
esquerda para a direita
&
esquerda para a direita
^
esquerda para a direita
|
esquerda para a direita
&&
esquerda para a direita
||
esquerda para a direita
?:
direita para a esquerda
+= -= *= /= %=
direita para a esquerda

^= |= <<= >>=















esquerda para a direita
Fim da apresentação

Obrigada pela atenção
Download

baixar slides