Você está na página 1de 19

Programação de

Computadores
Prof. Fabio R. Cerqueira
frcerqueira@gmail.com
UFF Petrópolis

i) Representação binária e um pouco de


aritmética binária
ii) Precedência de operadores aritméticos
iii) Comandos de entrada e saída
iv) Estrutura geral para solução de problemas
em computador.
1
Representação binária

Conversão de binário para decimal:

Bin: 011012

Dec: 0×24 + 1×23 + 1×22 + 0×21 + 1×20 = 1310

2
Representação binária (cont.)

Conversão de decimal para binário:

2510 = 110012

3
Operações da aritmética binária
 Veremos só a adição:
0 + 0 → 0
0 + 1 → 1
1 + 0 → 1
1 + 1 → 0 „vai um“

011012 (1310) + 101112 (2310) = 1001002 (3610):

1 1 1 1 1 → dígitos „vai um“


0 1 1 0 1
+ 1 0 1 1 1
-------------
= 1 0 0 1 0 0
4
Voltemos para nossa
linguagem de
alto nível…

6
Precedência de operadores aritméticos

P
r ** (exponenciação)
e
c - (operador unário de negação)
e
d
ê * / // %
n
c
i
a + -

No caso de instruções com operadores de


mesmo nível de precedência, fazer a regra
da esquerda para a direita. Ex.: a=8/2*4
seria 16 e não 1, porque a divisão está
mais à esquerda. 7
Precedência de operadores aritméticos (cont.)

-2**3
(2+3)//3
((2+3)*4)+1
x/-y
a-b/c*x%y
((a-b)/c)*(x%(y+5))

Na dúvida utilize os parênteses (Entre


pares não aninhados, os mais à esquerda
são resolvidos primeiro. Entre pares
aninhados, os mais internos são resolvidos
primeiro). 8
Comandos de entrada e saída

print:por padrão, mostra saída na tela


do computador.

input:por padrão, lê algo do teclado do


computador.

Exemplos:
nome = input('digite seu nome: ')
print('Seu nome é ', nome)
print(f'Seu nome é {nome}')
9
Comandos de entrada e saída
Para ler valores especificando o tipo de dado, utilizar
o tipo antes do print e utilizar também parênteses
→ Tipos primitivos: int, float, bool e str

Ex.:
x = input('Digite um número inteiro: ')
x = int(input('Digite um número inteiro: '))

Qual a diferença?

→ Se o usuário digitar, por exemplo, 3, no primeiro


caso o 3 será interpretado como um símbolo. Já no
segundo caso será interpretado como número inteiro.
10
Comandos de entrada e saída (exemplo)

print('Entre com três valores: ')


a = float(input('-> '))
b = float(input('-> '))
c = float(input('-> '))
print(f'Valores digitados {a},
{b} e {c}')

Se quiser imprimir os valores formatados com


duas casas decimais, usar:

print(f'Valores digitados {a:.2f}, {b:.2f} e


{c:.2f}')
11
Programa exemplo

# conversão do valor de temperatura


# escala Celsius p/ Fahrenheit
# formula F = C × 1,8 + 32

# entrada de dados:
temp_c = float(input('Valor da temperatura em C: '))

# conversao:
temp_f = temp_c * 1.8 + 32

# exibicao da resposta:
print(f'{temp_c} graus Celsius equivalem a {temp_f}
graus Fahrenheit')

12
Vamos definir uma
estrutura geral para
solução de
problemas no
computador...

13
Etapas geralmente seguidas para
construção e execução de um programa
Homem
PROBLEMA
Homem
ANÁLISE / SOLUÇÃO
DESCRITIVA
Homem
Refinamentos
ALGORITMO sucessivos
Homem
PROGRAMA FONTE EM
LINGUAGEM DE ALTO NÍVEL
Computador: compilador / interpretador
PROGRAMA EM LINGUAGEM
DE MÁQUINA (EXECUTÁVEL)
Computador: execução das instruções
SOLUÇÃO DO PROBLEMA
14
Exemplo
Problema:
◦ Fazer um programa para calcular a área
e o perímetro de um círculo.

Análisee solução descritiva do


problema:
◦ As fórmulas para cálculo de área e
perímetro de um círculo são: Área = πr2
e Perímetro = 2πr, onde π é o valor
constante igual a 3,141592... e r
corresponde ao raio do círculo. Assim,
para obtermos a área e o perímetro de
um círculo, basta sabermos o raio deste.
15
Exemplo (cont.)
Algoritmo em alto nível (uma
primeira aproximação):
Leia o valor do raio
Calcule a área
Calcule o perímetro
Informe resultados

Deve-se realizar refinamentos


sucessivos até que a transição para
uma linguagem de programação possa
ser facilmente realizada. 16
Exemplo (cont.)
Algoritmo refinado:
algoritmo Circulo
constantes
pi 3.141592
variaveis
real : raio, perimetro, area
imprima “Informe o raio: ”
leia raio
area pi * raio * raio // Area=πr^2
perimetro 2 * pi * raio // Perim.=2πr
imprima “Area: ”, area, “Pe.: ”, perimetro
fim algoritmo
17
Exemplo (cont.)
Programa em Python:
PI = 3.1415 # definicao da constante pi

# Leitura do raio do circulo:


raio = float(input('Entre com o raio do círculo
(m): '))

# Calculando:
area = PI * raio * raio # area do circulo
perimetro = 2 * PI * raio # perimetro

# mostrando resultado:
print(f'Area do círculo: {area} m2')
print(f'Perímetro do círculo: {perimetro} m')

18
Exercícios (nos dois casos fazer o
algoritmo e o programa)

1) Ler 3 números (a, b, c) e trocar seus valores,


colocando o conteúdo de b em a, de c em b
e de a em c.

2) Ler 3 números (a, b, c) e calcular o valor da


raiz quadrada do produto entre a média de a
e b e o quadrado de c.

Obs.: para calcular raiz quadrada em Python,


uma forma é utilizando a exponenciação. Por
exemplo, para calcular a raiz de 16 e
guardar numa variável x, pode-se fazer:
x = 16**(1/2)

19

Você também pode gostar