Você está na página 1de 43

DISCIPLINAS:

INFORMÁTICA APLICADA A ENGENHARIA


PROGRAMAÇÃO ESTRUTURADA

PROFA. DRA. SALETE SOUZA DE OLIVEIRA


▪ Significado de uma variável
▪ Comando de atribuição
▪ Identificador
▪ Tipos de valores numéricos
▪ Operações aritméticas
▪ Formatação de saída
▪ Entrada de dados pelo teclado
▪ Precedência de operadores
▪ Constantes
▪ Arredondamento
▪ Notação científica ou exponencial
▪ Charles Babbage e Ada Lovelace
(primeira metade do Século XIX)

Some v0 e v1 e armazene o
resultado em v2
▪ Comando:

▪ Forma inválida:

comentário
▪ Maiúsculas e minúsculas são diferentes:
▪ Evite nomes sem significado: prefira idade em vez de i.
▪ Use snake_case para identificadores de variáveis.
▪ Com números, o underscore é opcional: teste1 ou teste_1.
▪ Não inicie com dígito: 1a_escolha.
▪ Somente dígitos, letras e underscore: parte#, R$, teste_1º.
▪ Letras acentuadas são possíveis.
▪ Se o compilador não aceitar, inicie o programa com:
▪ "# coding: UTF-8

▪ Não usar palavras reservadas: for, continue, def, etc.


TIPOS DE VALORES NUMÉRICOS
▪ Inteiros (int), como 5, 78,
-467 ou
23786874236487263786
423;
▪ Números de ponto
flutuante (float), como
1.0, 45.2222, -46.78;
▪ Booleanos (bool), como
"True" e "False";
▪ Números complexos
(complex), como (3+4j),
(-2+4.5j), (56.2-7.67j).
+ Soma

- Subtração

* Multiplicação

OPERAÇÕES / Divisão
ARITMÉTICAS
// Divisão inteira

% Resto da divisão inteira

** Potenciação
Exemplo: Escreva um programa em pyhton que imprime na tela o
resultado da divisão inteira e seu resto entre os números 31827 e 87
Erros comuns:
• Achar que no final "z" vale 0 no final porque "y" passou a valer 10 e 10 % 2 é igual a 0. Isso não
acontece porque os comandos são executados em sequência e quando o valor de "z" foi atualizado
pela última vez, "y" ainda valia 14. Mesmo que "y" seja alterado depois disso, o valor de "z"
permanece sendo o que era em sua última atribuição.
• Achar que o programa vai imprimir 3, 2 e 10, que são os últimos valores calculados antes do
comando "print". Isso não acontece porque o comando "print" imprime a variável que é passada
como argumento, e não o valor da última variável atualizada no programa.
melhor

print(f"x//y={x//y}")
print(f“{x } e {y} são {a} e {b}")

print(f"Total: {x+y}")
a=2
b=1
c=3
print(f"{a} {b} {c} são números inteiros ")

print(f“{z}+0={z}")
dia=12
mes=11
ano=2016
print(f"{dia}/{mes}/{ano}")
ENTRADA DE
DADOS PELO
TECLADO

Esta Foto de Autor Desconhecido está licenciado em CC BY-NC-ND


TypeError: unsupported operand type(s) for -: 'str' and 'str'

Esta Foto de Autor Desconhecido está


licenciado em CC BY-SA
Erros comuns:

• Esquecer o "int". Neste caso, o programa dá erro assim que você digitar o primeiro número.
• Usar "//" em vez de "/". Ninguém falou que era para calcular a média "inteira". Observe que os
números digitados como entrada precisam ser necessariamente inteiros, por causa da função "int".
Mas o resultado é apresentado em ponto flutuante.
• Esquecer os parênteses na expressão (a+b+c)/3, o que daria os resultados 12.333333333333332
36.0 0.0 para os testes, equivalendo à expressão a+b+c/3, na qual a divisão c/3 é executada antes
das somas.
▪ 3+2**5 = ?

PRECEDÊNCIA ▪ (3+2)**5 = 3125


DE OPERADORES ▪ 3+(2**5) = 35
▪ Primeiramente são executadas todas as potenciações ("**"),
iniciando pela mais à esquerda até a mais à direita.
▪ Depois, são executadas indistintamente todas as operações
de multiplicação e divisão ("*", "/", "//" e "%"), iniciando pela
mais à esquerda até a mais à direita.
▪ Finalmente, são executadas indistintamente todas as somas e
subtrações ("+" e "-"), iniciando pela mais à esquerda até a
mais à direita.
▪ Expressões que estão entre parênteses sempre são
executadas primeiro.
▪ x = 3+5*2-1/2**3
▪ x = 3+5*2-1/8
▪ x = 3+10-1/8
▪ x = 3+10-0.125
▪ x = 13-0.125
▪ x = 12.875
Erros comuns:

• Esquecer os parênteses em x**(1/3). Se você usar a expressão x**1/3 terá como resultado uma expressão
equivalente a (x**1)/3. Isso acontece porque a precedência da potenciação (**) é maior do que a da divisão.
• Ao invés de 1/3 usar o valor simplificado de 0.3 ou 0.33, que incorpora um erro de precisão importante ao
resultado.
• Ao entrar com os números negativos, escrever "- 40" em vez de "-40". Não se pode usar espaço entre o sinal de
negativo e o número em si. Se você fizer isso o programa vai dar erro após a entrada de dados.
Exercício 3.11
Erros comuns:
• Escrever "2a" ao invés de "2*a". O interpretador não entende que "2a" deva ser uma
multiplicação; você deve ser sempre explícito e usar o operador "*" para indicar
multiplicações.
• Não usar a variável "delta" para conter o resultado da raiz quadrada não é
necessariamente um erro, mas o programa resultante terá a expressão (b**2 -
4*a*c)**(1/2) repetida duas vezes se você não armazenar esse valor em uma variável
intermediária como "delta" ou "discriminante". Embora não cause erro, repetir código
é considerado uma prática ruim entre programadores.
Esta Foto de Autor Desconhecido está licenciado em CC BY-SA-NC
▪ Não existem em Python
▪ Convenção: variáveis escritas
totalmente em maiúsculas.

▪ PI = 3.14159
melhor
▪ 1/3 é igual a 0,333333333333333333333333333333333333333...
▪ Aproximadamente 16 casas decimais

▪ Quanto vale n?
▪ n = round(2.7)
▪ n = int(2.7)
▪ n = round(2.5)
▪ n = round(7.5)
▪ n = round(334.123453, 2)
▪ n = round(334.125, 2)
▪ n = round(334.12501, 2)
9.225

9.22
Evitar “números mágicos” no programa
Exercício 3.14
▪ Precisão de 16 casas.
▪ Mas como fica: 0.00000000000000000001 – 20 casas?

▪ 0.00000000000000000001 é igual a 1 x 10-20


▪ 1e-20

▪ Como ficaria: 0.000456 ?


▪ 10 é igual a 1x101.
▪ 223 é igual a 2.23x102.
▪ 1548 é igual a 1.548x103.
▪ Um googol, ou
10000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000, é
igual a 10100.
WAZLAWICK, R. S. Introdução a
Algoritmos e Programação com Python.
Elsevier. 2018

Você também pode gostar