Lógica e Programação
• Aula 02 - Profa. Silvia Maria Wanderley Moraes
• Programas puramente sequenciais
O que você
• Organização desta aula
vai aprender Parte 1 – Solução de Problemas
nessa aula Parte 2 – Tipos, Variáveis e Constantes
Parte 3 – Expressões Aritméticas
Parte 4 – Instruções de E/S
Parte 5 – Programas puramente sequenciais
• Bibliografia básica
O que você vai • Livro sobre algoritmos
precisar para • Livro sobre programação em Python
acompanhar
• Instalação da linguagem Python
essa aula
• Instalação do Visual Studio Code
• Google Colaboratory (ambiente online)
Programas puramente
sequenciais
Parte 1 – Solução de Problemas
Parte 1 - Solução de Problemas
O que vamos estudar ?
• Etapas na solução de problemas
• Revisitar o ambiente de programação
• Trabalhar os tipos de erros
Solução de Problemas
Problema Solução
Sequência de instruções bem definidas
que executadas em tempo finito
resolvem um problema.
Algoritmos
Algoritmo Algoritmo
Natural Computacional
Como embalar um presente
Como amarrar o cadarço do tênis
Como fazer um bolo de chocolate
Como trocar um pneu
...
Solução de Problemas
Sequência de instruções bem definidas
que executadas em tempo finito
resolvem um problema.
Algoritmos
Algoritmo Algoritmo
Natural Computacional
Como embalar um presente
Como amarrar o cadarço do tênis Traduzido para uma
Como fazer um bolo de chocolate linguagem de
Como trocar um pneu programação: Python,
Java, C,C#, Php,...
...
Programa
Solução de Problemas
Etapas:
1. Identificação do problema
2. Organização da solução
3. Codificação em uma linguagem de programação
1
Problema: Somar 2
2
valores informados
Algoritmo Somar2
pelo usuário Inicio
int valor1,valor2
escrever(‘Informe o primeiro valor’) Programa em Python
ler(valor1)
escrever(‘Informe o segundo valor’)
ler(valor2) 3
escrever(‘Soma: ‘ + (valor1+valor2))
fim
Solução de Problemas
Etapas:
1. Identificação do problema
2. Organização da solução
3. Codificação em uma linguagem de programação
Algoritmo Somar2 Programa em Python
Inicio
int valor1,valor2
escrever(‘Informe o primeiro valor’)
ler(valor1)
escrever(‘Informe o segundo valor’)
ler(valor2)
escrever(‘Soma: ‘ + (valor1+valor2))
fim Execução de
um
Algoritmo programa
em Python
Solução de Problemas
Ambiente de Programação: Colab
Solução de Problemas
Ambiente de Programação:
Colab
Solução de Problemas
Exemplo 2 : Visual Studio code
Tipos de Erros:
• Erro de sintaxe
• Erro de execução
• Erro de logica
Retomando: Solução de Problemas
Exemplo 2
Tipos de Erros:
• Erro de sintaxe
• Erro de execução
• Erro de logica
Retomando: Solução de Problemas
Exemplo 2
Tipos de Erros:
• Erro de sintaxe
• Erro de execução
• Erro de logica
Solução de Problemas
Exemplo 3
Tipos de Erros:
• Erro de sintaxe
• Erro de execução
• Erro de logica
Solução de Problemas
Exemplo 3
Tipos de Erros:
• Erro de sintaxe
• Erro de execução
• Erro de logica
Solução de Problemas
Exemplo 3
Tipos de Erros:
• Erro de sintaxe
• Erro de execução
• Erro de lógica
Solução de Problemas
Exemplo 3
Tipos de Erros:
• Erro de sintaxe
• Erro de execução
• Erro de lógica
Dinâmica
Exercício 1 – Encontre o erro e corrija o código a seguir:
Dinâmica
Exercício 1 – Encontre o erro e corrija o código a seguir:
Erro de Sintaxe
Dinâmica
Exercício 1 – Encontre o erro e corrija o código a seguir:
Erro de Sintaxe
Correção
Dinâmica
Exercício 2 – Que tipo de erro aconteceu? De sintaxe, de execução ou de
lógica? Como corrigir ?
Dinâmica
Exercício 2 – Que tipo de erro aconteceu? De sintaxe, de execução ou de
lógica? Como corrigir ?
Erro de Lógica
Dinâmica
Exercício 2 – Que tipo de erro aconteceu? De sintaxe, de execução ou de
lógica? Como corrigir ?
Erro de Lógica
Correção
Dinâmica
Exercício 3 – Que tipo
de erro aconteceu? De
sintaxe, de execução
ou de lógica ?
Dinâmica
Exercício 3 – Que tipo
de erro aconteceu? De
sintaxe, de execução
ou de lógica ?
Erro de Execução
Etapas de solução de problemas
Resumo do
1. Identificação do problema
que vimos 2. Organização da solução
até agora 3. Codificação em uma linguagem de programação
Ambiente de programação
Tipos de erros
Erro de Sintaxe
Erro de Execução
Erros de Lógica
Programas puramente
sequenciais
Parte 2 – Tipos, variáveis e constantes
Relembrando O que já estudamos ?
o conteúdo do
• Etapas na solução de problemas
vídeo anterior • Revisitar o ambiente de programação
• Trabalhar os tipos de erros
Parte 2 – Tipos, variáveis e constantes
O que vamos estudar ?
• Tipos de dados básicos
• O que são e como definir variáveis e constantes
• Instrução de atribuição
COMO CALCULAR?
Solução de Problemas
Vamos iniciar o nosso estudo
a partir de um problema.
Solução de Problemas
Problema:Calcular o volume de uma
esfera Como calcular?
4 3 Que dados o usuário precisa
𝑣 = 𝜋𝑟 informar (entrada de dados) ?
3 raio
O que o programa deve
informar para o usuário (saída
Etapas: de dados) ?
1. Identificação do problema volume
2. Organização da solução
3. Codificação em uma linguagem de programação
COMO CALCULAR?
Solução de Problemas
Vamos precisar entender:
Variáveis e tipos de dados
Instrução de Atribuição
Expressões Aritméticas
Que elementos nessa fórmula podem mudar ?
4 3
𝑣 = 𝜋𝑟
3
Conceito
Vamos precisar entender:
4 3
Variáveis e tipos de dados 𝑣 = 𝜋𝑟
Instrução de Atribuição 3
Expressões Aritméticas
Variáveis
• têm como finalidade guardar os dados na memória.
• possuem nomes (identificador) e podem ser referenciadas por este nome.
• têm tipos
• são declarados em Python ao receberem um valor por meio da instrução
de atribuição (=).
Conceito
Variáveis
• têm como finalidade guardar os dados na memória.
• possuem nomes (identificador) e podem ser referenciadas por este nome.
• têm tipos
• são declarados em Python ao receberem um valor por meio da instrução
de atribuição (=).
Devem iniciar por letra
Podem ser alfanuméricos
Fazem diferença entre caixa alta e caixa baixa
Não permitem o uso de caracteres especiais, exceto o underline (_)
Não permitem o uso de palavras reservadas
Devem receber nomes significativos
Conceito
Variáveis
• têm como finalidade guardar os dados na memória.
• possuem nomes (identificador) e podem ser referenciadas por este nome.
• têm tipos
• são declarados em Python ao receberem um valor por meio da instrução
de atribuição (=).
Tipos de dados básicos
• int: representa os números inteiros
• float: chamado de ponto flutuante representa os números reais
• str: chamado de string representa cadeias de caracteres
• bool: chamado de booleano representa os valores lógicos true e false.
Dinâmica
Assinale os identificadores válidos como nome de variáveis:
1. ( ) n#
2. ( ) 30
3. ( ) numero1
4. ( ) idade do aluno
5. ( ) notaDaP1
6. ( ) 3valor
7. ( ) bool
8. ( )%
9. ( ) dia
10. ( ) endereço
11. ( ) média
12. ( ) dia-da-semana
13. ( ) dia_de_estudar
Dinâmica
Assinale os identificadores válidos como nome de variáveis:
1. ( ) n#
2. ( ) 30
3. ( X ) numero1
4. ( ) idade do aluno
5. ( X ) notaDaP1
6. ( ) 3valor
7. ( ) bool
8. ( )%
9. ( X ) dia
10. ( X ) endereço
11. ( X ) média
12. ( ) dia-da-semana
13. ( X ) dia_de_estudar
Vamos precisar entender:
Conceito Variáveis e tipos de dados
Instrução de Atribuição
Expressões Aritméticas
Variáveis
• têm como finalidade guardar os dados na memória.
• possuem nomes (identificador) e podem ser referenciadas por este nome.
• têm tipos
• são declarados em Python ao receberem um valor por meio da instrução
de atribuição (=).
quantidade = 10
Instrução de atribuição nota = 9.5
nome = ‘Vítor’
variavel = expressão aluno = “Lucas”
achou = true
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição
variavel = expressão
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição Será que os valores das variáveis serão
trocados?
variavel = expressão
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição Será que os valores das variáveis serão
trocados?
variavel = expressão
Não !
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição Será que os valores das variáveis serão
trocados?
variavel = expressão
O que fazer?
Criar mais uma
variável
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição Será que os valores das variáveis serão
trocados?
variavel = expressão
O que fazer?
Criar mais uma
variável
val num
100 200
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição Será que os valores das variáveis serão
trocados?
variavel = expressão
O que fazer?
Criar mais uma
variável
val num aux
100 200
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição Será que os valores das variáveis serão
trocados?
variavel = expressão
O que fazer?
Criar mais uma
variável
val num aux
100 200 100
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição Será que os valores das variáveis serão
trocados?
variavel = expressão
O que fazer?
Criar mais uma
variável
val num aux
200 200 100
COMO CALCULAR?
Instrução de Atribuição
Instrução de atribuição Será que os valores das variáveis serão
trocados?
variavel = expressão
O que fazer?
Criar mais uma
variável
val num aux
200 100 100
Dinâmica
As constantes abaixo são de que tipo? int, float, str ou bool ?
1. ( ) 1.0
2. ( )1
3. ( ) “1”
4. ( ) ‘1’
5. ( ) ‘c’
6. ( ) true
7. ( ) ‘0.0’
8. ( ) rua
9. ( ) ‘Av. Ipiranga, 6681’
10. ( )5
11. ( ) “João”
12. ( ) 4.78
13. ( ) “false”
Dinâmica
As constantes abaixo são de que tipo? int, float, str ou bool ?
1. ( float ) 1.0
2. ( int )1
3. ( str ) “1”
4. ( str ) ‘1’
5. ( str ) ‘c’
6. ( bool ) true
7. ( str ) ‘0.0’
8. ( - ) rua
9. ( str ) ‘Av. Ipiranga, 6681’
10. ( int ) 5
11. ( str ) “João”
12. ( float ) 4.78
13. ( str ) “false”
Etapas para Solução de Problemas
1. Identificação do problema
2. Organização da solução
Resumo do 3. Codificação em uma linguagem de programação
que vimos
Ambiente de programação
até agora Tipos de erros
Conceitos básicos
Tipos de Dados: int, float, str, bool
Variáveis & Constantes: propósito e declaração
Programas puramente
sequenciais
Parte 3 – Expressões Aritméticas
Relembrando O que já estudamos ?
o conteúdo do
• Conceitos básicos de programação
vídeo anterior • Variáveis e Constantes
• Instrução de atribuição
Parte 3 – Expressões Aritméticas
O que vamos estudar ?
• Operadores e precedência
• Algumas funções matemáticas
• Revisitando a instrução de Atribuição
Conceito
Vamos precisar entender:
4 3
Variáveis e tipos de dados 𝑣 = 𝜋𝑟
Instrução de Atribuição 3
Expressões Aritméticas
Expressões:
• aritméticas: resultam em valores numéricos
• lógicas : resultam em valores booleanos
Conceito
Expressões:
• aritméticas: resultam em valores numéricos
• lógicas : resultam em valores booleanos
Operadores aritméticos: Potenciação
+ : adição
- : subtração 3
2
* : multiplicação
** : potenciação 2**3 = 8 2**3
/ : divisão real 7/2 = 3.5
// : divisão inteira 7//2 = 3
% : resto de divisão inteira 7%2= 1
Conceito
Expressões:
• aritméticas: resultam em valores numéricos
• lógicas : resultam em valores booleanos
Operadores aritméticos: Divisão real : /
+ : adição
- : subtração
7 2
* : multiplicação
** : potenciação 2**3 = 8 7 3.5 quociente
/ : divisão real 7/2 = 3.5 resto 0
// : divisão inteira 7//2 = 3
% : resto de divisão inteira 7%2= 1
Conceito
Expressões:
• aritméticas: resultam em valores numéricos
• lógicas : resultam em valores booleanos
Operadores aritméticos: Divisão inteira : / /
+ : adição
- : subtração
7 2
* : multiplicação
6 3 quociente
** : potenciação 2**3 = 8
/ : divisão real 7/2 = 3.5 resto 1
// : divisão inteira 7//2 = 3
% : resto de divisão inteira 7%2= 1
Conceito
Expressões:
• aritméticas: resultam em valores numéricos
• lógicas : resultam em valores booleanos
Operadores aritméticos: Divisão inteira : / /
+ : adição
- : subtração
* : multiplicação
10 20
** : potenciação 2**3 = 8 ... 0 quociente
/ : divisão real 10/20 = resto 10
0.5
// : divisão inteira 10//20 =
0
% : resto de divisão inteira 10%20=
10
Conceito
Expressões:
• aritméticas: resultam em valores numéricos
• lógicas : resultam em valores booleanos
Operadores aritméticos:
+ : adição
- : subtração +
* : multiplicação Precedência (ordem de avaliação):
** : potenciação 2**3 = 8 ()
/ : divisão real 7/2 = 3.5 **
// : divisão inteira 7//2 = 3 *, /, //, %
% : resto de divisão inteira 7%2= 1 - +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final das expressões
+ : adição a seguir?
- : subtração
* : multiplicação
** : potenciação 5+10**2
/ : divisão real 1-3/4
// : divisão inteira 2-3//4
% : resto de divisão inteira
3 -4 * 2
+
5*(3-4)+1
Precedência (ordem de avaliação): 2**(1+3)
()
**
7+6%10
*, /, //, % 7 + 3 * 2**(5-3)
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final das expressões
+ : adição a seguir?
- : subtração
* : multiplicação
** : potenciação 5+10**2 = 105
/ : divisão real 1-3/4 = 0.25
// : divisão inteira 2-3//4 =2
% : resto de divisão inteira
3 -4 * 2 = -5
+
5*(3-4)+1 = -4
Precedência (ordem de avaliação): 2**(1+3) = 16
()
**
7+6%10 = 13
*, /, //, % 7 + 3 * 2**(5-3) = 19
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real
// : divisão inteira
% : resto de divisão inteira
+
Precedência (ordem de avaliação):
()
**
*, /, //, %
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real 3 + 8%5 + 4 * 5 – 10/4 + 8//5 + 2*4 – 1
// : divisão inteira
% : resto de divisão inteira
+
Precedência (ordem de avaliação):
()
**
*, /, //, %
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real 3 + 8%5 + 4 * 5 – 10/4 + 8//5 + 2*4 – 1
// : divisão inteira 3 + 3 + 20 – 2.5 + 1 + 8 - 1
% : resto de divisão inteira
+
Precedência (ordem de avaliação):
()
**
*, /, //, %
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real 3 + 8%5 + 4 * 5 – 10/4 + 8//5 + 2*4 – 1
// : divisão inteira 3 + 3 + 20 – 2.5 + 1 + 8 - 1
% : resto de divisão inteira 6 + 20 – 2.5 + 1 + 8 - 1
+
Precedência (ordem de avaliação):
()
**
*, /, //, %
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real 3 + 8%5 + 4 * 5 – 10/4 + 8//5 + 2*4 – 1
// : divisão inteira 3 + 3 + 20 – 2.5 + 1 + 8 - 1
% : resto de divisão inteira 6 + 20 – 2.5 + 1 + 8 - 1
26 – 2.5 + 1 + 8 – 1
+
Precedência (ordem de avaliação):
()
**
*, /, //, %
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real 3 + 8%5 + 4 * 5 – 10/4 + 8//5 + 2*4 – 1
// : divisão inteira 3 + 3 + 20 – 2.5 + 1 + 8 - 1
% : resto de divisão inteira 6 + 20 – 2.5 + 1 + 8 - 1
26 – 2.5 + 1 + 8 – 1
+
Precedência (ordem de avaliação): 23.5 + 1 + 8 - 1
()
**
*, /, //, %
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real 3 + 8%5 + 4 * 5 – 10/4 + 8//5 + 2*4 – 1
// : divisão inteira 3 + 3 + 20 – 2.5 + 1 + 8 - 1
% : resto de divisão inteira 6 + 20 – 2.5 + 1 + 8 - 1
26 – 2.5 + 1 + 8 – 1
+
Precedência (ordem de avaliação): 23.5 + 1 + 8 - 1
() 24.5 + 8 - 1
**
*, /, //, %
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real 3 + 8%5 + 4 * 5 – 10/4 + 8//5 + 2*4 – 1
// : divisão inteira 3 + 3 + 20 – 2.5 + 1 + 8 - 1
% : resto de divisão inteira 6 + 20 – 2.5 + 1 + 8 - 1
26 – 2.5 + 1 + 8 – 1
+
Precedência (ordem de avaliação): 23.5 + 1 + 8 - 1
() 24.5 + 8 - 1
**
*, /, //, % 32.5 - 1
- +, -
COMO CALCULAR?
Expressões Aritméticas
Operadores aritméticos: Qual o valor final da expressão aritmética
+ : adição abaixo?
- : subtração
* : multiplicação
** : potenciação
3 + 8%5 + 4 * 5 – 10/4 + 8//5 + (3-1)*(2**2) – 1
/ : divisão real 3 + 8%5 + 4 * 5 – 10/4 + 8//5 + 2*4 – 1
// : divisão inteira 3 + 3 + 20 – 2.5 + 1 + 8 - 1
% : resto de divisão inteira 6 + 20 – 2.5 + 1 + 8 - 1
26 – 2.5 + 1 + 8 – 1
+
Precedência (ordem de avaliação): 23.5 + 1 + 8 - 1
() 24.5 + 8 - 1
**
*, /, //, % 32.5 - 1
- +, -
31.5
Dinâmica
Qual o valor final das expressões aritméticas abaixo?
1. 5 + 2*(6-2) + 6//10 + 6/10 – 6%10 + 3*4
2. 8 – 12//7 + 12%7 – 4*(10%8) – 6.0/5 + 3
Dinâmica
Qual o valor final das expressões aritméticas abaixo?
1. 5 + 2*(6-2) + 6//10 + 6/10 – 6%10 + 3*4
5 +2*4 + 0 + 0.6 - 6 + 12
Dinâmica
Qual o valor final das expressões aritméticas abaixo?
1. 5 + 2*(6-2) + 6//10 + 6/10 – 6%10 + 3*4
5 +2*4 + 0 + 0.6 - 6 + 12
5 + 8 + 0 + 0.6 - 6 + 12
Dinâmica
Qual o valor final das expressões aritméticas abaixo?
1. 5 + 2*(6-2) + 6//10 + 6/10 – 6%10 + 3*4
5 +2*4 + 0 + 0.6 - 6 + 12
5 + 8 + 0 + 0.6 - 6 + 12
13 + 0.6 - 6 + 12
Dinâmica
Qual o valor final das expressões aritméticas abaixo?
1. 5 + 2*(6-2) + 6//10 + 6/10 – 6%10 + 3*4
5 +2*4 + 0 + 0.6 - 6 + 12
5 + 8 + 0 + 0.6 - 6 + 12
13 + 0.6 - 6 + 12
13.6 -6 + 12
Dinâmica
Qual o valor final das expressões aritméticas abaixo?
1. 5 + 2*(6-2) + 6//10 + 6/10 – 6%10 + 3*4
5 +2*4 + 0 + 0.6 - 6 + 12
5 + 8 + 0 + 0.6 - 6 + 12
13 + 0.6 - 6 + 12
13.6 -6 + 12
7.6 + 12
Dinâmica
Qual o valor final das expressões aritméticas abaixo?
1. 5 + 2*(6-2) + 6//10 + 6/10 – 6%10 + 3*4
5 +2*4 + 0 + 0.6 - 6 + 12
5 + 8 + 0 + 0.6 - 6 + 12
13 + 0.6 - 6 + 12
13.6 -6 + 12
7.6 + 12
19.6
Dinâmica
Qual o valor final das expressões aritméticas abaixo?
2. 8 – 12//7 + 12%7 – 4*(10%8) – 6.0/5 + 3
8- 1 + 5 -4* 2 - 1.2 +3
8- 1 + 5 - 8 - 1.2 +3
7 + 5 - 8 - 1.2 +3
12 - 8 - 1.2 +3
4 - 1.2 +3
2.8 +3
5.8
COMO CALCULAR?
Expressões Aritméticas
Agora precisamos complementar com funções matemáticas:
Como calcular uma raiz quadrada ?
FUNÇÕES
Expressões Aritméticas
Vamos aprender funções:
Necessário incluir no inicio do código a linha
import math
Essa instrução permitirá o uso das funções
matemáticas do python
Agora vamos ver as funções ...
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
• Raiz quadrada 𝑥: math.sqrt(x)
• Potenciação 𝑥 𝑦 : math.pow(x,y)
• Módulo |x|: math.fabs(x)
• Fatorial x!: math.factorial(x)
• Maior divisor comum: math.gdc(x,y)
• Arredonda para o próximo inteiro: math.ceil(x)
• Trunca para inteiro : math.trunch(x)
• Funções trigonométricas: math.sin(x), math.cos(x), ...
• Constante PI π: math.pi
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
• Raiz quadrada 𝑥: math.sqrt(x)
• Exemplos:
• 2𝑥
𝑏 2 − 4𝑎𝑐
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
• Potenciação 𝑥 𝑦 : math.pow(x,y)
• Exemplos:
• 𝑏 2𝑎+𝑐
𝑏 2 − 4𝑎𝑐
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
• Módulo |x|: math.fabs(x)
• Exemplos:
• |𝑏 3 − 10|
| a−2𝑐|
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
• Fatorial x!: math.factorial(x)
• Exemplos:
• 5!
• 𝑛!/( 𝑛 − 𝑝 ! 𝑝!)
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
Maior divisor comum: math.gcd(x,y)
Exemplo
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
• Arredonda para o próximo
inteiro: math.ceil(x)
• Trunca para inteiro :
math.trunc(x)
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
• Funções trigonométricas:
• math.sin(x), math.cos(x), ...
FUNÇÕES
Expressões Aritméticas
Vamos aprender:
• Constante PI π: math.pi
FUNÇÕES
Expressões Aritméticas
Codificando a expressão do problema:
4/3 * math.pi * math.pow(raio,3)
4 3
𝑣 = 𝜋𝑟
3
ATIVIDADE
Expressões Aritméticas
𝑏𝑎+1
Como a expressão 𝑎 + + |𝑏 − 𝑎| pode ser representada por?
2𝑎−1
math.sqrt(a + b**(a+1)/(2*a -1) ) + math.fabs(b-a)
Dinâmica
Represente em Python
𝑎+3𝑏 5
𝑏+1
+𝑏 𝑎+1
1. |𝑏−𝑎|
+
𝑏+3𝑎+𝑏𝑎5
−1
𝑎+3𝑏
2. 6𝑎𝑏𝑎+1 - 𝑎+𝑏−1
|2𝑏−𝑎3 −1|
Dinâmica
Represente em Python
𝑎+3𝑏 5
𝑏+1
+𝑏 𝑎+1
1. |𝑏−𝑎|
+
𝑏+3𝑎+𝑏𝑎5
−1
(math.sqrt( (a + 3*b)/(b+1) )+ math.pow(b,5)) / math.fabs(b-a) +
math.sqrt(math.sqrt(a) + 1)/(b + 3 * a + b * math.pow(a,5)) - 1
Dinâmica
Represente em Python
𝑎+3𝑏
2. 6𝑎𝑏𝑎+1 - 𝑎+𝑏−1
|2𝑏−𝑎3 −1|
6 * a * math.pow(b, a+1) - (a + 3*b)/(a+b-1) /
math.fabs(2*b – math.pow(a,3) – 1)
ATIVIDADE
Expressões Aritméticas
Revisitando a instrução de atribuição
Instrução de atribuição
variavel = expressão
ATIVIDADE
Instrução de Atribuição
Instrução de atribuição
variavel = expressão
A instrução de num = 10
atribuição permite dar num = 20
valores às variáveis. num = num + 2
O valor da variável é num = num + 3
atualizado a cada num = num // 2
num = 2 + (num-10)*2
atribuição.
ATIVIDADE
Instrução de Atribuição
Instrução de atribuição
variavel = expressão
A instrução de √ num = 10 num
atribuição permite dar num = 20 10
valores às variáveis. num = num + 2
O valor da variável é num = num + 3
atualizado a cada num = num // 2
num = 2 + (num-10)*2
atribuição.
ATIVIDADE
Instrução de Atribuição
Instrução de atribuição
variavel = expressão
A instrução de √ num = 10 num
atribuição permite dar √ num = 20 20
valores às variáveis. num = num + 2
O valor da variável é num = num + 3
atualizado a cada num = num // 2
num = 2 + (num-10)*2
atribuição.
ATIVIDADE
Instrução de Atribuição
Instrução de atribuição
variavel = expressão
A instrução de √ num = 10 num
atribuição permite dar √ num = 20 22
valores às variáveis. √ num = num + 2
O valor da variável é num = num + 3
atualizado a cada num = num // 2
num = 2 + (num-10)*2
atribuição.
ATIVIDADE
Instrução de Atribuição
Instrução de atribuição
variavel = expressão
A instrução de √ num = 10 num
atribuição permite dar √ num = 20 25
valores às variáveis. √ num = num + 2
O valor da variável é √ num = num + 3
atualizado a cada num = num // 2
num = 2 + (num-10)*2
atribuição.
ATIVIDADE
Instrução de Atribuição
Instrução de atribuição
variavel = expressão
A instrução de √ num = 10 num
atribuição permite dar √ num = 20 12
valores às variáveis. √ num = num + 2
O valor da variável é √ num = num + 3
atualizado a cada √ num = num // 2
num = 2 + (num-10)*2
atribuição.
ATIVIDADE
Instrução de Atribuição
Instrução de atribuição
variavel = expressão
A instrução de √ num = 10 num
atribuição permite dar √ num = 20 6
valores às variáveis. √ num = num + 2
O valor da variável é √ num = num + 3
atualizado a cada √ num = num // 2
atribuição. √ num = 2 + (num-10)*2
Dinâmica
Qual o valor final da variável val ?
val = 7
val = 9//4
val = val + 1
val = val + 10
val = 4 + val – 5 *2
val = val//2
val = math.abs(val – 19) + 2
Dinâmica
Qual o valor final da variável val ?
val = 7 val = 7 /
val = 9//4 val = 2
val = val + 1 val = 3
val = val + 10 val = 13
val = 4 + val – 5 *2 val = 7
val = val//2 val=3
val = math.abs(val – 19) + 2 val = 18
Etapas para Solução de Problemas
1. Identificação do problema
2. Organização da solução
3. Codificação em uma linguagem de programação
Resumo do
Ambiente de programação & Tipos de erros
que vimos
até agora Conceitos básicos : variáveis & constantes
Expressões Aritméticas
representação
operadores
precedência dos operadores
funções matemáticas
Instrução de atribuição
permite atribuir valores às variáveis.
Programas puramente
sequenciais
Parte 4 – Instruções de Entrada e Saída
Relembrando O que já estudamos ?
o conteúdo do
• Conceitos básicos de programação
vídeo anterior • Variáveis e Constantes
• Instrução de atribuição
• Expressões Aritméticas
• Funções Matemáticas
Parte 4 – Instruções E/S
O que vamos estudar ?
• Instrução de Entrada
• Instrução de Saída
• Exemplos de programas puramente sequenciais
COMO CALCULAR?
Instruções de E/S
Já vimos:
- Variáveis e tipos de dados
- Expressões Aritméticas Agora precisamos ver:
- Instrução de Atribuição
Instruções de Saída
Instruções de Entrada
Conceito
Precisamos aprender:
Instruções de Saída
Instruções de Entrada
Instruções de Saída:
• Permitem exibir mensagens na tela do computador
• Fornecem orientações ao usuário quanto à entrada de dados
• Fornecem informações e resultados ao usuário
• Instrução: print(item, item, ....)
• Os itens podem ser strings, variáveis, expressões...
• Ex: print(“Isso é um teste”)
INSTRUÇÕES DE ENTRADA E SAÍDA
Instruções de E/S
Precisamos aprender:
Instruções de Saída
Instruções de Entrada
Na execução
Exemplos:
print(“Isso é um teste”) Isso é um teste
num = 2 Valor = 2
print(“Valor = “, 2)
Conceito
Precisamos aprender:
Instruções de Saída
Instruções de Entrada
• Instrução de entrada:
• Permite receber os dados informados pelo usuário via teclado
• Permite dar orientações ao usuário quanto à entrada de dados
• Devolve uma string, por isso é necessário transformar a entrada em um tipo
numérico, quando desejado
• Sintaxe: variável = tipo ( input(mensagem))
• Ex: print(“Informe o nome:”)
• nome = input()
Conceito
Precisamos aprender:
Instruções de Saída
Instruções de Entrada
• Instrução de entrada:
• Permite receber os dados informados pelo usuário via teclado
• Permite dar orientações ao usuário quanto à entrada de dados
• Devolve uma string, por isso é necessário transformar a entrada em um tipo
numérico, quando desejado
• Sintaxe: variável = tipo ( input(mensagem))
• Ex: valor =int(input(“Informe um valor inteiro”)
nota = float(input(“Informe a nota da P1: “)
INSTRUÇÕES DE ENTRADA E SAÍDA d
Solução de problemas 4 3
Programas puramente sequenciais 𝑣 = 𝜋𝑟
3
Codificando a solução do problema
em Python Solicitando o raio ao
usuário (entrada)
raio = float(input(“Informe o valor do raio: “))
volume = 4/3 * 3.1416 * raio * raio * raio Calculando o volume
print(“volume da esfera: “ , volume)
Informando o volume
ao usuário (saída)
INSTRUÇÕES DE ENTRADA E SAÍDA d
Solução de problemas 4 3
Programas puramente sequenciais 𝑣 = 𝜋𝑟
3
Codificando a solução do problema
em Python Solicitando o raio ao
usuário (entrada)
raio = float(input(“Informe o valor do raio: “))
volume = 4/3 * 3.1416 * raio * raio * raio Calculando o volume
print(“volume da esfera: “ , volume)
Informando o volume
ao usuário (saída)
Dinâmica
Codificando em Python ...
Enunciado 1:
Dinâmica
Etapas para Solução de Problemas
1. Identificação do problema
2. Organização da solução
Resumo do 3. Codificação em uma linguagem de programação
que vimos Ambiente de programação & Tipos de erros
até agora Conceitos básicos : variáveis & constantes
Expressões Aritméticas
Instrução de atribuição
permite atribuir valores às variáveis.
Instrução de Entrada: input
permite receber os dados informados pelo usuário.
Instrução de saída : print
permite escrever na tela informações ao usuário.
Programas puramente
sequenciais
Parte 5 – Desenvolvimento de programas
Relembrando O que já estudamos ?
o conteúdo do
• Conceitos básicos de programação
vídeo anterior • Variáveis e Constantes
• Instrução de atribuição
• Expressões Aritméticas
• Funções Matemáticas
• Instruções E/S
• Exemplos de programas puramente sequenciais
Parte 5 – Desenvolvimento de Programas
O que vamos estudar ?
• Prática
Dinâmica
Dinâmica
Dinâmica
Dinâmica
Etapas para Solução de Problemas
1. Identificação do problema
2. Organização da solução
Resumo do 3. Codificação em uma linguagem de programação
que vimos Ambiente de programação & Tipos de erros
Conceitos básicos : variáveis & constantes
até agora Expressões Aritméticas
Instrução de atribuição
permite atribuir valores às variáveis.
Instrução de Entrada: input
permite receber os dados informados pelo usuário.
Instrução de saída : print
permite escrever na tela informações ao usuário.
Desenvolvimento de programas puramente sequenciais
Checkpoint 1
ATIVIDADE
Dada a fórmula de Bhaskara abaixo:
Qual das expressões aritméticas a seguir representa corretamente, em
Python, a raiz positiva da fórmula ?
A) -b + math.pow(b*b – 4ac)/2a
B) -b + math.pow(b*b – 4*a*c)/2*a
C) (-b + math.sqrt(math.pow(b,2)) – 4*a*c)/2*a
D) (-b + math.sqrt(math.pow(b,2) – 4*a*c))/(2*a)
ATIVIDADE
Dada a fórmula de Bhaskara abaixo:
Qual das expressões aritméticas a seguir representa corretamente, em
Python, a raiz positiva da fórmula ?
A) -b + math.pow(b*b – 4ac)/2a
B) -b + math.pow(b*b – 4*a*c)/2*a
C) (-b + math.sqrt(math.pow(b,2)) – 4*a*c)/(2*a)
D) (-b + math.sqrt(math.pow(b,2) – 4*a*c))/(2*a) Alternativa Correta
Checkpoint 2
ATIVIDADE
Dada o programa a seguir, em Python:
O que ele escreve na tela ?
A) 3.74
B) 3.8
C) 4.0
D) 4.12
ATIVIDADE
Dada o programa a seguir, em Python:
Teste de mesa
num = 5
O que ele escreve na tela ?
A) 3.74
B) 3.8
C) 4.0
D) 4.12
ATIVIDADE
Dada o programa a seguir, em Python:
Teste de mesa
num = 13
O que ele escreve na tela ?
A) 3.74
B) 3.8
C) 4.0
D) 4.12
ATIVIDADE
Dada o programa a seguir, em Python:
Teste de mesa
num = 14
O que ele escreve na tela ?
A) 3.74
B) 3.8
C) 4.0
D) 4.12
ATIVIDADE
Dada o programa a seguir, em Python:
Teste de mesa
num = 31
num = 3 + num * 2
num = 3 + 14 * 2
num = 3 + 28
O que ele escreve na tela ? num = 31
A) 3.74
B) 3.8
C) 4.0
D) 4.12
ATIVIDADE
Dada o programa a seguir, em Python:
Teste de mesa
num = 15
num = num//2
num = 31//2
num = 15
O que ele escreve na tela ?
31 2
30 15 quociente
A) 3.74
resto 1
B) 3.8
C) 4.0
D) 4.12
ATIVIDADE
Dada o programa a seguir, em Python:
Teste de mesa
num = 16
num = num + num %14
num = 15 + 15 %14
num = 15 + 1
O que ele escreve na tela ? num = 16
A) 3.74 15 14
B) 3.8 14 1 quociente
C) 4.0 resto 1
D) 4.12
ATIVIDADE
Dada o programa a seguir, em Python:
Teste de mesa
4.0
O que ele escreve na tela ?
A) 3.74
B) 3.8
C) 4.0 Alternativa Correta
D) 4.12