SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Expressões aritméticas, relacionais e
lógicas
Sérgio Souza Costa
Roteiro
• Revisão
• Objetivos
• Expressões aritméticas
• Expressões relacionais
• Expressões lógicas
• Para saber mais
https://panda.ime.usp.br/cc110/static/cc110/02-expressoes.html
Revisão
• Vimos no encontro anterior que linguagens de programação descreve
algoritmos que possam ser executados através de um artefato
computacional.
• Na disciplina de introdução a computação, vocês viram que o
computador possui uma unidade para realizações de operações
aritméticas e lógicas.
• Pelo incrível que pareça, todos os programas de computadores estão
essencialmente sempre realizando essas operações, de modo muito
rápido.
• Então ...
Objetivos
Ao final desse encontro você deverá ser capaz de:
• calcular o resultado de expressões aritméticas, relacionais e
lógicas
• escrever expressões corretas usando operadores aritméticos,
lógicos, relacionais e suas combinações
Expressões aritméticas
Uma expressão aritmética é formada por:
- números (chamados de operandos) e
- operadores
Expressões podem possuir apenas um número, quanto vários
numeros e diferentes operadores:
>> 5
>> 2 + 3 * 4 - 5
Expressões aritméticas
Uma expressão aritmética é formada por:
- números (chamados de operandos) e
- operadores
Expressões podem possuir apenas um número, quanto vários
numeros e diferentes operadores:
>> 5
>> 2 + 3 * 4 - 5
Aproveitando, qual é
o valor da
expressão:
2 + 3 * 4 - 5
Expressões aritméticas: números
Veremos mais adiante sobre tipos, mas pensem em tipos como
conjunto de valores. No caso de números lembrem das aulas de
matemática sobre numeros naturais, reais, racionais ....
Nome Tipo Descrição
Inteiros int Números inteiros, sem parte fracionárias como 3, 5, 8, 65 e
-99.
Ponto Flutuante (real) float Números com parte fracionária, busca representar os números
reais da matemática como 1.5, 3.145 e 9.35
Expressões aritméticas: números
Veremos mais adiante sobre tipos, mas pensem em tipos como
conjunto de valores. No caso de números lembrem das aulas de
matemática sobre numeros naturais, reais, racionais ....
Nome Tipo Descrição
Inteiros int Números inteiros, sem parte fracionárias como 3, 5, 8, 65 e
-99.
Ponto Flutuante (real) float Números com parte fracionária, busca representar os números
reais da matemática como 1.5, 3.145 e 9.35
Lembrem-se que por
ser em inglês,
usamos o ponto (.)
para separa a parte
decimal. Então é
3.145 e não 3,145
Expressões aritméticas: operadores
Os quatro primeiros operadores
aritméticos são conhecidos de
vocês, os 3 últimos vamos
conhecer eles agora.
Pause esse vídeo e me
acompanhe em: conhecendo
os operadores aritméticos:
https://youtu.be/OV53kQJHxKg.
Expressões aritméticas: precedência
Um outro ponto importante é quanto a precedência, que indica
qual operador será calculado primeiro. Como descrito na tabela.
Operador descrição Associatividade
() parênteses da esquerda para a direita
** potência da direita para a esquerda
+, - positivo e negativo unário da direita para a esquerda
*, /, //, % multiplicação , divisão, divisão inteira e resto da esquerda para a direita
+, - soma e subtração da esquerda para a direit
Pause esse vídeo e me acompanhe em: entendendo a precedência e associatividade:
https://youtu.be/OV53kQJHxKg
Maior
Menor
Expressões relacionais
• Em programação é comum termos a necessidade de comparar
grandezas, se um dado número é maior ou menor que outro.
• O resultado dessa comparação será “sim” ou “não”, mas na
programação é usado um tipo de dado chamado de lógico ou boleano.
• Ao invés de “sim” ou “não”, os valores lógicos são True (verdadeiro em
inglês) e False (falso em inglês).
• Podemos comparar números, textos, valores lógicos entre outros. Mas
aqui vamos focar nos números.
Expressões relacionais: operadores
Operador Descrição Exemplo Resultado
== igualdade 2 == 3 False
!= desigualdade 2 != 3 True
> maior 3 > 3 False
>= maior ou igual 3 >= 3 True
< menor 2 < 3 True
<= menor ou igual 4 <= 3 False
Expressões relacionais: operadores
Operador Descrição Exemplo Resultado
== igualdade 2 == 3 False
!= desigualdade 2 != 3 True
> maior 3 > 3 False
>= maior ou igual 3 >= 3 True
< menor 2 < 3 True
<= menor ou igual 4 <= 3 False
Os operadores
relacionais podem
ser combinados
através lógicos
que veremos a
seguir.
Expressões lógicas
• As expressões lógicas são construídas usando operadores lógicos sobre
valores booleanos.
• Expressões lógicas (ou booleanas) combinam valores booleanos com
operadores lógicos. Os três operadores que iremos usar são:
• not
• and
• or
Expressões lógicas:not
O operador not é a negação lógica, ele troca o valor do operando, ou seja,
troca o valor booleano de True para False e de False para True. Como
representado na tabela verdade abaixo:
X not X
False True
True False
Expressões lógicas:and
O operador and, conhecido na lógica como conjunção. Ele devolve True
apenas quando seus dois operandos são True e devolve False caso
contrário, quando ao menos um dos operandos é False, como mostra a
tabela a seguir.
X Y X and Y
False False False
False True False
True False False
True True True
Expressões lógicas:or
O operador or, conhecido na lógica como disjunção. devolve False apenas
quando seus dois operandos são False e devolve True caso contrário
(quando ao menos um dos operandos é True.
X Y X and Y
False False False
False True True
True False True
True True True
Expressões lógicas:or
O operador or, conhecido na lógica como disjunção. devolve False apenas
quando seus dois operandos são False e devolve True caso contrário
(quando ao menos um dos operandos é True.
X Y X and Y
False False False
False True True
True False True
True True True
Lembrem-se dessa
tabela ao usar esse
operador. Não
confunda ele com o
uso comum, do tipo:
vou ao shopping OU a
práia.
Expressões lógicas: precedência
A tabela a seguir mostra a precedência dos operadores lógicos usados em
Python:
Operador Descrição Exemplo Resultado
not negação lógica not True False
and E lógico True and False False
or OR lógico True or False True
Pause esse vídeo e me acompanhe em: Conhecendo os operadores relacionais e lógicos:
https://youtu.be/PNFjeB2kDnw
Para saber mais
Como Pensar Como um Cientista da Computação - Aprendendo com
Python: Versão Interativa, tradução do livro interativo produzido no projeto
Runestone Interactive por Brad Miller and David.
Introdução à Computação com Python do professor Fábio Kon do
Departamento de Computação do IME-USP no Coursera.
Python para Zumbis do professor Fernando Masanori da FATEC de São
José dos Campos.
Introdução à Computação com Python: um curso interativo por: J.C. de
Pina Jr. e C.H. Morimoto.
Curso em Vídeo: Python por Gustavo Guanabara.
Obrigado

Weitere ähnliche Inhalte

Was ist angesagt?

Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoLeinylson Fontinele
 
Aula 4 - Teste de mesa
Aula 4 - Teste de mesaAula 4 - Teste de mesa
Aula 4 - Teste de mesaPacc UAB
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosMario Jorge Pereira
 
Exercícios - Herança - Java
Exercícios - Herança - JavaExercícios - Herança - Java
Exercícios - Herança - JavaArthur Emanuel
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisFabrício Lopes Sanchez
 
Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)Vitor Hugo Melo Araújo
 
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane FidelixCris Fidelix
 
Estrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores BináriasEstrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores BináriasAdriano Teixeira de Souza
 
Aula 03.1 - Operadores Relacionais e Lógicos
Aula 03.1 - Operadores Relacionais e LógicosAula 03.1 - Operadores Relacionais e Lógicos
Aula 03.1 - Operadores Relacionais e LógicosMessias Batista
 
13 Java Script - Validação de formulário
13 Java Script  - Validação de formulário13 Java Script  - Validação de formulário
13 Java Script - Validação de formulárioCentro Paula Souza
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-Mauro Pereira
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosIgor Takenami
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Vitor Hugo Melo Araújo
 
Introdução à Lógica de Programação
Introdução à Lógica de ProgramaçãoIntrodução à Lógica de Programação
Introdução à Lógica de ProgramaçãoAndré Agostinho
 

Was ist angesagt? (20)

Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e Especialização
 
Aula 4 - Teste de mesa
Aula 4 - Teste de mesaAula 4 - Teste de mesa
Aula 4 - Teste de mesa
 
Estrutura de Dados - Grafos
Estrutura de Dados - GrafosEstrutura de Dados - Grafos
Estrutura de Dados - Grafos
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
Exercícios - Herança - Java
Exercícios - Herança - JavaExercícios - Herança - Java
Exercícios - Herança - Java
 
Estrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentaisEstrutura de Dados - Conceitos fundamentais
Estrutura de Dados - Conceitos fundamentais
 
Aula 4 banco de dados
Aula 4   banco de dados Aula 4   banco de dados
Aula 4 banco de dados
 
Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)
 
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
5- Modelo entidade Relacionamento - Cardinalidade - Profª Cristiane Fidelix
 
Estrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores BináriasEstrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores Binárias
 
Aula 03.1 - Operadores Relacionais e Lógicos
Aula 03.1 - Operadores Relacionais e LógicosAula 03.1 - Operadores Relacionais e Lógicos
Aula 03.1 - Operadores Relacionais e Lógicos
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 
Lógica proposicional
Lógica proposicionalLógica proposicional
Lógica proposicional
 
Manual de portugol
Manual de portugolManual de portugol
Manual de portugol
 
13 Java Script - Validação de formulário
13 Java Script  - Validação de formulário13 Java Script  - Validação de formulário
13 Java Script - Validação de formulário
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 
Introdução a python
Introdução a pythonIntrodução a python
Introdução a python
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
 
Introdução à Lógica de Programação
Introdução à Lógica de ProgramaçãoIntrodução à Lógica de Programação
Introdução à Lógica de Programação
 

Ähnlich wie Expressões aritméticas, relacionais e lógicas

04 - Operadores lógicos e expressões lógicas - v1.2
04 - Operadores lógicos e expressões lógicas - v1.204 - Operadores lógicos e expressões lógicas - v1.2
04 - Operadores lógicos e expressões lógicas - v1.2César Augusto Pessôa
 
53297189 apostila-algoritmo-e-logica-i
53297189 apostila-algoritmo-e-logica-i53297189 apostila-algoritmo-e-logica-i
53297189 apostila-algoritmo-e-logica-iEdvan Mateó
 
Logica java ate slide 30
Logica java   ate slide 30Logica java   ate slide 30
Logica java ate slide 30hflandim
 
Etec ai -21- excel - menu fórmulas 3
Etec   ai -21- excel - menu fórmulas 3Etec   ai -21- excel - menu fórmulas 3
Etec ai -21- excel - menu fórmulas 3Nutsha De luca
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de ProgramaçãoAdao Chiavelli
 
Alg aula 02 - algoritmos 1 tp1
Alg   aula 02 - algoritmos 1 tp1Alg   aula 02 - algoritmos 1 tp1
Alg aula 02 - algoritmos 1 tp1Thalles Anderson
 
Linguagem C/C++: Condições ou expressões lógicas
Linguagem C/C++:  Condições ou expressões lógicasLinguagem C/C++:  Condições ou expressões lógicas
Linguagem C/C++: Condições ou expressões lógicasnataferraz
 
Linguagem de programação 2015 - aula 02
Linguagem de programação   2015 - aula 02Linguagem de programação   2015 - aula 02
Linguagem de programação 2015 - aula 02Estela Muenchen Mentges
 
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresLogica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresRegis Magalhães
 
Google android p/ Noobs - SUPER 2014 - UPE
Google android p/ Noobs - SUPER 2014 - UPEGoogle android p/ Noobs - SUPER 2014 - UPE
Google android p/ Noobs - SUPER 2014 - UPELevi Saturnino
 
algoritmo-m03-tiposdedados-151221150545.pptx
algoritmo-m03-tiposdedados-151221150545.pptxalgoritmo-m03-tiposdedados-151221150545.pptx
algoritmo-m03-tiposdedados-151221150545.pptxGustavoMaciel67
 

Ähnlich wie Expressões aritméticas, relacionais e lógicas (20)

04 - Operadores lógicos e expressões lógicas - v1.2
04 - Operadores lógicos e expressões lógicas - v1.204 - Operadores lógicos e expressões lógicas - v1.2
04 - Operadores lógicos e expressões lógicas - v1.2
 
Aula03
Aula03Aula03
Aula03
 
Algoritmos - capítulo 2
Algoritmos - capítulo 2Algoritmos - capítulo 2
Algoritmos - capítulo 2
 
53297189 apostila-algoritmo-e-logica-i
53297189 apostila-algoritmo-e-logica-i53297189 apostila-algoritmo-e-logica-i
53297189 apostila-algoritmo-e-logica-i
 
Aula04
Aula04Aula04
Aula04
 
Logica java ate slide 30
Logica java   ate slide 30Logica java   ate slide 30
Logica java ate slide 30
 
Etec ai -21- excel - menu fórmulas 3
Etec   ai -21- excel - menu fórmulas 3Etec   ai -21- excel - menu fórmulas 3
Etec ai -21- excel - menu fórmulas 3
 
Comandos em python
Comandos em pythonComandos em python
Comandos em python
 
Logica de Programacao
Logica de ProgramacaoLogica de Programacao
Logica de Programacao
 
Algoritmo - tipos de dados
Algoritmo - tipos de dadosAlgoritmo - tipos de dados
Algoritmo - tipos de dados
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
 
02 algoritmos
02 algoritmos02 algoritmos
02 algoritmos
 
Alg aula 02 - algoritmos 1 tp1
Alg   aula 02 - algoritmos 1 tp1Alg   aula 02 - algoritmos 1 tp1
Alg aula 02 - algoritmos 1 tp1
 
Visual g apostila de algoritmo
Visual g   apostila de algoritmoVisual g   apostila de algoritmo
Visual g apostila de algoritmo
 
Linguagem C/C++: Condições ou expressões lógicas
Linguagem C/C++:  Condições ou expressões lógicasLinguagem C/C++:  Condições ou expressões lógicas
Linguagem C/C++: Condições ou expressões lógicas
 
Linguagem de programação 2015 - aula 02
Linguagem de programação   2015 - aula 02Linguagem de programação   2015 - aula 02
Linguagem de programação 2015 - aula 02
 
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresLogica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
 
Google android p/ Noobs - SUPER 2014 - UPE
Google android p/ Noobs - SUPER 2014 - UPEGoogle android p/ Noobs - SUPER 2014 - UPE
Google android p/ Noobs - SUPER 2014 - UPE
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
 
algoritmo-m03-tiposdedados-151221150545.pptx
algoritmo-m03-tiposdedados-151221150545.pptxalgoritmo-m03-tiposdedados-151221150545.pptx
algoritmo-m03-tiposdedados-151221150545.pptx
 

Mehr von Sérgio Souza Costa

De algoritmos à programas de computador
De algoritmos à programas de computadorDe algoritmos à programas de computador
De algoritmos à programas de computadorSérgio Souza Costa
 
Introdução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosIntrodução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosSérgio Souza Costa
 
Minicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosMinicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosSérgio Souza Costa
 
Banco de dados geográfico - Aula de Encerramento
Banco de dados geográfico - Aula de EncerramentoBanco de dados geográfico - Aula de Encerramento
Banco de dados geográfico - Aula de EncerramentoSérgio Souza Costa
 
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemBanco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemSérgio Souza Costa
 
Banco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaBanco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaSérgio Souza Costa
 
Linguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoLinguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoSérgio Souza Costa
 
Gödel’s incompleteness theorems
Gödel’s incompleteness theoremsGödel’s incompleteness theorems
Gödel’s incompleteness theoremsSérgio Souza Costa
 
DBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsDBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsSérgio Souza Costa
 
Conceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosConceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosSérgio Souza Costa
 
Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Sérgio Souza Costa
 
Relações (composição e agregação)
Relações (composição e agregação)Relações (composição e agregação)
Relações (composição e agregação)Sérgio Souza Costa
 

Mehr von Sérgio Souza Costa (20)

De algoritmos à programas de computador
De algoritmos à programas de computadorDe algoritmos à programas de computador
De algoritmos à programas de computador
 
Introdução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmosIntrodução ao pensamento computacional e aos algoritmos
Introdução ao pensamento computacional e aos algoritmos
 
Minicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficosMinicurso de introdução a banco de dados geográficos
Minicurso de introdução a banco de dados geográficos
 
Modelagem de dados geográficos
Modelagem de dados geográficosModelagem de dados geográficos
Modelagem de dados geográficos
 
Banco de dados geográfico - Aula de Encerramento
Banco de dados geográfico - Aula de EncerramentoBanco de dados geográfico - Aula de Encerramento
Banco de dados geográfico - Aula de Encerramento
 
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagemBanco de dados geográficos – Arquiteturas, banco de dados e modelagem
Banco de dados geográficos – Arquiteturas, banco de dados e modelagem
 
Banco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de aberturaBanco de dados geográficos - Aula de abertura
Banco de dados geográficos - Aula de abertura
 
Linguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - IntroduçãoLinguagem SQL e Extensões Espacias - Introdução
Linguagem SQL e Extensões Espacias - Introdução
 
Gödel’s incompleteness theorems
Gödel’s incompleteness theoremsGödel’s incompleteness theorems
Gödel’s incompleteness theorems
 
Turing e o problema da decisão
Turing e o problema da decisãoTuring e o problema da decisão
Turing e o problema da decisão
 
DBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cellsDBCells - an open and global multi-scale linked cells
DBCells - an open and global multi-scale linked cells
 
Conceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetosConceitos básicos de orientação a objetos
Conceitos básicos de orientação a objetos
 
Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)Polymorphism (Ad-hoc and Universal)
Polymorphism (Ad-hoc and Universal)
 
Herança e Encapsulamento
Herança e EncapsulamentoHerança e Encapsulamento
Herança e Encapsulamento
 
Relações (composição e agregação)
Relações (composição e agregação)Relações (composição e agregação)
Relações (composição e agregação)
 
Abstract classes and interfaces
Abstract classes and interfacesAbstract classes and interfaces
Abstract classes and interfaces
 
Introdução ao Prolog
Introdução ao PrologIntrodução ao Prolog
Introdução ao Prolog
 
Heap - Python
Heap - PythonHeap - Python
Heap - Python
 
Paradigma lógico
Paradigma lógicoParadigma lógico
Paradigma lógico
 
Contextualizando o moodle
Contextualizando o moodleContextualizando o moodle
Contextualizando o moodle
 

Kürzlich hochgeladen

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 

Kürzlich hochgeladen (6)

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 

Expressões aritméticas, relacionais e lógicas

  • 1. Expressões aritméticas, relacionais e lógicas Sérgio Souza Costa
  • 2. Roteiro • Revisão • Objetivos • Expressões aritméticas • Expressões relacionais • Expressões lógicas • Para saber mais https://panda.ime.usp.br/cc110/static/cc110/02-expressoes.html
  • 3. Revisão • Vimos no encontro anterior que linguagens de programação descreve algoritmos que possam ser executados através de um artefato computacional. • Na disciplina de introdução a computação, vocês viram que o computador possui uma unidade para realizações de operações aritméticas e lógicas. • Pelo incrível que pareça, todos os programas de computadores estão essencialmente sempre realizando essas operações, de modo muito rápido. • Então ...
  • 4. Objetivos Ao final desse encontro você deverá ser capaz de: • calcular o resultado de expressões aritméticas, relacionais e lógicas • escrever expressões corretas usando operadores aritméticos, lógicos, relacionais e suas combinações
  • 5. Expressões aritméticas Uma expressão aritmética é formada por: - números (chamados de operandos) e - operadores Expressões podem possuir apenas um número, quanto vários numeros e diferentes operadores: >> 5 >> 2 + 3 * 4 - 5
  • 6. Expressões aritméticas Uma expressão aritmética é formada por: - números (chamados de operandos) e - operadores Expressões podem possuir apenas um número, quanto vários numeros e diferentes operadores: >> 5 >> 2 + 3 * 4 - 5 Aproveitando, qual é o valor da expressão: 2 + 3 * 4 - 5
  • 7. Expressões aritméticas: números Veremos mais adiante sobre tipos, mas pensem em tipos como conjunto de valores. No caso de números lembrem das aulas de matemática sobre numeros naturais, reais, racionais .... Nome Tipo Descrição Inteiros int Números inteiros, sem parte fracionárias como 3, 5, 8, 65 e -99. Ponto Flutuante (real) float Números com parte fracionária, busca representar os números reais da matemática como 1.5, 3.145 e 9.35
  • 8. Expressões aritméticas: números Veremos mais adiante sobre tipos, mas pensem em tipos como conjunto de valores. No caso de números lembrem das aulas de matemática sobre numeros naturais, reais, racionais .... Nome Tipo Descrição Inteiros int Números inteiros, sem parte fracionárias como 3, 5, 8, 65 e -99. Ponto Flutuante (real) float Números com parte fracionária, busca representar os números reais da matemática como 1.5, 3.145 e 9.35 Lembrem-se que por ser em inglês, usamos o ponto (.) para separa a parte decimal. Então é 3.145 e não 3,145
  • 9. Expressões aritméticas: operadores Os quatro primeiros operadores aritméticos são conhecidos de vocês, os 3 últimos vamos conhecer eles agora. Pause esse vídeo e me acompanhe em: conhecendo os operadores aritméticos: https://youtu.be/OV53kQJHxKg.
  • 10. Expressões aritméticas: precedência Um outro ponto importante é quanto a precedência, que indica qual operador será calculado primeiro. Como descrito na tabela. Operador descrição Associatividade () parênteses da esquerda para a direita ** potência da direita para a esquerda +, - positivo e negativo unário da direita para a esquerda *, /, //, % multiplicação , divisão, divisão inteira e resto da esquerda para a direita +, - soma e subtração da esquerda para a direit Pause esse vídeo e me acompanhe em: entendendo a precedência e associatividade: https://youtu.be/OV53kQJHxKg Maior Menor
  • 11. Expressões relacionais • Em programação é comum termos a necessidade de comparar grandezas, se um dado número é maior ou menor que outro. • O resultado dessa comparação será “sim” ou “não”, mas na programação é usado um tipo de dado chamado de lógico ou boleano. • Ao invés de “sim” ou “não”, os valores lógicos são True (verdadeiro em inglês) e False (falso em inglês). • Podemos comparar números, textos, valores lógicos entre outros. Mas aqui vamos focar nos números.
  • 12. Expressões relacionais: operadores Operador Descrição Exemplo Resultado == igualdade 2 == 3 False != desigualdade 2 != 3 True > maior 3 > 3 False >= maior ou igual 3 >= 3 True < menor 2 < 3 True <= menor ou igual 4 <= 3 False
  • 13. Expressões relacionais: operadores Operador Descrição Exemplo Resultado == igualdade 2 == 3 False != desigualdade 2 != 3 True > maior 3 > 3 False >= maior ou igual 3 >= 3 True < menor 2 < 3 True <= menor ou igual 4 <= 3 False Os operadores relacionais podem ser combinados através lógicos que veremos a seguir.
  • 14. Expressões lógicas • As expressões lógicas são construídas usando operadores lógicos sobre valores booleanos. • Expressões lógicas (ou booleanas) combinam valores booleanos com operadores lógicos. Os três operadores que iremos usar são: • not • and • or
  • 15. Expressões lógicas:not O operador not é a negação lógica, ele troca o valor do operando, ou seja, troca o valor booleano de True para False e de False para True. Como representado na tabela verdade abaixo: X not X False True True False
  • 16. Expressões lógicas:and O operador and, conhecido na lógica como conjunção. Ele devolve True apenas quando seus dois operandos são True e devolve False caso contrário, quando ao menos um dos operandos é False, como mostra a tabela a seguir. X Y X and Y False False False False True False True False False True True True
  • 17. Expressões lógicas:or O operador or, conhecido na lógica como disjunção. devolve False apenas quando seus dois operandos são False e devolve True caso contrário (quando ao menos um dos operandos é True. X Y X and Y False False False False True True True False True True True True
  • 18. Expressões lógicas:or O operador or, conhecido na lógica como disjunção. devolve False apenas quando seus dois operandos são False e devolve True caso contrário (quando ao menos um dos operandos é True. X Y X and Y False False False False True True True False True True True True Lembrem-se dessa tabela ao usar esse operador. Não confunda ele com o uso comum, do tipo: vou ao shopping OU a práia.
  • 19. Expressões lógicas: precedência A tabela a seguir mostra a precedência dos operadores lógicos usados em Python: Operador Descrição Exemplo Resultado not negação lógica not True False and E lógico True and False False or OR lógico True or False True Pause esse vídeo e me acompanhe em: Conhecendo os operadores relacionais e lógicos: https://youtu.be/PNFjeB2kDnw
  • 20. Para saber mais Como Pensar Como um Cientista da Computação - Aprendendo com Python: Versão Interativa, tradução do livro interativo produzido no projeto Runestone Interactive por Brad Miller and David. Introdução à Computação com Python do professor Fábio Kon do Departamento de Computação do IME-USP no Coursera. Python para Zumbis do professor Fernando Masanori da FATEC de São José dos Campos. Introdução à Computação com Python: um curso interativo por: J.C. de Pina Jr. e C.H. Morimoto. Curso em Vídeo: Python por Gustavo Guanabara.