¿Este problema de algoritmos tiene doble interpretación?

Iniciado por theluigy13etv, 15 Abril 2016, 03:25 AM

0 Miembros y 1 Visitante están viendo este tema.

theluigy13etv

Estaba en clase de introducción a la algoritmia y el profesor planteó un problema. Yo lo interpreté de una forma pero el profesor de otra forma. Aquí está el enunciado y la solución . Si alguien lo pudiera revisar y ver cuál de las dos soluciones cree que sea la correcta  ;D

Un club ha adquirido polos y gorras para sus socios con un descuento del 15% para los polos y de 5% para las gorras. Diseñe un algoritmo que determine, en total, el importe de la compra, el importe del descuento y el importe a pagar por la compra efectuada.


PRIMERA INTERPRETACIÓN

Datos de entrada:
* Precio unitario de cada polo: (precio_polo)
* Precio unitario de cada gorra: (precio_gorra)
* Cantidad de polos: (cant_polo)
* Cantidad de gorras: (cant_gorra)




Datos de salida:


* Importe de la Compra Total (ic)
* Importe del Descuento Total (id)
* Importe a pagar Total (ip)



Algoritmo:


SEGUNDA INTERPRETACIÓN

Datos de entrada:

* Importe a pagar del polo: (ipp)
* Importe a pagar de la gorra: (ipg)



Datos de salida:

* Importe de la Compra Total (ic)
* Importe del Descuento Total (id)
* Importe a pagar Total (ip)


Algoritmo:


El profesor dijo que la segunda respuesta era la correcta  :P

engel lex

#1
el primero está correcto

el segundo tiene error, porque empezando por allí ignora completamente las cantidades adquiridas, asume que compraron uno de cada cosa (ni más, ni menos)  y es cuando te quieren sacar dinero de más en una tienda XD

observemos... asumamos que el polo vale 100 al igual que la gorra veamos el importe de compra del polo
icp = ipp * 100/85
icp = 100 * 1,177
icp = 117,7

me querían dar descuento y me metieron 17,7 de más? XD yo me voy de la tienda...

ahora veamos el resto
idp = icp * 15/100
idp = 117,7 * 0.15
idp = 17,66 #el descuento era menos de lo que me agregaron D':


icg = ipg * 100/95
icg = 100 * 1,052
icg = 105,2


idg = icg * 5/100
idg = 105,2 * 0.05
idg = 5,26 # :) salgo ganando

es divertido que entre más descuento, más caro me sale XD

ic = icp + icg
ic = 117,7 + 105,2
ic = 222.9


id = idp + idg
id = 17.66 + 5.26
id = 22.92

que generoso descuento... que a demás no está del todo relacionado (y no es error de decimales)

ip = ipp + ipg
ip = 100 + 100
ip = 200

uff que generosos con esos descuentos!

comprobación matemática

lo que puede estar intentando es "si 100 es lo que pago despues del descuento, cuanto es la cantidad total?"

aún así está mal...

para visualizar como se hace vamos al siguiente ejemplo

80 es mi precio base y le sumo un 25% el resultado es 100
final = 80 + 25%
final = 80 + (80 * 25/100)
final = 80 + 20
final = 100


ahora, si yo se que 100 es el 100%(80) + el 25%(20), es decir, se que 100 es el 125%, como se cuanto es el 100%?

simplemente base / 125%

base = 100 / (125/100)
base = 100 / 1.25
base = 80

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

MinusFour

Los dos algoritmos están correctos dependiendo de la entrada que no es mencionada en el problema. Tu primer algoritmo toma como entrada la cantidad de productos y el precio de estos productos. Tu segundo algoritmo, toma el importe a pagar por los elementos con el descuento aplicado. Un tercer algoritmo, puede considerar como datos de entrada el importe a pagar por los elementos sin el descuento.