5. Expressões aritméticas - PDF
Download "5. Expressões aritméticas"
Luiz Gustavo Peralta Clementino
1 5. Expressões aritméticas 5.1. Conceito de Expressão O conceito de expressão em termos computacionais está intimamente ligado ao conceito de expressão (ou fórmula) matemática, onde um conjunto de variáveis e constantes numéricas se relacionam por meio de operadores aritméticos compondo uma fórmula que, uma vez avaliada, resulta num valor. Por exemplo, a fórmula de cálculo da área do triângulo da figura anterior é dada por: ÁREA = 0.5 B H Esta fórmula utiliza três variáveis: B e H, que contêm as dimensões do triângulo, e ÁREA, onde é guardado o valor calculado (resultado da avaliação da expressão). Há, também, uma constante (0.5) e um operador de multiplicação ( ), que aparece duas vezes na expressão. O conceito de expressão aplicado à computação assume um conceito mais amplo: uma expressão é uma combinação de variáveis, constantes e operadores, e que, uma vez avaliada, resulta num valor. Uma vez que já temos os dados e as variáveis podemos então passar à criação de expressões. No entanto, para que uma expressão esteja completa são necessários operadores que possam ser aplicados a estes dados. Os operadores são basicamente os mesmos encontrados noutras linguagens de programação. Assim, existem basicamente três tipos de expressões: Expressões Aritméticas; Expressões Lógicas; Expressões Literais. Cada um destes três tipos de expressões tem os seus próprios operadores
2 5.2. Operadores Operadores são elementos funcionais que actuam sobre operandos e que produzem um determinado resultado. Por exemplo, a expressão relaciona dois operandos (os números 3 e 2) por meio do operador (+) que representa a operação de adição. De acordo com o número de operandos sobre os quais os operadores actuam, os operadores podem ser classificados em: - Binários, quando actuam sobre dois operandos. Exemplo: Operadores das operações aritméticas básicas (adição, subtracção, multiplicação e divisão); - Unários, quando actuam sobre um único operando. Exemplo: O sinal de (-) à frente de um número (sinal posicional matemático), cuja função é inverter o seu sinal. Outra classificação dos operadores é feita considerando-se o tipo de dado dos seus operandos e o valor resultante da sua avaliação. Segundo esta classificação, os operadores dividem-se em aritméticos, lógicos e literais. Esta divisão está directamente relacionada com o tipo de expressão onde aparecem os operadores. Casos especiais são os dos operadores relacionais, que permitem comparar pares de operandos de tipos de dados iguais, resultando sempre num valor lógico Expressões Aritméticas Grande parte do processamento em qualquer programa é numérica. As linguagens de programação trabalham com a aritmética um pouco do mesmo modo que nós, na escola. Os componentes básicos das expressões aritméticas são: constantes, variáveis e operadores. As expressões são classificadas de acordo com o tipo de valor resultante da sua avaliação. Expressões aritméticas são aquelas cujo resultado da avaliação é do tipo numérico, quer seja inteiro ou real, dependendo dos operandos e operadores. Nas expressões deste tipo só é permitido o uso de operadores aritméticos e variáveis numéricas
3 Os operadores aritméticos relacionados com as operações aritméticas básicas estão sumariados na tabela seguinte. 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 Divisão inteira 3 ** Binário Exponenciação 2 + Unário Manutenção de sinal 1 - Unário Inversão de sinal 1 mod Binário Módulo (Resto da divisão inteira) 2 A prioridade entre operadores define a ordem pela qual devem ser avaliados dentro de uma mesma expressão. Quanto menor é o número maior é a prioridade da operação. O caractere (*) é adoptado na maioria das linguagens de programação para representar a operação de multiplicação, ao invés do caractere ( ), devido à possibilidade da ocorrência do mesmo no nome das variáveis. Pela mesma razão, o símbolo (**) é adoptado para representar a operação de exponenciação. Algumas linguagens de programação adoptam o símbolo (^) (circunflexo) para esta finalidade, mas é pouco frequente. As variáveis usadas em expressões aritméticas só podem ser do tipo inteiro ou real. Se todas as variáveis que aparecem numa expressão são do tipo inteiro, então o valor resultante da expressão é também do tipo inteiro. Se pelo menos uma das variáveis da expressão aritmética for do tipo real, então o valor resultante da avaliação da expressão é necessariamente do tipo real. Isto pode parecer estranho a princípio, mas este procedimento reflecte a forma como as operações são executadas pelos processadores. Por exemplo, o resultado da operação 1/5 é 0, porque os dois operadores são inteiros. Caso a expressão tivesse sido escrita como 1.0/5 então o resultado correcto seria 0.2. Seguem-se alguns exemplos de expressões aritméticas. Nos exemplos seguintes, assumiremos que: - A, B e C são variáveis do tipo inteiro; - X, Y e Z são variáveis do tipo real. Assim: 1) A + B * C - expressão de resultado inteiro
4 2) A + B + Y - expressão de resultado real 3) A \ B - expressão de resultado inteiro 4) X / Y - expressão de resultado real Apesar de no terceiro exemplo ser apresentada uma expressão onde se dividem dois números inteiros e se obtém como resultado um valor inteiro o resultado da divisão entre dois números inteiros não é necessariamente inteiro. Na verdade, a operação representada no terceiro item é a divisão inteira, onde o resto da divisão é desprezado. Observe-se que as expressões somente podem ser escritas de forma linear, isto é, o sinal de divisão é uma barra inclinada. Portanto as fracções somente podem ser escritas conforme o exemplo acima (a/b). Outro ponto importante é a ordem de avaliação das expressões, as prioridades mostradas na Tabela dos operadores não é suficiente para resolver todas as situações e precisamos de apresentar algumas regras adicionais: 1. Primeiro deve-se observar a prioridade dos operadores conforme a Tabela dos operadores, ou seja, os operadores com maior prioridade (números menores) são avaliados primeiro. Caso haja empate na ordem de prioridade deve-se resolver a expressão da esquerda para a direita. 2. Os parênteses servem para mudar a ordem de prioridade de execução das operações, dando prioridade às que se encontram entre parênteses. Quando houver parênteses aninhados (parênteses dentro de parênteses) as expressões dentro dos mais internos são avaliadas primeiro. Vamos considerar alguns exemplos para mostrar como estas regras são aplicadas. Considere as seguintes variáveis: A = 2.0 B = 4.0 C = 1.0 Vamos então analisar expressões com estas variáveis e os seus resultados. 1. A*B-C 2. A*(B-C) 3. B+A/C+5 4. (B+A)/(C+5)
5 A primeira expressão tem como resultado o valor 7.0, como era de se esperar. Na segunda expressão a ordem de avaliação é alterada pelo parênteses e primeiro é feita a subtracção e o resultado passa a ser 6.0. A primeira operação na terceira expressão é a divisão que tem maior prioridade. Neste caso o resultado final é Na última expressão as somas são realizadas primeiro e por último a divisão, ficando o resultado igual a 1.0. Até agora só vimos expressões com constantes. Na maioria das vezes, porém, haverá expressões que combinarão variáveis e constantes. Quando houver uma variável numa expressão, o cálculo deve ser feito usando-se o valor da variável naquele momento. Como exemplo, veja os algoritmos a seguir: Comandos Comentários 1) Var A : Numérico Declaração da variável A 3 Atribuição de valor Escreva A * 5 2) Var A, B : Numérico A 10 Será exibido o valor 15, pois A = 3, logo 3*5 = 15 B A * 3 O valor de B é 30 (10*3) Escreva B - A + 1 Será exibido o valor 21 ( ) B 40 Escreva B - A + 1 3) Var A : Numérico Novo valor para B A 3 * 2 O valor de A é 6 A A + 1 Agora será exibido o valor 31 ( ), pois o valor de B mudou Agora o valor de A passa a ser 7 (6, o valor anterior, mais 1) Escreva A * A Será exibido o valor 49 (7 * 7) 4) Var X : Numérico Escreva "Digite um número:" Leia X Escreva X * 2 Obtenha um número qualquer do usuário Será exibido o dobro do número digitado (qualquer que ele seja) Pelos exemplos anteriores, nota-se que podemos usar uma expressão no comando Escreva. Ela é calculada, e o seu resultado é exibido
PORTUGUÊS ESTRUTURADO: INTRODUÇÃO INTRODUÇÃO À PROGRAMAÇÃO PROF. ALEXANDRO DOS SANTOS SILVA
PORTUGUÊS ESTRUTURADO: INTRODUÇÃO INTRODUÇÃO À PROGRAMAÇÃO PROF. ALEXANDRO DOS SANTOS SILVA SUMÁRIO Introdução Conceitos básicos Formato básico Tipos primitivos Variáveis Constantes Operadores Operações
Your Logo Here Prof. Bruno de Jesus bruno.jesus@ic.ufal.br Introdução à Computação Tipos de dados, variáveis e expressões Conteúdo de hoje... Tipos de dados Dados numéricos Inteiro Real Dados literais
Processamento de Dados aplicado à Geociências. AULA 3: Algoritmos computacionais Representação de Algoritmos Sintaxe Tipos de dados Expressões
Processamento de Dados aplicado à Geociências 1 AULA 3: Algoritmos computacionais Representação de Algoritmos Sintaxe Tipos de dados Expressões UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO
Algoritmos e Lógica de Programação Introdução e formas de representação
Algoritmos e Lógica de Programação Introdução e formas de representação Agostinho Brito Departamento de Engenharia da Computação e Automação Universidade Federal do Rio Grande do Norte 15 de agosto de
Constantes class Exemplo { static void Main() { float fahr, celsius; int lower, upper, step; lower = 0; /* limite inferior da tabela de temperaturas */ upper = 300; /* limite superior */ step = 20; /*
Introdução à Computação (IC) Algoritmos: Expressões lógicas
Introdução à Computação (IC) Algoritmos: Expressões lógicas Prof.ª Dr.ª Symone Gomes Soares Alcalá Universidade Federal de Goiás (UFG) Regional Goiânia (RG) Campus Aparecida de Goiânia (CAP) Faculdade
INTRODUÇÃO À COMPUTAÇÃO - EPET006 -
INTRODUÇÃO À COMPUTAÇÃO - EPET006 - Heleno Pontes Bezerra Neto - helenopontes@lccv.ufal.br Introdução ao MATLAB Tipos Primitivos 3. TÓPICOS PRELIMINARES Tipos Primitivos - ATÉ AGORA TRABALHAMOS NO MATLAB
LO GICA E TE CNICA DE PROGRAMAC ÃO. TÁSSIO JOSÉ GONÇALVES GOMES
LO GICA E TE CNICA DE PROGRAMAC ÃO TÁSSIO JOSÉ GONÇALVES GOMES www.tassiogoncalves.com.br tassiogoncalvesg@gmail.com OPERADORES Operadores Operadores Aritméticos Operadores Relacionais Operadores Lógicos
Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 3 (12/08/15) Saídas Entradas Operadores Atribuição Aritméticos Expressões Aritméticas Saída Permite
5. Expressões aritméticas DIM0320 2015.1 DIM0320 5. Expressões aritméticas 2015.1 1 / 37 Sumário 1 Operadores inteiros 2 Precedências 3 Alteração de prioridades 4 Operadores reais 5 Expressões de tipo
BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35
BCC 201 - Introdução à Programação Portugol Guillermo Cámara-Chávez UFOP 1/35 Introdução I Lógica A lógica é usada no dia a dia das pessoas que trabalham com computação para solucionar problemas de forma
782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar
Cálculo Numérico Noções básicas sobre erros
Cálculo Numérico Noções básicas sobre erros Profa. Vanessa Rolnik 1º semestre 2015 Fases da resolução de problemas através de métodos numéricos Problema real Levantamento de Dados Construção do modelo
EXPRESSÕES RELACIONAIS
AULA 7 EXPRESSÕES RELACIONAIS 7.1 Operadores relacionais Uma expressão relacional, ou simplesmente relação, é uma comparação entre dois valores de um mesmo tipo. Esses valores são representados na relação
Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Operadores relacionais e lógicos estruturas condicionais If...
Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: Operadores relacionais e lógicos estruturas condicionais If... Else Switch Prof. Renato Pimentel 1 Operações relacionais Operações
COBOL DB2- CICS. Prof. Maromo [Aula 5]
COBOL DB2- CICS Prof. Maromo [Aula 5] Operadores em Cobol Operadores Cálculos aritméticos A linguagem Cobol possui rotinas que auxiliam o programador a efetuar cálculos aritméticos, são eles: ADD, SUBTRACT,
Conceitos Básicos Linguagem C
Conceitos Básicos Linguagem C PROF. MAURÍCIO A DIAS MACDIASPAE@GMAIL.COM 2 Método Método básico para construção de algoritmos 1. Compreender completamente o problema a ser resolvido, se possível dividindo
CURSO BÁSICO DE PROGRAMAÇÃO AULA 2. Revisão Variáveis Estrutura de um algoritmo Estruturação de operações Ferramenta Portugol Studio
CURSO BÁSICO DE PROGRAMAÇÃO AULA 2 Revisão Variáveis Estrutura de um algoritmo Estruturação de operações Ferramenta Portugol Studio Revisão da aula anterior 1. Hardware e Software Básico/Aplicativo. 2.
Português Estruturado (VISUALG)
Português Estruturado (VISUALG) Estrutura do programa Exemplo: algoritmo "Ola mundo" // Função : Mostrar na tela uma saudação // Autor : Christianne Dalforno // Data : 09/03/2016
Computação e Programação 1ª Aula de 2008-2009 Instituto Superior Técnico, Dep. de Engenharia Mecânica - Sistemas O Visual C++ Para Casa (se possível antes da aula!): Veja o video e o screencast que se
Prof. Leandro Tonietto Introdução a computação e suas aplicações Curso de Segurança da Informação UNISINOS jun-09
Lógica Binária Prof. Leandro Tonietto Introdução a computação e suas aplicações Curso de Segurança da Informação UNISINOS jun-9 Introdução Lógica binária é a base do sistema computacional. Qualquer operação
Entrada/Saída, Operadores. Curso: Técnico em Informática Disciplina: Algoritmos Prof. Abrahão Lopes
1 Entrada/Saída, Operadores Curso: Técnico em Informática Disciplina: Algoritmos Prof. Abrahão Lopes abrahao.lopes@ifrn.edu.br O Visualg Editor e interpretador de algoritmoscriado pelo professor Cláudio
Unidade 5: Introdução à Programação com C/C++ Prof. Daniel Caetano
Algoritmos e Programação - Engenharia da Computação -
Algoritmos e Programação - Engenharia da Computação - Prof. Alessandro Zimmer Pseudo Linguagem de Programação - PORTUGOL - Pseudo-Linguagem Linguagem de Programação? Notação formal servindo para: - Expressar
UNIDADE 2 ALGORITMOS E PSEUDOCÓDIGO
1 UNIDADE 2 ALGORITMOS E PSEUDOCÓDIGO 2.1 INTRODUÇÃO Um algoritmo é uma seqüência ordenada, finita de operações bem definidas e eficazes que, quando executadas por um computador operando sobre dados caracterizando
7 Comandos e Estruturas de Controle
Lógica para a Programação - 1º semestre AULA 03 Prof. André Moraes 7 Comandos e Estruturas de Controle Na criação de algoritmos é comum utilizar conceitos de bloco lógico, entrada e saída de dados, constantes,