Buscar

Constantes e Operadores em C

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 1/9
Constantes e Operadores em C
APRESENTAR OS SEGUINTES CONCEITOS DA LINGUAGEM C: CONSTANTES, OPERADORES DE
INCREMENTO E DECREMENTO, OPERADORES ARITMÉTICOS DE ATRIBUIÇÃO E OPERADOR TERNÁRIO
DE DECISÃO.
AUTOR(A): PROF. DANIEL TREVISAN BRAVO
Constantes
Constantes são dados que não sofrem nenhuma variação no decorrer do programa, assim como é o mesmo
para execuções diferentes no tempo. Podemos usar dados constantes, por exemplo, em uma fórmula:
area = 3.1415 * (raio * raio);
Em linguagem C ao invés de usarmos o valor constante diretamente, podemos associar um nome
(identificador) a esse valor e no lugar do valor usar o nome associado. Isso é conhecido como constante
simbólica. O uso de um nome a um valor constante aumenta a legibilidade do código-fonte e facilita a sua
manutenção.
Para criarmos constantes simbólicas utilizamos a diretiva #define. Ela associa um identificador a um texto
da seguinte forma:
#define identificador texto
Quando o compilador da linguagem C encontra uma ocorrência do identificador especificado ele substitui
pelo texto associado.
As constantes simbólicas sempre devem ser especificadas no início do programa, antes da função main().
Podemos especificar quantas constantes simbólicas quisermos, sendo uma em cada linha, sem o ponto-e-
vírgula no final.
O programa a seguir apresenta um exemplo de uso de constante simbólica. Ele lê o valor do raio de uma
circunferência, calcula e apresenta a área desta circunferência. A fórmula é:
Sendo o valor de  equivalente a 3,1415.
01 / 08
 Conteúdo carregado! 
23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 2/9
No programa, utilizamos uma constante simbólica (PI) para representar o valor de  ao invés de colocarmos
o valor diretamente na fórmula, como feito na fórmula apresentada no início desse texto. Embora não seja
obrigatório, mas por estilo de codificação, os identificadores de constantes simbólicas são definidos usando
letras maiúsculas. Com isso, podemos facilmente diferenciá-las das variáreis que por convenção são
definidas em letras minúsculas.
Operadores Aritméticos de Atribuição
Quando codificamos programa, frequentemente temos a necessidade de escrevermos expressões na forma
variável = variável operador expressao.
Para facilitar, a linguagem C oferece um grupo de operadores que permite escrever essas expressões de
forma mais compacta. Os operadores aritméticos de atribuição combinam, num único operador, uma
operação aritmética e uma atribuição.
A forma geral é:
variavel op= expressao;
Que equivale a:
variavel = variável op (expressao);
1. #include <stdio.h>
2. #include <stdlib.h>
3. // especificação da constante simbolica para o valor de Pi
4. #define PI 3.1415
5. main () {
6. // le o raio da circunferencia
7. float raio;
8. printf ("Raio: ");
9. scanf ("%f", &raio);
10. // calcula a area. Aqui usamos a constante simbolica especificada
11. float area = PI * (raio * raio);
12. // apresenta o valor da area
13. printf ("Area = %.2f\n\n", area);
14. system ("PAUSE"); 
15. }
02 / 08
23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 3/9
Exemplos:
i += 2; equivale a i = i + 2;
x *= y + 1; equivale a x = x * (y + 1);
a %= b – c; equivale a a = a % (b – c);
A tabela abaixo apresenta expressões aritméticas e a sua forma compacta, utilizando os operadores
aritméticos de atribuição.
 
Operadores Aritméticos de Atribuição
Expressão Forma Compacta
x = x + y x += y
x = x - y x -= y
x = x * y x *= y
x = x / y x /= y
x = x % y x %= y
 
Se uma expressão incrementa ou decrementa em 1 o valor de uma variável, podemos então escrevê-la de
uma forma ainda mais compacta. Para incrementar usamos o operador ++ e para decrementar usamos o
operador --. Esses operadores são unários, isto é, atuam sobre uma única variável, e podemos usá-los de
duas formas:
Forma prefixa: ++variavel, --variavel
Forma posfxa: variavel++, variavel--
O trecho de código a seguir apresenta um exemplo de utilização dos operadores de incremento e
decremento.
A saída produzida pelo trecho de código será x = 6 y = 4.
03 / 08
23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 4/9
A diferença entre usar o operador na forma prefixa ou posfixa aparece somente quando ele é utilizado em
uma expressão. Na forma prefixa, a variável é alterada e, depois, o seu valor é usado. Na forma posfixa, o
valor da variável é usado e, depois, ela é alterada. Para verificarmos a diferença, analise o trecho de código a
seguir.
A saída produzida pelo trecho de código será:
m = 6
x = 5
n = 6
y = 6
Os operadores de incremento e decremento não podem ser usados com valores constantes, já que a
instrução x++ equivale, de certa forma, a x = x + 1.
Embora o operador ternário de decisão e o comando if-else sejam semelhantes, eles não são iguais. O
comando if-else indica quais as instruções se deve executar, enquanto o operador ternário de decisão
devolve sempre um resultado. Uma vantagem do uso desse operador é que podemos utilizá-lo em qualquer
contexto em que uma expressão é permitida.
1. ....
2. int x = 5, y = 5;
3. ++x;
4. --y;
5. printf ("x = %d y = %d", x, y);
6. ....
1. if (num > 0) {
2. abs = num;
3. }
4. else {
5. abs = -num;
6. }
04 / 08
23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 5/9
O programa a seguir apresenta um exemplo de utilização do operador ternário de decisão. Ele lê um salário
e calcula o seu reajuste. Se o salário for menor que R$ 1.000,00 reajusta o salário em 15%. Caso contrário,
reajusta o salário em 7%. O valor do novo salário é apresentado na tela.
Exemplo 1
O programa a seguir faz a leitura do preço bruto de um produto e calcula o valor do ICMS a ser pago
(sabendo que o ICMS equivale a 18% do preço do produto). Neste exemplo, foi utlizada uma constante
simbólica para representar o percentual do ICMS.
1. #include <stdio.h>
2. #include <stdlib.h>
3. main () {
4. float salario;
5. // le o salário
6. printf ("Salario: ");
7. scanf ("%f", &salario);
8. // calcula o novo salario usando o operador ternario de decisao
9. salario = salario < 1000 ? salario * 1.15 : salario * 1.07;
10. // apresenta o novo salario
11. printf ("Novo Salario = %.2f\n\n", salario);
12. system ("PAUSE");
13. }
05 / 08
23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 6/9
Exemplo 2
Neste exemplo, é feita a leitura de dois números inteiros e, em seguida, o maior valor é apresentado na tela.
Para tanto, foi utilizado o operador ternário de decisão.
1. #include <stdio.h>
2. #include <stdlib.h>
3. 
4. // define uma constante simbolica para o valor do ICMS
5. #define ICMS 0.18
6. 
7. main () {
8. float preco;
9. // le o preco do produto
10. printf ("Preco: ");
11. scanf ("%f", &preco);
12. // calcula o valor do icms
13. float valorICMS = preco * ICMS;
14. // apresenta o valor calculado
15. printf ("ICMS = R$ %.2f\n\n", valorICMS);
16. system ("PAUSE");
17. }
06 / 08
23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 7/9
Agora que você já estudou essa aula acesse a plataforma AVA, resolva os exercícios e verifique o seu
conhecimento. Caso fique alguma dúvida, leve a questão ao Fórum e divida com seus colegas e professor.
ATIVIDADE FINAL
1. #include <stdio.h>
2. #include <stdlib.h>
3. main () {
4. int num1, num2, maior;5. // le os dois numeros
6. printf ("Primeiro Numero: ");
7. scanf ("%d", &num1);
8. printf ("Segundo Numero: ");
9. scanf ("%d", &num2);
10. 
11. // verifica qual o maior numero e atribui a variavel maior
12. // para isso é usado o operador ternario de decisao
13. maior = num1 > num2 ? num1 : num2;
14. 
15. // apresenta o maior numero
16. printf ("Maior = %d\n\n", maior);
17. system ("PAUSE");
18. }
07 / 08
23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 8/9
Analise o programa abaixo e responda qual o valor de x, y e z.
 
#include <stdio.h>
#include <stdlib.h>
main()
{ 
      int x=8, y=-5, z=6;
      x++;
      y+=9;
      y=2;
      y=10/y;
      z/=2;
      y=z--;
      x=z++;
      system("pause");
}
A. x=9, y=4 e z=3.
B. x=2, y=3 e z=3.
C. x=8, y=5 e z=2.
D. x=9, y=4 e z=2.
REFERÊNCIA
MIZRAHI, V. V. Treinamento em linguagem C, São Paulo: Pearson, 2008.
SCHILDT, H. C — Completo e Total. São Paulo: Pearson, 2006.
08 / 08
23/04/2018 AVA UNINOVE
https://ava.uninove.br/seu/AVA/topico/container_impressao.php 9/9

Outros materiais