Documentos de Académico
Documentos de Profesional
Documentos de Cultura
AUTÓNOMA DE PUEBLA
Ingeniería Mecánica y Eléctrica
PRESENTA
PROFESOR
Asignatura
Informática y Programación
3 de mayo de 2023
1. Introducción
En la ingenieria surge la necesidad de realizar cálculos de forma rápida y eficiente mediante software. Esta necesidad nos
obliga a crear una solución que se ajuste a nuestras necesidades medinate el uso de algún lenguaje de programación que
disponga de las capacidades para dicho fin.
2. Objetivo
El porblema a abordar se encuentra relacionado con la estática, donde encontraremos la solución a sistemas de fuerzas
que nos ayudaran a determinar que tipo de cables que ayudarán a mantener estático un peso, aquí se requerirán el uso de
herramientas matemática para encontrar dicha fuerzas. Dependiendo de la fuerza que soporten los mismos, tendran un costo
por Newton(Unidad de Fuerza).
3. Desarrollo
#Precio de un calble
def price(r):
p = 20 * r
return p
total = []
1
cable = [1, 2, 3, 4, 5, 6]
’’’
Este es el menu del proyecto
’’’
print(’’’1.
Introducción
En la ingenieria surge la necesidad de realizar cálculos de forma rápida y eficiente mediante software. Esta ne
obliga a crear una solución que se ajuste a nuestras necesidades medinate el uso de algún lenguaje de programac
disponga de las capacidades para dicho fin.’’’)
print()
print()
print()
print(’’’2.
Objetivo
El porblema a abordar se encuentra relacionado con la estática, donde encontraremos la solución a sistemas de f
que nos ayudaran a determinar que tipo de cables que ayudarán a mantener estático un peso, aquí se requerirán e
herramientas matemática para encontrar dicha fuerzas. Dependiendo de la fuerza que soporten los mismos, tendran
por Newton(Unidad de Fuerza).’’’)
print()
print()
print()
space = ’ ’ * 15
print(’%s Costo de cables para mantener estatico un peso’ % space)
print(’%s El precio por Newtons son los siguientes:’ % space)
print(’%s 20 Dolares por Newton a soportar:’ %space)
print(’Menú’)
print(’1.Cálculo de la fuerza de un número de cables por componentes (maximo 3)’)
print(’2.Cálculo de la fuerza de un numero de cables maximo 3’)
print(’3.Datos almacenados’)
print(’4.Gráfica de los datos ’)
print(’5. Salir’)
print()
print()
print()
rn = 0
while rn<5:
rn = int(input(’A que menu desea ingresar : ’))
#Opcion1=====================================================================
if rn == 1:
print(’¿De cuantas componentes el el vector que desea ingresar? (Máximo 3 componentes)’)
comps = int(input(’===> ’))
if comps == 2:
print(’Los vectores que ha elegido son de 2 componentes’)
#Componentes de los vectores
cx = [1, 2]
2
cy = [1, 2]
v1 = [cx[0], cy[0]]
v2 = [cx[1], cy[1]]
#En esta parte del codigo se solicitara ingresar la componenetes del vector
for v in range (comps):
print(’Estas son las componentes del vector’, v+1)
cx[v] = float(input(’Ingrese la componenete en x ’))
cy[v] = float(input(’Ingrese la componenete en y ’))
prices = [1, 2]
prices[0] = abs(price(rv1))
prices[1] = abs(price(rv2))
pt = t_price(prices[0], prices[1])
print(’El precio total por los cables sera: ’, round(pt, 2))
infm1 = prices
inft = pt
st = ’ ’ * 10
f = open(’precio_total.txt’, ’a’)
f.write(str(round(prices[0],2)) +’,’ + st + ’+’ + str(round(prices[1],2)) + ’,’ + st + ’,’+ st + ’,
f.write(’\n’)
f.close()
print(’Su informacion ha sido guardada :)’)
total.append(round(pt, 2))
elif comps == 3:
print(’Los vectores que ha elegido son de 3 componentes’)
#Componentes de los vectores
cx = [1, 2, 3]
cy = [1, 2, 3]
cz = [1, 2, 3]
3
v1 = [cx[0], cy[0], cz[0]]
v2 = [cx[1], cy[1], cz[1]]
v3 = [cx[2], cy[2], cz[2]]
for v in range (comps):
print(’Estas son las componentes del vector’, v+1)
cx[v] = float(input(’Ingrese la componenete en x ’))
cy[v] = float(input(’Ingrese la componenete en y ’))
cz[v] = float(input(’Ingrese la componenete en z ’))
v1 = [cx[0], cy[0], cz[0]]
v2 = [cx[1], cy[1], cz[1]]
v3 = [cx[2], cy[2], cz[2]]
print(v1, v2, v3)
#Calculo de resulatantes
rv1 = fr3(cx[0], cy[0], cz[0])
rv2 = fr3(cx[1], cy[1], cz[1])
rv3 = fr3(cx[2], cy[2], cz[2])
prices[0] = abs(price(rv1))
prices[1] = abs(price(rv2))
prices[2] = abs(price(rv3))
st = ’ ’ * 10
f = open(’precio_total.txt’, ’a’)
f.write(str(round(prices[0],2)) +’,’ + st + ’+’ + str(round(prices[1],2)) + ’,’+ st + ’+’ + str(rou
f.write(’\n’)
f.close()
print(’Su informacion ha sido guardada :)’)
total.append(round(pt, 2))
elif rn > 3:
print(’No se puede realizar esta operación’)
4
#Opcion2=====================================================================
elif rn == 2:
print(’Cuantos vectores desea resolver(Máximo 3 vectores)’)
nvec = int(input(’===> ’))
if nvec == 2:
print(’Calculadora de fuerza con base en angulos y peso a soportar’)
cx = [1, 2]
cy = [1, 2]
p = [1, 2]
v1 = [cx[0], cy[0]]
v2 = [cx[1], cy[1]]
p[1] = float(input(’Ingrese el peso del objeto(Mayor a 0)’))
rn = 2
for v in range(rn):
#Se ingresara el primer angulo para ser calculados sus valores de en x y
b = float(input(’Ingrese el angulo del vector’))
angle = (b * m.pi)/(180)
c_x = m.cos(angle)
c_y = m.sin(angle)
cx[v] = c_x
cy[v] = c_y
print(cx[v])
print(cy[v])
#Solución
print(x)
v1 = round(x[0], 2)
v2 = round(x[1], 2)
prices[0] = abs(x[0])
prices[1] = abs(x[1])
5
print(’El precio del cable 1 es: ’, round(prices[0], 2))
print(’El precio del cable 2 es: ’, round(prices[1], 2))
pt = t_price(prices[0], prices[1])
print(’El precio total por los cables sera: ’, round(pt, 2))
infm1 = prices
inft = pt
st = ’ ’*10
f = open(’precio_total.txt’, ’a’)
f.write(str(round(prices[0],2)) +’,’ + st + ’+’ + str(round(prices[1],2)) + ’,’ + st + ’,’+ st + ’,
f.write(’\n’)
f.close()
print(’Su informacion ha sido guardada :)’)
total.append(round(pt, 2))
elif nvec == 3:
print(’Vector de tres componentes’)
#En esta parte se definen los arreglos sobre los cuales se trabajará
cx = [1, 2, 3]
cy = [1, 2, 3]
cz = [1, 2, 3]
p = [0, 0, 0]
rn = 3
6
vu3 = [cx[2]/rv3, cy[2]/rv3, cz[2]/rv3]
print(vu1)
print(vu2)
print(vu3)
print(p)
#Solución
print(’La magnitud de cada uno de los vectores es:’)
prices[0] = abs(x[0])
prices[1] = abs(x[1])
prices[2] = abs(x[2])
st = ’ ’ * 10
f = open(’precio_total.txt’, ’a’)
f.write(str(round(prices[0],2)) +’,’ + st + ’+’ + str(round(prices[1],2)) +’,’ + st + ’,’ + str(rou
f.write(’\n’)
f.close()
print(’Su informacion ha sido guardada :)’)
total.append(round(pt, 2))
#Opción3======================================================================
elif rn == 3:
print(’’’Aquí se mostrá la información guardada
7
=
=
=
=
=
Y’’’)
print(total)
#Opcion4======================================================================
elif rn == 4:
elif rn > 5:
else:
pass
print()
print()
print()
print(’Adios :)’)
4. Discusión
Dado que es un proyecto que requiere de muchas herramientas matemáticas, debido a esto es una mejor opción estructurar
un programa mediante librerias y modulos que posteariormente podrian ser llamadas para su uso, teniendo un codigo principal
en el cual se vayan invocando. De este modo el código no se haría grande y enredado. Se requiere también la optimización de
ciertos pasos ya que algunos son muy redundantes.
5. Conclusión
El uso del lenguaje Python es importante para encontrar una solución adecuadad a un problema de la ingeniería, mediante
el planteamiento de ciertas definiciones en nuestro algoritmo, podemos reciclar código, de manera que no tengamos que definir
varias veces una misma función.
8
6. Captura de Resultados
9
10
11
12
13