0% encontró este documento útil (0 votos)
64 vistas2 páginas

PD-EE2 1sol

El documento presenta soluciones a un examen de programación digital que incluye tres preguntas. La primera pregunta requiere un programa que valide y ordene tres precios diferentes, la segunda pregunta trata sobre la relación entre dos círculos en un plano cartesiano, y la tercera pregunta solicita un programa que valide la cantidad de precios ingresados y calcule el porcentaje de precios dentro de un rango específico. Cada pregunta incluye ejemplos de ejecución y fragmentos de código en Python.

Cargado por

Fabiola Rivera
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
64 vistas2 páginas

PD-EE2 1sol

El documento presenta soluciones a un examen de programación digital que incluye tres preguntas. La primera pregunta requiere un programa que valide y ordene tres precios diferentes, la segunda pregunta trata sobre la relación entre dos círculos en un plano cartesiano, y la tercera pregunta solicita un programa que valide la cantidad de precios ingresados y calcule el porcentaje de precios dentro de un rango específico. Cada pregunta incluye ejemplos de ejecución y fragmentos de código en Python.

Cargado por

Fabiola Rivera
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

FACULTAD DE INGENIERÍA

CARRERA DE INGENIERIA CIVIL

ASIGNATURA: PROGRAMACION DIGITAL


Walter Marticorena Ramos

SOLUCIÓN EXAMEN ESCRITO Nº 02


Pregunta1:
La empresa OferTec está registrado los precios de un producto que tiene tres proveedores. Al momento de
ingresar los precios debe verificar que sean diferentes.
Elabore un programa donde ingrese los tres precios uno por uno verificando que sean diferentes y mayores
a cero (validado). El programa debe mostrar los tres precios en orden descendente.
Aquí hay algunos ejemplos de ejecuciones: Ingrese precio1 [>0]: 0
Ingrese otro precio1 [>0]: 45
Ingrese precio2 diferente de 45 [>0]: 45
Ingrese otro precio2 diferente de 45 [>0]: 58
Ingrese precio3 diferente de 45 y 58 [>0]: 58
Ingrese otro precio3 diferente de 45 y 58 [>0]: 24
58 45 24

c1=int(input('Ingrese c1 [>0]: ')) if c1>c2 and c2>c3:


while not c1>0: print(c1,c2,c3)
c1=int(input('Ingrese otro c1 [>0]: ')) elif c1>c3 and c3>c2:
c2=int(input('Ingrese c2 diferente de {} [>0]: '.format(c1))) print(c1,c3,c2)
while not (c2>0 and c2!=c1): elif c2>c1 and c1>c3:
c2=int(input('Ingrese otro c2 diferente de {} [>0]: '.format(c1))) print(c2,c1,c3)
c3=int(input('Ingrese c3 diferente de {} y {} [>0]: '.format(c1,c2))) elif c2>c3 and c3>c1:
while not (c3>0 and c3!=c1 and c3!=c2): print(c2,c3,c1)
c3=int(input('Ingrese otro c3 diferente de {} y {} [>0]: '.format(c1,c2))) elif c3>c1 and c1>c2:
print(c1,c2,c3) print(c3,c1,c2)
elif c3>c2 and c2>c1:
print(c3,c2,c1)
Pregunta2:
Escriba un programa que ingrese las coordenadas de dos puntos en un eje cartesiano, (𝒙𝟏 ; 𝒚𝟏 ) , (𝒙𝟐 ; 𝒚𝟐 ) que
representan los centros de dos círculos y sus radios r1 y r2 correspondientes.
El programa deberá decirnos si los círculos están separados, son tangentes externos o presentan otra
relación.
Ingrese coordenada x del centro de circulo 1: 5
Ingrese coordenada y del centro de circulo 1: 1
Ingrese radio del circulo 1: 3
Ingrese coordenada x del centro de circulo 2: 10
Ingrese coordenada y del centro de circulo 2: 4
Ingrese radio del circulo 2: 5
Ingrese coordenada x del centro de circulo 1: 5 Los círculos presentan otra relación
Ingrese coordenada y del centro de circulo 1: 1
Ingrese radio del circulo 1: 3 Ingrese coordenada x del centro de circulo 1: 5
Ingrese coordenada x del centro de circulo 2: 10 Ingrese coordenada y del centro de circulo 1: 2
Ingrese coordenada y del centro de circulo 2: 1 Ingrese radio del circulo 1: 2
Ingrese radio del circulo 2: 2 Ingrese coordenada x del centro de circulo 2: 10
Los círculos son tangentes externos Ingrese coordenada y del centro de circulo 2: 4
Ingrese radio del circulo 2: 3
Los círculos están separados
1
x1=float(input('Ingrese coordenada x del centro de circulo 1: '))
y1=float(input('Ingrese coordenada y del centro de circulo 1: '))
r1=float(input('Ingrese radio del circulo 1: '))
x2=float(input('Ingrese coordenada x del centro de circulo 2: '))
y2=float(input('Ingrese coordenada y del centro de circulo 2: '))
r2=float(input('Ingrese radio del circulo 2: '))

d=((x1-x2)**2+(y1-y2)**2)**0.5
if d>r1+r2:
print('Los circulos estan separados')
elif d==r1+r2:
print('Los circulos son tangentes externos')
else:
print('Los circulos presentan otra relacion')

Pregunta3:
Escriba un programa que permita ingresar n precios de un producto. El valor de n debe ser validado (mayor
a 5), si esto no se cumple debe pedir ingresarlo nuevamente.
Los n precios ingresados deben estar validados mayor a cero. El programa debe determinar cuántos y que
porcentaje de todos los precios ingresados están dentro de un rango de aceptación que será entre 50 y 60
soles inclusive.
Si no hay precios en el rango de aceptación, el programa debe indicarlo. Aquí hay un ejemplo de ejecución:

Ingrese cantidad de precios [>5]: 4


Ingrese otra cantidad de precios [>5]: 6
Ingrese cantidad de precios [>5]: 6
precio nro 1: 45
precio nro 1: 15 precio nro 2: 52
precio nro 2: 14 precio nro 3: 0
precio nro 3: 23 precio nro 3: 68
precio nro 4: 18 precio nro 4: 64
precio nro 5: 0 precio nro 5: 50
precio nro 5: 16 precio nro 6: 66
precio nro 6: 27
33% de productos en el rango aceptable, son 2 de 6
Ningún producto está en el rango aceptable El precio promedio de los aceptados es de 51.0 soles

n=int(input('Ingrese cantidad de productos [>5]: '))


while not(n>5):
n=int(input('Ingrese otra cantidad de productos [>5]: '))
c=0
suma=0
for i in range(n):
precio=int(input('precio nro {}: '.format(i+1)))
while not precio >0:
precio=int(input('precio nro {}: '.format(i+1)))
if 50<=precio<=60:
c=c+1
suma=suma+precio
if c==0:
print('Ningún producto está en el rango aceptable')
else:
print('{}% de productos en el rango aceptable, son {} de {}'.format(int(c*100/n),c,n))
print('El precio promedio de los aceptados es de {} soles '.format(suma/c))

También podría gustarte