Operadores. Gustavo Queiroz Fernandes

Documentos relacionados
Linguagem Computacional

Ciência da Computação A&P

Operadores. Programação aplicada à Engenharia de Alimentos. Prof. Kleber Rezende

PDF created with pdffactory trial version Elementos Básicos de Algoritmos. Elementos Básicos de Algoritmos Palavras Reservadas

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

Programação de Computadores III

Programação de Computadores:

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini

Programação de Computadores III

INTRODUÇÃO À COMPUTAÇÃO - EPET006 -

Oficina de Python Prof. Me. José Carlos Perini

Variável. Expressões. Atribuição. Tipos básicos Declaração. Aritméticas Lógicas. Professor Leandro Augusto Frata Fernandes

Algoritmo e Programação Matemática

Programação de Computadores I. Professor Ilaim Costa Junior

Oficina de Python Prof. Me. José Carlos Perini

Aula 4 Expressões e Operadores Cleverton Hentz

Introdução à Ciência da Computação

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares

Informática Fundamentos em C++ Revisão 1

AEDI Fundamentos Revisão 1

Estrutura de um computador digital. Gustavo Queiroz Fernandes

CAPÍTULO 4 - OPERADORES E EXPRESSÕES

Capítulo 3 Estrutura Sequencial

CAI Fundamentos Revisão 5

5. Expressões aritméticas

Programação Introdução

Variáveis, Expressões Aritméticas e Entrada e Saída de Dados

Prof. José Remo / Prof. Ildeberto Rodello 1

7 Operadores e Expressões

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 3ª Parte Prof. Sandra Pais Soares

Prof. Leandro Tonietto Introdução a computação e suas aplicações Curso de Segurança da Informação UNISINOS jun-09

Constantes, Variáveis, tipos de dados e expressões

Noções de algoritmos - Aula 1

Algoritmos: tipos de dados, variáveis e expressões

ALGORITMOS VARIÁVEIS E OPERADORES. Prof. Angelo Augusto Frozza, M.Sc.

Tipos de dados, constantes e variáveis. Prof.: Jesus

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA PRÉ AULA 31/08/2015

ALGORITMOS 3ª Aula. 3. Introdução Tipos de dados, variáveis e operadores Tipos de dados

Lógica de Programação Teoria. rogerioaraujo.wordpress.com - 1

01/08/2011. Tipos de dados Numéricos Alfanuméricos Lógicos. Numéricos. Tipos de dados. Dados Numéricos Inteiros. Dados Numéricos Reais.

Algoritmos - 2. Alexandre Diehl. Departamento de Física - UFPel

PORTUGUÊS ESTRUTURADO: INTRODUÇÃO INTRODUÇÃO À PROGRAMAÇÃO PROF. ALEXANDRO DOS SANTOS SILVA

Introdução à Computação

Introdução à Computação

Conceitos Básicos. Professor: Juliano Lucas Gonçalves.

Fábio Rodrigues / Israel Lucania

LÓGICA DIGITAL - CONCEITOS. * Constantes. * Expressões: Aritméticas; Lógicas; Tabela Verdade; Relacionais; Booleanas. * Portas Lógicas.

Introdução à Computação

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Métodos para a construção de algoritmo

Lógica de Programação. Introdução

Lógica de Programação I

1 TECNOLOGIA ELEMENTAR CAPÍTULO 3 E-books PCNA. Vol. 1 TECNOLOGIA ELEMENTAR CAPÍTULO 3 APRESENTANDO A LINGUAGEM C. Página 1

Faculdade de Estudos Avançados do Pará Disciplina: Algoritmos Professor: Armando Hage. Introdução à Programação

Universidade Federal de Uberlândia Faculdade de Computação. Expressões aritméticas, relacionais e lógicas Estruturas condicionais

Linguagem C Operadores

Algoritmos e Estruturas de Dados I

Introdução à Programação Estruturada Parte 3. Material da Prof. Ana Eliza

LO GICA E TE CNICA DE PROGRAMAC ÃO. TÁSSIO JOSÉ GONÇALVES GOMES

Ocorrem em três tipos:

EXPRESSÕES ARITMÉTICAS PARTE 1

Introdução à Computação (IC) Algoritmos: Expressões lógicas

Introdução à Computação

Introdução ao VisuALG

Lógica de Programação e Algoritmos. Prof. André Y. Kusumoto

Português Estruturado (VISUALG)

OPERAÇÕES COM NÚMEROS INTEIROS

Instruções, dados e expressões

UNIDADE 2 ALGORITMOS E PSEUDOCÓDIGO

Programação de Computadores

Linguagem C Operadora

Algoritmos e Programação I

Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039)

Sistemas de Numeração

Aula prática 5. Funções Recursivas

Algoritmos: Conceitos Fundamentais. Slides de autoria de Rosely Sanches e Simone Senger de Souza

Técnicas de Programação

Algoritmos: Conceitos Fundamentais. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

Apêndice A. Pseudo-Linguagem

Fluxogramas e variáveis

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas

CONDICIONAL / de SELEÇÃO / de DECISÃO

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel

Questão 1: Questão 2:

Processamento da Informação

Conceitos Básicos de Programação

CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS

Lógica de Programação I. Gilson de Souza Carvalho

Definições de Algoritmos. Algoritmos e Programação I. Conceitos Básicos de Algoritmos. Relação entre Algoritmos e Programação

Aula 4 Estruturas Condicionais

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

Lógica para programação II Seção 1 - Histórico e Introdução Primeiros Programas

Noções de algoritmos - Aula 1

Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I - BCC701

Matemática. Operações Básicas. Professor Dudan.

TECNOLOGIA EM REDES DE COMPUTADORES. computadores. Aula 4

Transcrição:

Gustavo Queiroz Fernandes Atualizado em: 27/04/2019

Sumário Objetivos... 1 Pré-requisitos... 1 Recursos e Materiais... 1 Última Atualização... 1 1. Operações aritméticas... 1 2. Operações relacionais... 2 3. Operações lógicas... 3 Referências Bibliográficas... 5

Objetivos Pré-requisitos Recursos e Materiais Última Atualização Descrever os operadores aritméticos, relacionais e lógicos, bem como a prioridade de execução de cada um deles dentro de uma expressão matemática Nenhum Nenhum 27/04/2019: Figuras e funções aritméticas atualizadas De forma geral, existem três tipos de operações matemáticas que podemos realizar: As operações aritméticas, relacionais e lógicas. Como os editores de texto que utilizamos para escrevermos os programas de computador geralmente não possuem os caracteres gráficos que representam algumas dessas operações, parte desses operadores são substituídos por símbolos e funções que precisamos conhecer na hora que estamos elaborando nossos algoritmos. Além disso, ao escrevermos expressões matemáticas mais complexas, o computador quebrará essa expressão em operações menores, seguindo uma sequência de cálculo que também precisamos conhecer para garantirmos que as operações sejam realizadas conforme desejamos. Para entendermos um pouco mais sobre esse assunto e evitarmos que nossos algoritmos façam cálculos incorretos, essa seção analisa cada uma das operações aritméticas, relacionais e lógicas disponíveis. 1. Operações aritméticas As operações aritméticas tradicionais são a soma, subtração, multiplicação e divisão, cada uma delas resumida na Tabela 1. Embora já estejamos acostumados a lidar com essas operações e não tenhamos muito o que acrescentar sobre elas, é importante observarmos que o tipo de dado afeta diretamente o resultado que obtemos nesses cálculos. No caso da divisão, por exemplo, se dividirmos dois valores inteiros (como 5/2), a maioria das linguagens de programação apresentará como resultado somente a parte inteira da divisão (2), enquanto que, se pelo menos um dos termos for do tipo do real, o resultado também será real (2.5). Caso o resultado da operação seja atribuído a uma variável, o tipo de dado dela também afetará o valor que será armazenado na memória (2 ou 2.5). Tabela 1: Lista de operadores aritméticos Operador aritmético Função Exemplos + Soma 2+3; x+y; z+2 - Subtração 4-6; x-y; y-4 * Multiplicação 8*4; x*y; 2*x; / Divisão 5/2; x/y; z/2 Além disso, podemos citar também como operações aritméticas, algumas operações bastante comuns, que são representadas em formas de funções matemáticas nos algoritmos, como aquelas ilustradas na Tabela 2 abaixo. A potenciação (pot(x,y)) permite elevarmos qualquer número x à uma potência y (x y y ). A radiciação tira a raiz de x com ínidice y ( x), ao mesmo 1

tempo em que sqrt(x) resultará sempre na raiz quadrada. Por fim, a função mod obtém o resto da divisão de x por y, enquanto que a função div resulta na parte inteira do resultado da divisão (quociente). Tabela 2: Lista de funções matemáticas Operador Função Exemplos pot(x,y) Potenciação (x y ) pot(2,4) (resulta em 16) rad(x,y) y Radiciação ( x) rad(27,3) (resulta em 3) sqrt(x) Raiz quadrada ( x) sqrt(4) (resulta em 2) x mod y Resto da divisão 13 mod 2 (resulta em 1) x div y Quociente da divisão 13 div 2 (resulta em 6) Quando as expressões matemáticas possuem mais de um operador aritmético, a sequência dessas operações acontecerá sempre de acordo com a ilustração da Figura 1, dando-se prioridade para o que está escrito dentro dos parênteses mais internos. Quando diferentes operações estiverem dentro dos mesmos parênteses, calculamos as potências e as raízes, para depois realizarmos as multiplicações, divisões e as funções div e mod, até que por fim, nos reste calcular apenas as somas e as subtrações. Figura 1: Ordem de prioridade de cada operador aritmético Dois exemplos são apresentados a seguir para que possamos compreender melhor essa ordem de prioridade das operações aritméticas. a) pot(4,2) + 8/4 9 mod 4 + sqrt(5*2-1) pot(4,2) + 8/4 9 mod 4 + sqrt(10 1) pot(4,2) + 8/4 9 mod 4 + sqrt(9) 16 + 8/4 9 mod 4 + 3 16 + 2 1 + 3 20 b) sqrt(4 + 11 div 2) + (5*9-11 mod 2) sqrt(4 + 5) + (45 1) sqrt(9) + 44 3 + 44 47 2. Operações relacionais As operações relacionais, resumidas na Tabela 3, são utilizadas para comparar dois valores e nos informar se a comparação é verdadeira ou falsa, de tal forma que o resultado será sempre um tipo de dado lógico (1 ou 0, verdadeiro ou falso). 2

Tabela 3: Lista de operadores relacionais Operador relacional Função Exemplos = Igual a x=y; x=z; > Maior que 3>2; y>x; < Menor que x<y; 2<x; >= Maior ou igual a 8>=7; x>=z; z>=2; <= Menor ou igual a 5<=6; x<=z; <> Diferente de 4<>3; x<>z; Por possuírem prioridade inferior às operações aritméticas, o computador executará sempre os cálculos que estão à esquerda e à direita desses operadores relacionais antes de realizar a comparação, a não ser que a prioridade seja alterada com o uso de parênteses. Alguns exemplos são apresentados abaixo: a) 4 * 3 = 2 * 6 12 = 12 V (Verdadeiro) b) 15 mod 4 < 19 mod 6 3 < 1 F (Falso) 3. Operações lógicas O último tipo de operação que também podemos realizar em nossos algoritmos são as operações lógicas, representadas na Tabela 4. Esses operadores trabalham com valores lógicos e são utilizados para verificarmos se uma determinada condição é atendida ou não. Por isso, de forma similar aos operadores relacionais, essas operações terão sempre um valor lógico como resultado. Tabela 4: Lista de operadores lógicos Operador lógico não e ou Função Negação Conjunção Disjunção Para utilizarmos esses operadores, precisamos consultar as tabelas verdade de cada um deles (Tabelas 5 a 7), que resumem todas as possíveis combinações de valores verdadeiros e falsos que podemos obter. No caso do operador não, o resultado será sempre o oposto da entrada. Já na lógica e, todas as entradas da operação precisam ser verdadeiras para que o resultado seja verdadeiro. E, por fim, na lógica ou, basta que uma das entradas seja verdadeira para que a saída também o seja. Tabela 5: Tabela verdade para operador não Operando Não OP 0 (Falso) 1 (Verdadeiro) 1 (Verdadeiro) 0 (Falso) 3

Tabela 6: Tabela verdade para operador e Operando 1 Operando 2 OP1 e OP2 0 (Falso) 0 (Falso) 0 e 0 = 0 (Falso) 0 (Falso) 1 (Verdadeiro) 0 e1 = 0 (Falso) 1 (Verdadeiro) 0 (Falso) 1 e 0 = 0 (Falso) 1 (Verdadeiro) 1 (Verdadeiro) 1 e 1 = 1 (Verdadeiro) Tabela 7: Tabela verdade para operador ou Operando 1 Operando 2 OP1 ou OP2 0 (Falso) 0 (Falso) 0 ou 0 = 0 (Falso) 0 (Falso) 1 (Verdadeiro) 0 ou 1 = 1 (Verdadeiro) 1 (Verdadeiro) 0 (Falso) 1 ou 0 = 1 (Verdadeiro) 1 (Verdadeiro) 1 (Verdadeiro) 1 ou 1 = 1 (Verdadeiro) As expressões lógicas devem ser solucionadas respeitando a ordem de prioridades ilustrada na Figura 2. Figura 2: Ordem de prioridade de cada operador lógico Além disso, as operações lógicas possuem prioridade inferior às operações relacionais, de tal forma que, em um caso geral, considerando uma expressão matemática contendo todos os tipos de operadores, a solução será realizada na sequência apresentada abaixo. Alguns exemplos também são mostrados para que possamos compreender melhor essa ordem de operação. 1 o : Parênteses mais internos 2 o : aritméticos 3 o : relacionais 4 o : lógicos a) 4 * 3 = 2 * 6 e 4 < 5 12 = 12 e 4 < 5 V e V V c) 4 * (15 mod 4) > 4 e não V 4 * 3 > 4 e não V 12 > 4 e não V V e não V V e F F b) 15 mod 4 > 19 mod 6 ou 3 = 4 3 > 1 ou 3 = 4 V ou F V d) F ou não (5 div 2 rad(19 mod 10) > 7 + pot(2,3)) F ou não(5 div 2 rad(9) > 7 + 8) F ou não(5 div 2-3 > 7 + 8) F ou não(2 3 > 7 + 8) F ou não (-1 > 15) F ou não(f) F ou V V 4

Referências Bibliográficas A. A. T. Maia, Fundamentos da Computação Algoritmos Programação em Linguagem C. Universidade Federal de Minas Gerais, 2013. E. C. Gatto, Operações aritméticas. 2016. Online. [Acesso 21 Abril 2019] E. C. Gatto, Operações relacionais e lógicas. 2016. Online. [Acesso 21 Abril 2019] E. C. Gatto, Expressões matemáticas. 2016. Online. [Acesso 21 Abril 2019] 5