Você está na página 1de 13

UNIVERSIDADE FEDERAL DE MINAS GERAIS

INSTITUTO DE CIÊNCIAS EXATAS


DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
Programação de Computadores – Prof. Helton

Avaliação Formativa 2 – Introdução à Programação em


Python Objetivos
Fixar os conceitos sobre variáveis, constantes e expressões aritméticas. Habilitar o aluno a projetar,
editar, compilar e executar os primeiros programas em Python
Exercício 1
Na lista de nomes de variáveis abaixo identifique nomes de variáveis inválidos e explique por que
são inválidos.
a) AREA
b)​ VOLUME TOTAL
espaço nao e permitido ao nomear funções
c)​ F(X)
variaveis contendo parenteses

d)​ TAXA-RT
o sinal ifen possui funcao especifica no python e seera erro de sintaxe ao nomear uma variavel
e)​ $AMT
o sifrão nao pode ser atribuido a linguagem

Exercício 2
Na relação de valores abaixo diga se cada par de valor representa ou não o mesmo valor. Se não,
explique o porquê.
a) 2300; 2.3E04​ Não, pois 2.3E04 = 23000
d) 0.000007; .7E04 ​Não, pois 7E04 = 70000
b) 1.0; 1. Sim
e) 110.0; 11.01E01​ Não,pois 11.01E1 = 110.1
c) -34.7; -0.34E02 ​Não, pois -0.34E02 = -34
f) -0.76; 7.6E-01 ​Não, pois 7.6E-01 = 0.76

Exercicio 3
Converta a equações abaixo para comandos de atribuição em Python, mantendo os mesmos nomes
de variáveis mostrados nas equações.

a) Inclinação SL de uma reta que passa pelos pontos (X1,Y1) e (X2,Y2):

x1 = input("digite seu numero x1:")


x1 = float(x1)
x2 = input("digite seu numero x2:")
x2 = float(x2)

y1 = input("digite seu numero y1:")


y1 = float(y1)
y2 = input("difte seu numero y2:")
y2 = float(y2)

inclinacao = (y2 - y1)/(x2 - x1)

print("sua inclinação", inclinacao)


​ ​b) Fator de correção em cálculo de pressão:
B = float(input("digite um vaor para B:"))
C = float(input("digite um valor para C:"))
V = float(input("digite um valor para V:"))

FC = 1 + B/V + C/V**2

print(FC)

c) Coeficiente de fricção entre o pneu e o pavimento:

V = float(input("digite um valor para V:"))


S = float(input("digite um valor para S:"))
FR = V**2/30*S

print(FR)

d) Distancia do centro de gravidade do plano de referencia em um setor de um cilindro oco:


import math

R = float(input("digite o numero de R:"))


S = float(input("digite seu valor para S:"))
A = float(input("digite o angulo A:"))

X = (A * math.pi)/180

DIS = 38.1972*(R**3 - S**3)*math.sin(X)/(R**2-S**2)*A

print("sua distancia e:\n", DIS)

e) Resistência equivalente de um circuito em paralelo:

R1 = float(input("digite sua resistencia 1:"))


R2 = float(input("digite sua resistencia 2:"))
R3 = float(input("digite sua resistencia 3:"))
R4 = float(input("digite sua resistencia 4:"))

req = 1/(R1 + R2 + R3+ R4)


print ("sua resistencia\n", req)

f) Equação de analise de transferência de calor:

X = float(input("digite o valor de X:"))

Y = float(input("digite seu valor para Y:"))


ATC = (0.0023*X**8)*Y**0.33

print("a transferencia foi de:", ATC)

g) Taxa de fluxo de massa através de um bico:

import math

X1 = float(input("digite o valor para X1:"))

X2 = float(input("digite o valor para X2:"))

Y1 = float(input("digite o valor para Y1:"))


Y2 = float(input("digite o valor para Y2:"))

G = float(input("digite o valor de G:"))

X = (2*math.pi)*(X1)* (32.2*G/X1*X2)**0.5*(Y2/Y1)*(1 +
G-1.0/2.0*(Y2/Y1)**2)**G+1/2-2*G

print("o fluxo de massa e:\n", X)


​ ​ ​ ​
​ ​ ​ ​ ​Exercicio 4
Converta as expressões a seguir para a forma algébrica.
a) Movimento uniformemente acelerado: V = (Vi*Vi+2.0*A*X)**0.5
V = √V iV i + 2AX
b) Frequência de oscilação elétrica: F = 1.0/(2.0*3.141593)*(1.0/XL*C)**0.5
F = 1 ÷ (2π)(1/√XLC )
c) Alcance teórico de um projétil: D =
2.0*Vi**2*MATH.SIN(B)*MATH.COS(B)/G
D = 2 V i2 sinBcosB ÷ G

d) Fluxo ideal de um gás compressível: F = (1.0 + (K-1.0)/2.0*M**2)**(K/(K-1.0))


F = [1+(K-1) ÷ 2M 2 )K÷K−1 ]
e) Contração de um comprimento: L = Li*(1.0-(V/C)**2)**0.5
L = Li √(1 − (V ÷ C ) 2
)

f) Volume de um anel de filete: PI = 3.141593


V = 2*PI*X**2*((1.0 – PI/4.0)*Y-(0.8333-PI/4.0)*X)
V = 2 π X 2 [(1- π ÷ 4) Y-(0.8333- π ÷ 4) X]

g) Fluxo sobre uma barragem: F = 0.35E-04*(X/Y)*MATH.SQRT(2.0*G)*(Y2


–Y)**2.5
F = 0.35 × 10 −4 X ÷ Y √2G (Y2-Y) 2.5

Desafio 1
Este desafio apresenta o problema de ler os lados de um retângulo, calcular e imprimir algumas
propriedades do retângulo. Foi dada a especificação do problema, o desenvolvimento do algoritmo
e a codificação em Python. Você deverá estudar a solução, editar, compilar e executar o programa
de no ambiente do Python.

Problema
Escreva um algoritmo que leia os valores correspondentes aos lados de um retângulo, calcule e
imprima o perímetro e a área do retângulo.

Algoritmo Inicial
Algoritmo
declare variáveis
leia os lados
calcule o perímetro e a área
escreva os valores lidos e calculados
fim algoritmo

Refinamentos
ref:​ declare variáveis
​declare​ LadoBase, LadoAltura, Perimetro, Area ​numérico
fim ref.

ref:​ leia os lados


​leia​ LadoBase, LadoAltura
fim ref.

ref:​ calcule o perímetro e a área


Perímetro ← 2 × (LadoBase + LadoAltura)
Area ← LadoBase × LadoAltura
fim ref.

ref:​ escreva os valres lidos e calculados


​escreva​ LadoBase, LadoAltura, Perimetro, Area
fim ref.

Algoritmo Final
1
Algoritmo
2
{declaração de variáveis }
3
​declare​ LadoBase, LadoAltura, Perimetro, Area ​numérico
4
{leitura dos lados }
5
​Leia​ LadoBase, LadoAltura
6
{cálculo do perímetro e da área }
7
Perímetro ← 2 × (LadoBase + LadoAltura)
8
Area ← LadoBase × LadoAltura
10
{Listagem dos valores lidos e calculados}
11
​escreva​ LadoBase, LadoAltura, Perimetro, Area
12
fim algoritmo.

Programa em Python
1
# Programa para calcular perímetro e área de um retangulo
2
# leitura dos lados do retangulo
3
ladoBase = input("Digite o valor do lado base: ")
4
ladoBase = float(ladoBase)
5
ladoAltura = input ("Digite o valor do altura: ")
6
ladoAltura = float(ladoAltura)
7
# Calculo da área e o perimetro
8
área = ladoBase * ladoAltura
9
perímetro = 2 * (ladoBase + ladoAltura)
10
# Listagem dos valores lidos e calculados
11
print("\n Valores lidos ")
12
print("\n Lado base: ", ladoBase,
13
"\n Lado altura: ", ladoAltura)
14
print("\n Valores Calculados ")
15
print("\n Área: ", área,
16
"\n Perímetro: ", perímetro)
17
print("\n Programa executado com sucesso")

Atividades:
1. ​Carregue o ambiente Python, crie um arquivo novo, abra a tela do editor e edite o programa
acima, e execute (Run>Run Module)
2. ​Inclua declarações e comandos necessários (no algoritmo e no programa em Python) para
que seja calculado e exibido o valor da diagonal do retângulo.
Dica: Em Python para avaliar ​x ​← ​y​usa-se a função “sqrt” assim: x = math.sqrt(y) .Para
usar as funções aritméticas da classe math é preciso colocar o comando import math no
inicio do programa.
3. ​Crie um documento (veja modelo do documento na última pagina abaixo) contendo, para o
desafio 1: a proposta do problema a ser resolvido; o texto final do algoritmo modificado, o
texto fonte do programa em Python, e as saídas exibidas para os seguintes valores:
Base Altura
0,6 0,8
12 12
35,5 64,8

Desafio 2
Tomando como referência o problema do desafio 1, desenvolva a solução (Algoritmo e Programa
em Python para o seguinte problema:

Problema da Caixa
Um carpinteiro deseja construir uma caixa divida ao meio por uma divisória colocada em diagonal
conforme mostrado na figura abaixo. A caixa é aberta na parte de cima. A caixa e a divisória
deverão ser feita a partir de uma placa de compensado. Ele precisa calcular o tamanho (isto é, a
área) da placa de compensado necessária para a construção da caixa com a divisória. Como ele
sempre faz caixas desse tipo, com dimensões diferentes, ele deseja que você escreva um programa
que calcule o tamanho (ou área) da placa de compensado necessária, sendo que cada vez que ele
rodar o programa ele deverá fornecer a altura, a largura e o comprimento da caixa em milímetros. O
programa deverá emitir um relatório contendo as seguintes informações sobre a caixa:

CARACTERÍSTICAS DA CAIXA

ALTURA: 999... mm
LARGURA: 999... mm
COMPRIMENTO: 999... mm
ÁREA DA SUPERFÍCIE DE APOIO: 99.99... m2
VOLUME TOTAL: 99.99... m3
VOLUME POR COMPARTIMENTO: 99.99... m3
ÁREA DE MATERIAL NECESSÁRIO: 999... m2

Atividades:

1. Projetar o algoritmo para resolver o problema, usando a técnica do refinamento sucessivo.


2. Codificar e testar o algoritmo em linguagem Python.
3. Incluir no documento a proposta do desafio 2, todos os passos do processo de refinamento
(algoritmo inicial, refinamentos e algoritmo final), o texto do programa em Python
(contendo o algoritmo na forma de comentário) e as saídas produzidas para os seguintes
valores:

Dimensões de Caixas (em mm)


Largura Comprimento Altura
100 100 100

60 82 105

50,8 125,79 23,65

O que deve ser entregue


Um arquivo contendo documento que apresente as informações pedidas em cada atividade. O
documento deve ter cabeçalho, nome do aluno, turma, etc., conforme o modelo abaixo. ​Cada aluno
deverá entregar uma cópia do documento do sitio ​www.minha.ufmg.br​. Não serão aceitos
trabalhos enviados através de mensagens.
Modelo de relatório
Programação de Computadores
Avaliação Formativa 2
Introdução à Programação em Python

Desafio 1

1 – Descrição o problema
declare variáveis
leia os lados
calcule o perímetro e a área
escreva os valores lidos e calculados

2- Algoritmo final modificado


{declaração de variáveis }

​declare​ LadoBase, LadoAltura, Perimetro, Area ​numérico

{leitura dos lados }

​Leia​ LadoBase, LadoAltura

{cálculo do perímetro e da área }

Perímetro ← 2 × (LadoBase + LadoAltura)

Area ← LadoBase × LadoAltura

{Listagem dos valores lidos e calculados}

​escreva​ LadoBase, LadoAltura, Perimetro, Area

3- Programa em Python
Lado1 = float(input("digite o lado da base do retangulo:"))
Lado2 = float(input("digite o lado da altura do retangulo:"))

Lado3 = Lado1
Lado4 = Lado2

P = 2*Lado1 + 2*Lado2
A = Lado1*Lado2

print("perimetro:",P)
print("area:",A)

4- Dados e resultados dos testes


realizados

digite o lado da base do retangulo:5

digite o lado da altura do retangulo:6

perimetro: 22.0

area: 30.0

Desafio 2
1 – Descrição o problema
recebe os valores das dimensoes da caixa
calcule a diagonal da divisao
calcule a area de apoio
calcule o volume total
calcule o volume de cada compartimento
calcule a area de todo maerial necessario

2- Algoritmo desenvolvido com


refinamentos ..................................

3- Programa em Python
comp = float(input("digite o comprimento da caixa:"))
larg = float(input("digite a largura da caixa:"))
alt = float(input("digite a altura da caixa:"))
diag=(comp**2 + larg**2)**0.5
area_apoio = comp*larg
volume = comp*larg*alt
volume_comp = (comp*larg*alt)/2
area_material = (2*alt*comp)+(2*alt*larg)+(comp*larg)+(diag*alt)
print("altura:",alt,"mm")
print("largura:",larg,"mm")
print("comprimento:",comp,"mm")
print("area da superficie de apoio:",area_apoio,"mm")
print("volume total:",volume,"mm")
print("volume compartimento:",volume_comp,"mm")
print("area de todo material:",area_material,"mm")

4- Dados e resultados dos testes


realizados

digite o comprimento da caixa:15

digite a largura da caixa:40

digite a altura da caixa:10

altura: 10.0 mm

largura: 40.0 mm

comprimento: 15.0 mm

area da superficie de apoio: 600.0 mm

volume total: 6000.0 mm

volume compartimento: 3000.0 mm

area de todo material:


2127.2001872658766 mm
1
//Algoritmo
//declaração de variáveis
2
//declare LadoBase, LadoAltura,
3
// Perimetro, Area numérico
4
// {leitura dos lados}
5
LadoBase ​= ​input​(​"Digite valor para a base: "​)​;
6
LadoAltura ​= ​input​("​ Digite valor para a altura: "​)
7
//cálculo do perímetro e da área
8
​Perimetro ​= ​2 ​* ​(​LadoBase ​+ L
​ adoAltura​)​;
9
Area ​= ​LadoBase ​* ​LadoAltura
10
//Listagem dos valores lidos e calculados}
11
print​(​%io​(​2​)​, LadoBase, LadoAltura, Perimetro, Area​)​;
12
//Fim algoritmo
1
program AreaRetangulo;
2
{Declaração de variáveis}
3
var LadoBase, LadoAltura, Perimetro, Area :real;
4
begin
5
{Leitura dos lados }
6
write(‘Digite a base: ‘); { imprime a mensagem “Digite a base: “ }
7
readln(LadoBase); { le o valor da base e armazena na variável
LadoBase.} ​8
write(‘Digite a altura: ‘); { imprime a mensagem “Digite a altura: “}
9
readln(LadoAltura); { le o valor da altura e armazena na variável LadoAltura.
} ​10
{ Calculo do perímetro }
11
Perimetro := 2 * (LadoBase + LadoAltura);
12
{ Calculo da área }
13
Area := LadoBase * LadoAltura;
14
{ Listagem dos valores lidos e calculados }
15
writeln( ‘Lado base: ‘, LadoBase); { imprime mensagem seguida do valor
base } ​16
writeln( ‘Lado altura: ‘, LadoAltura); { imprime mensagem seguida do valor
altura } ​17
writeln( ‘Perimetro: ‘, Perimetro); { imprime mensagem seguida do
perimetro} ​18
writeln( ‘Lado base: ‘, Area); { imprime mensagem seguida do valor da
area } ​19
end. {Fim do programa }

Você também pode gostar